<?php namespace app\admin\controller; use app\admin\model\GoodBasic; use app\user\model\AccountCompany; use app\user\model\AccountItem; use think\App; class Good extends Base{ public function __construct(App $app) { $this->noLogin=['list']; parent::__construct($app); $this->model=new \app\admin\model\GoodBasic(); } public function list(){ $params=$this->request->param(['cat_id'=>'','is_combind'=>'','good_name'=>"","spucode"=>"","good_type"=>"", "companyNo"=>[],"supplierNo"=>"","supplier"=>"","company"=>"","brandid"=>"","status"=>[],"is_stock"=>"", 'start'=>"","end"=>"","isonline"=>"","relaComNo"=>"","page"=>1,"size"=>15]); $where=[["is_del","=",0]]; if($params['cat_id']!="")$where[]=["cat_id","=",$params['cat_id']]; if($params['is_combind']!="") $where[]=["is_combind","=",$params['is_combind']]; if($params['good_name']!="") $where[]=["good_name","like","%".$params['good_name']."%"]; if($params['spucode']!="") $where[]=["spuCode","like","%".$params['spucode']."%"]; if($params['good_type']!="") $where[]=["good_type","=",$params['good_type']]; if(!empty($params['companyNo'])) $where[]=["companyNo","in",$params['companyNo']]; if($params['supplierNo']!="") $where[]=["supplierNo","like","%".$params['supplierNo']."%"]; if($params['supplier']!="") $where[]=["supplierName","like","%".$params['supplier']."%"]; if($params['company']!="") $where[]=["companyName","like","%".$params['company']."%"]; if($params['brandid']!="") $where[]=["brandid","=",$params['brandid']]; if(!empty($params['status'])) $where[]=["status","in",$params['status']]; if($params['is_stock']!="") $where[]=["is_stock","=",$params['is_stock']]; if($params['isonline']!=""){ if($params['isonline']==1) $where[]=["spuCode","in",function ($query) { $query->name('good_platform')->where('exam_status', 3)->field('spuCode'); }]; else $where[]=['spuCode','not in',function ($query) { $query->name('good_platform')->where('exam_status', 3)->field('spuCode'); } ]; } if($params['relaComNo']!="") $where[]=["companyNo|supplierNo","like","%".$params['relaComNo']."%"]; $list=$this->model->with(["brand","unit","cat","GoodTax"=>["outCategory","inCategory","cgdCategory"]]) ->where($where) ->order("id desc") ->paginate(["page"=>$params['page'],"list_rows"=>$params['size']]) ->each(function (&$item){ $item['exclusive']= (new \app\admin\model\Exclusive)->getExclusive($item['is_exclusive']); $item['noble_name']=GoodBasic::$NobleMetalCn[$item->noble_metal]; $item['has_account'] = AccountCompany::SupplierHasAcount($item->supplierNo); $info = AccountItem::with(['ItemName'])->where(['account_id'=>$item->chargerid])->findOrEmpty(); $item['charger_company_name'] = $info->depart_name??""; }); return success("获取成功",["list"=>$list->items(),"count"=>$list->total()]); } public function create(){ } public function info(){ } public function update(){ } public function delete(){ } }