Good.php 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\model\GoodBasic;
  4. use app\user\model\AccountCompany;
  5. use app\user\model\AccountItem;
  6. use think\App;
  7. class Good extends Base{
  8. public function __construct(App $app)
  9. {
  10. $this->noLogin=['list'];
  11. parent::__construct($app);
  12. $this->model=new \app\admin\model\GoodBasic();
  13. }
  14. public function list(){
  15. $params=$this->request->param(['cat_id'=>'','is_combind'=>'','good_name'=>"","spucode"=>"","good_type"=>"",
  16. "companyNo"=>[],"supplierNo"=>"","supplier"=>"","company"=>"","brandid"=>"","status"=>[],"is_stock"=>"",
  17. 'start'=>"","end"=>"","isonline"=>"","relaComNo"=>"","page"=>1,"size"=>15]);
  18. $where=[["is_del","=",0]];
  19. if($params['cat_id']!="")$where[]=["cat_id","=",$params['cat_id']];
  20. if($params['is_combind']!="") $where[]=["is_combind","=",$params['is_combind']];
  21. if($params['good_name']!="") $where[]=["good_name","like","%".$params['good_name']."%"];
  22. if($params['spucode']!="") $where[]=["spuCode","like","%".$params['spucode']."%"];
  23. if($params['good_type']!="") $where[]=["good_type","=",$params['good_type']];
  24. if(!empty($params['companyNo'])) $where[]=["companyNo","in",$params['companyNo']];
  25. if($params['supplierNo']!="") $where[]=["supplierNo","like","%".$params['supplierNo']."%"];
  26. if($params['supplier']!="") $where[]=["supplierName","like","%".$params['supplier']."%"];
  27. if($params['company']!="") $where[]=["companyName","like","%".$params['company']."%"];
  28. if($params['brandid']!="") $where[]=["brandid","=",$params['brandid']];
  29. if(!empty($params['status'])) $where[]=["status","in",$params['status']];
  30. if($params['is_stock']!="") $where[]=["is_stock","=",$params['is_stock']];
  31. if($params['isonline']!=""){
  32. if($params['isonline']==1) $where[]=["spuCode","in",function ($query) {
  33. $query->name('good_platform')->where('exam_status', 3)->field('spuCode');
  34. }];
  35. else $where[]=['spuCode','not in',function ($query) {
  36. $query->name('good_platform')->where('exam_status', 3)->field('spuCode');
  37. }
  38. ];
  39. }
  40. if($params['relaComNo']!="") $where[]=["companyNo|supplierNo","like","%".$params['relaComNo']."%"];
  41. $list=$this->model->with(["brand","unit","cat","GoodTax"=>["outCategory","inCategory","cgdCategory"]])
  42. ->where($where)
  43. ->order("id desc")
  44. ->paginate(["page"=>$params['page'],"list_rows"=>$params['size']])
  45. ->each(function (&$item){
  46. $item['exclusive']= (new \app\admin\model\Exclusive)->getExclusive($item['is_exclusive']);
  47. $item['noble_name']=GoodBasic::$NobleMetalCn[$item->noble_metal];
  48. $item['has_account'] = AccountCompany::SupplierHasAcount($item->supplierNo);
  49. $info = AccountItem::with(['ItemName'])->where(['account_id'=>$item->chargerid])->findOrEmpty();
  50. $item['charger_company_name'] = $info->depart_name??"";
  51. });
  52. return success("获取成功",["list"=>$list->items(),"count"=>$list->total()]);
  53. }
  54. public function create(){
  55. }
  56. public function info(){
  57. }
  58. public function update(){
  59. }
  60. public function delete(){
  61. }
  62. }