Current File : /home/tradevaly/demo.tradevaly.com.bd/app/Models/Company.php |
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class Company extends Model
{
use HasFactory;
use SoftDeletes;
protected $fillable = [
'created_user_id', 'modified_user_id', 'deleted_user_id', 'user_id', 'company_name',
'person_name', 'designation', 'country_id', 'city', 'mobile', 'alt_mobile', 'tel', 'email', 'alt_email', 'website', 'year_id', 'address',
'latitude', 'longitude', 'google_map_url', 'facebook', 'youtube', 'twitter', 'corporate_video', 'logo', 'cover_photo', 'galleries', 'brand_ids',
'company_category_ids', 'related_company', 'short_summery', 'about_company', 'feature_company', 'special_email_offer',
'membership_agreements', 'package_id', 'package_buying_selling_id', 'package_banner_ad_id', 'package_lead_id', 'exp_date', 'status'
];
public function companyWithCategoryMappings()
{
return $this->hasMany('App\Models\CompanyWithCategoryMapping');
}
public function companyWithCategoryAndProductCategoryMappings()
{
return $this->hasMany('App\Models\CompanyWithCategoryAndProductCategoryMapping');
}
public function products()
{
return $this->hasMany('App\Models\Product');
}
public function user()
{
return $this->hasOne('App\Models\User', 'id', 'created_user_id');
}
public function package()
{
return $this->hasOne('App\Models\Package', 'id', 'package_id');
}
protected function getCompanyList($conditions = [])
{
$data = Company::whereIn('status', [1,2])->pluck('company_name', 'id')->toArray();
return $data;
}
protected function getCompanyListDynamicSelect($select = [],$conditions = [])
{
// dd($select);
$data = Company::select($select)->get()->toArray();
$reArrange = [];
foreach ($data as $key => $value) {
$reArrange[$value['id']]['company_name'] = $value['company_name'];
$reArrange[$value['id']]['address'] = $value['address'];
$reArrange[$value['id']]['logo'] = $value['logo'];
$reArrange[$value['id']]['mobile'] = $value['mobile'];
$reArrange[$value['id']]['email'] = $value['email'];
$reArrange[$value['id']]['short_summery'] = $value['short_summery'];
$reArrange[$value['id']]['website'] = $value['website'];
}
return $reArrange;
}
protected function getPackageNameByCompanyWise($companyId)
{
// $companyId = 10;
$data = Company::select('id', 'created_user_id', 'package_id')
->where('id', $companyId)
->where('status', '>=', 0)
->with (['package' => function($mm) use($companyId){
return $mm->select('id','name');
}])->get();
//dd($data->toArray());
$reArrange = [];
if( !empty( $data[0]['package']['name'] ) ){
$reArrange['id'] = $data[0]['package']['id'];
$reArrange['package_name'] = $data[0]['package']['name'];
}else{
$reArrange = '';
}
//dd($reArrange);
return $reArrange;
}
}