|
@@ -17,136 +17,148 @@ public function __construct(App $app)
|
|
|
parent::__construct($app);
|
|
|
|
|
|
}
|
|
|
-public function flist(){
|
|
|
- $page = isset($this->post['page']) &&$this->post['page'] !=="" ? intval($this->post['page']):1;
|
|
|
- $size = isset($this->post['size']) &&$this->post['size'] !=="" ? intval($this->post['size']):10;
|
|
|
- $condtion=[['b.is_del',"=",0],['c.is_del',"=",0]];
|
|
|
- $wsmcode =isset($this->post['wsm_code']) &&$this->post['wsm_code'] !=="" ? trim($this->post['wsm_code']):"";
|
|
|
- if($wsmcode!==""){
|
|
|
- //return error_show(1002,"仓库code不能为空");
|
|
|
- $condtion[]=['c.wsm_code',"=",$wsmcode];
|
|
|
- // $typecode= Db::name("good_stock")->where(["wsm_code"=>$wsmcode,'is_del'=>0])->column("good_type_code");
|
|
|
- }
|
|
|
+
|
|
|
+ public function flist()
|
|
|
+ {
|
|
|
+ $page = isset($this->post['page']) && $this->post['page'] !== "" ? intval($this->post['page']) : 1;
|
|
|
+ $size = isset($this->post['size']) && $this->post['size'] !== "" ? intval($this->post['size']) : 10;
|
|
|
+ $condtion = [['b.is_del', "=", 0], ['c.is_del', "=", 0]];
|
|
|
+ $wsmcode = isset($this->post['wsm_code']) && $this->post['wsm_code'] !== "" ? trim($this->post['wsm_code']) : "";
|
|
|
+ if ($wsmcode !== "") {
|
|
|
+ //return error_show(1002,"仓库code不能为空");
|
|
|
+ $condtion[] = ['c.wsm_code', "=", $wsmcode];
|
|
|
+ // $typecode= Db::name("good_stock")->where(["wsm_code"=>$wsmcode,'is_del'=>0])->column("good_type_code");
|
|
|
+ }
|
|
|
|
|
|
// $good_code =isset($this->post['type_code']) &&$this->post['type_code'] !=="" ? trim($this->post['type_code']):"";
|
|
|
// if($good_code!=""){
|
|
|
// $condtion[]=['b.type_code',"=",$good_code];
|
|
|
// }
|
|
|
- $goodcode =isset($this->post['good_code']) &&$this->post['good_code'] !=="" ? trim($this->post['good_code'])
|
|
|
- :"";
|
|
|
- if($goodcode!=""){
|
|
|
- // $condtion['a.good_code'] = Db::raw("like '%{$goodcode}%'");
|
|
|
- $condtion[]=['b.spuCode',"like","%{$goodcode}%"];
|
|
|
- }
|
|
|
- $good_name =isset($this->post['good_name']) &&$this->post['good_name'] !=="" ? trim($this->post['good_name'])
|
|
|
- :"";
|
|
|
- if($good_name!=""){
|
|
|
- // $condtion['a.good_name'] = Db::raw("like '%{$good_name}%'");
|
|
|
- $condtion[]=['b.good_name',"like","%{$good_name}%"];
|
|
|
- }
|
|
|
- $supplierNo =isset($this->post['supplierNo']) &&$this->post['supplierNo'] !=="" ? trim($this->post['supplierNo']):"";
|
|
|
- if($supplierNo!=""){
|
|
|
- $supplier = Db::name("supplier")->where(["code"=>$supplierNo])->find();
|
|
|
- if(empty($supplier)){
|
|
|
- return error_show(1004,"未找到供应商信息");
|
|
|
- }
|
|
|
- $wsmcode = Db::name("warehouse_info")->where(["is_del"=>0,"supplierNo"=>$supplierNo])->column("wsm_code");
|
|
|
- $condtion[]=['c.wsm_code',"in",$wsmcode];
|
|
|
- }
|
|
|
- $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] !== "" ? trim($this->post['companyNo']) : "";
|
|
|
- if ($companyNo !== "") {
|
|
|
- $wsmcode = Db::name("warehouse_info")->where(['companyNo'=>$companyNo,"is_del"=>0])->column("wsm_code");
|
|
|
- $condition[]=["c.wsm_code","in",$wsmcode];
|
|
|
- }
|
|
|
- $stock_low =isset($this->post['stock_low']) &&$this->post['stock_low'] !=="" ? intval($this->post['stock_low'])
|
|
|
- :"";
|
|
|
- if($stock_low!=""){
|
|
|
- $condtion[]=['c.usable_stock',">=",$stock_low];
|
|
|
- }
|
|
|
- $stock_max =isset($this->post['stock_max']) &&$this->post['stock_max'] !=="" ? intval($this->post['stock_max'])
|
|
|
- :"";
|
|
|
- if($stock_max!=""){
|
|
|
- $condtion[]=['c.usable_stock',">=",$stock_max];
|
|
|
- }
|
|
|
- $stock_up =isset($this->post['stock_up']) &&$this->post['stock_up'] !=="" ? trim($this->post['stock_up'])
|
|
|
- :"";
|
|
|
- if($stock_up!=""){
|
|
|
- $condtion[]=['c.usable_stock',"<=",$stock_up];
|
|
|
- }
|
|
|
- $warn_low =isset($this->post['warn_low']) &&$this->post['warn_low'] !=="" ? intval($this->post['warn_low'])
|
|
|
- :"";
|
|
|
- if($warn_low!==""){
|
|
|
- $condtion[]=['c.warn_stock',">=",$warn_low];
|
|
|
- }
|
|
|
- $warn_up =isset($this->post['warn_up']) &&$this->post['warn_up'] !=="" ? intval($this->post['warn_up'])
|
|
|
- :"";
|
|
|
- if($warn_up!=""){
|
|
|
- $condtion[]=['c.warn_stock',"<=",$warn_up];
|
|
|
- }
|
|
|
- $cat_id =isset($this->post['cat_id']) &&$this->post['cat_id'] !=="" ? intval($this->post['cat_id']) :"";
|
|
|
- if($cat_id!=""){
|
|
|
- $at = Db::name('cat')->where(['id'=>$cat_id])->find();
|
|
|
- if(empty($at)){
|
|
|
- return error_show(1004,"未找到分类信息");
|
|
|
- }
|
|
|
- $cat=manger([$at['id']],$at['level']);
|
|
|
- $condtion[]=['b.cat_id',"in",$cat];
|
|
|
- }
|
|
|
- $count = Db::name("good")->alias("b")
|
|
|
- ->join("good_stock c","c.spuCode=b.spuCode","left")
|
|
|
- ->where($condtion)->count();
|
|
|
- $page>=ceil($count/$size) ? $page=ceil($count/$size) :"";
|
|
|
- $list = Db::name("good")
|
|
|
- ->alias("b")
|
|
|
- ->join("good_stock c","c.spuCode=b.spuCode","left")
|
|
|
- ->where($condtion)
|
|
|
- ->page($page,$size)
|
|
|
- ->select()
|
|
|
- ->toArray();
|
|
|
+ $goodcode = isset($this->post['good_code']) && $this->post['good_code'] !== "" ? trim($this->post['good_code'])
|
|
|
+ : "";
|
|
|
+ if ($goodcode != "") {
|
|
|
+ // $condtion['a.good_code'] = Db::raw("like '%{$goodcode}%'");
|
|
|
+ $condtion[] = ['b.spuCode', "like", "%{$goodcode}%"];
|
|
|
+ }
|
|
|
+ $good_name = isset($this->post['good_name']) && $this->post['good_name'] !== "" ? trim($this->post['good_name'])
|
|
|
+ : "";
|
|
|
+ if ($good_name != "") {
|
|
|
+ // $condtion['a.good_name'] = Db::raw("like '%{$good_name}%'");
|
|
|
+ $condtion[] = ['b.good_name', "like", "%{$good_name}%"];
|
|
|
+ }
|
|
|
+ $supplierNo = isset($this->post['supplierNo']) && $this->post['supplierNo'] !== "" ? trim($this->post['supplierNo']) : "";
|
|
|
+ if ($supplierNo != "") {
|
|
|
+ $supplier = Db::name("supplier")->where(["code" => $supplierNo])->find();
|
|
|
+ if (empty($supplier)) {
|
|
|
+ return error_show(1004, "未找到供应商信息");
|
|
|
+ }
|
|
|
+ $wsmcode = Db::name("warehouse_info")->where(["is_del" => 0, "supplierNo" => $supplierNo])->column("wsm_code");
|
|
|
+ $condtion[] = ['c.wsm_code', "in", $wsmcode];
|
|
|
+ }
|
|
|
+ $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] !== "" ? trim($this->post['companyNo']) : "";
|
|
|
+ if ($companyNo !== "") {
|
|
|
+ $wsmcode = Db::name("warehouse_info")->where(['companyNo' => $companyNo, "is_del" => 0])->column("wsm_code");
|
|
|
+ $condition[] = ["c.wsm_code", "in", $wsmcode];
|
|
|
+ }
|
|
|
+ $stock_low = isset($this->post['stock_low']) && $this->post['stock_low'] !== "" ? intval($this->post['stock_low'])
|
|
|
+ : "";
|
|
|
+ if ($stock_low != "") {
|
|
|
+ $condtion[] = ['c.usable_stock', ">=", $stock_low];
|
|
|
+ }
|
|
|
+ $stock_max = isset($this->post['stock_max']) && $this->post['stock_max'] !== "" ? intval($this->post['stock_max'])
|
|
|
+ : "";
|
|
|
+ if ($stock_max != "") {
|
|
|
+ $condtion[] = ['c.usable_stock', ">=", $stock_max];
|
|
|
+ }
|
|
|
+ $stock_up = isset($this->post['stock_up']) && $this->post['stock_up'] !== "" ? trim($this->post['stock_up'])
|
|
|
+ : "";
|
|
|
+ if ($stock_up != "") {
|
|
|
+ $condtion[] = ['c.usable_stock', "<=", $stock_up];
|
|
|
+ }
|
|
|
+ $warn_low = isset($this->post['warn_low']) && $this->post['warn_low'] !== "" ? intval($this->post['warn_low'])
|
|
|
+ : "";
|
|
|
+ if ($warn_low !== "") {
|
|
|
+ $condtion[] = ['c.warn_stock', ">=", $warn_low];
|
|
|
+ }
|
|
|
+ $warn_up = isset($this->post['warn_up']) && $this->post['warn_up'] !== "" ? intval($this->post['warn_up'])
|
|
|
+ : "";
|
|
|
+ if ($warn_up != "") {
|
|
|
+ $condtion[] = ['c.warn_stock', "<=", $warn_up];
|
|
|
+ }
|
|
|
+ $cat_id = isset($this->post['cat_id']) && $this->post['cat_id'] !== "" ? intval($this->post['cat_id']) : "";
|
|
|
+ if ($cat_id != "") {
|
|
|
+ $at = Db::name('cat')->where(['id' => $cat_id])->find();
|
|
|
+ if (empty($at)) {
|
|
|
+ return error_show(1004, "未找到分类信息");
|
|
|
+ }
|
|
|
+ $cat = manger([$at['id']], $at['level']);
|
|
|
+ $condtion[] = ['b.cat_id', "in", $cat];
|
|
|
+ }
|
|
|
+ $count = Db::name("good")->alias("b")
|
|
|
+ ->join("good_stock c", "c.spuCode=b.spuCode", "left")
|
|
|
+ ->where($condtion)->count();
|
|
|
+ $page >= ceil($count / $size) ? $page = ceil($count / $size) : "";
|
|
|
+ $list = Db::name("good")
|
|
|
+ ->alias("b")
|
|
|
+ ->leftJoin("good_stock c", "c.spuCode=b.spuCode")
|
|
|
+ ->where($condtion)
|
|
|
+ ->page($page, $size)
|
|
|
+ ->select()
|
|
|
+ ->toArray();
|
|
|
|
|
|
- $data=[];
|
|
|
- if($list) {
|
|
|
- //品牌信息
|
|
|
- $brands = Db::name('brand')->whereIn('id', array_column($list, 'brand_id'))->where('is_del', 0)->column('brand_name', 'id');
|
|
|
- $units = Db::name('unit')->whereIn('id', array_column($list, 'good_unit'))->where('is_del', 0)->column('unit', 'id');
|
|
|
+ $data = [];
|
|
|
+ if ($list) {
|
|
|
+ //品牌信息
|
|
|
+ $brands = Db::name('brand')->whereIn('id', array_column($list, 'brand_id'))->where('is_del', 0)->column('brand_name', 'id');
|
|
|
+ $units = Db::name('unit')->whereIn('id', array_column($list, 'good_unit'))->where('is_del', 0)->column('unit', 'id');
|
|
|
+ $business = Db::name('business')->whereIn('companyNo', array_column($list, 'companyNo'))->where('is_del', 0)->column('company', 'companyNo');
|
|
|
|
|
|
- foreach ($list as $key=>$value){
|
|
|
- $supplier = Db::name("supplier")->where(["code"=>$value['supplierNo']])->find();
|
|
|
- $value['supplier_name'] =isset($supplier['name']) ?$supplier['name'] :"";
|
|
|
- $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")->where(["a.wsm_code"=>$value['wsm_code']])->field("a.name as wsm_name,b.name,b.code")->find();
|
|
|
- $value['wsm_name'] =isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name']:"";
|
|
|
- $value['wsm_supplier'] =isset($wsmcode['name']) ? $wsmcode['name']:"";
|
|
|
- $value['wsm_supplierNo'] =isset($wsmcode['code']) ? $wsmcode['code']:"";
|
|
|
- $value['can']= isset($value['cat_id']) && $value['cat_id'] !=0 ? made($value['cat_id']):[];
|
|
|
+ foreach ($list as $key => $value) {
|
|
|
+ $supplier = Db::name("supplier")->where(["code" => $value['supplierNo']])->find();
|
|
|
+ $value['supplier_name'] = isset($supplier['name']) ? $supplier['name'] : "";
|
|
|
+ $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b", "a.supplierNo=b.code")->where(["a.wsm_code" => $value['wsm_code']])->field("a.name as wsm_name,b.name,b.code")->find();
|
|
|
+ $value['wsm_name'] = isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name'] : "";
|
|
|
+ $value['wsm_supplier'] = isset($wsmcode['name']) ? $wsmcode['name'] : "";
|
|
|
+ $value['wsm_supplierNo'] = isset($wsmcode['code']) ? $wsmcode['code'] : "";
|
|
|
+ $value['can'] = isset($value['cat_id']) && $value['cat_id'] != 0 ? made($value['cat_id']) : [];
|
|
|
|
|
|
- $value['brand_name'] = $brands[$value['brand_id']]??'';
|
|
|
- $value['unit'] = $units[$value['good_unit']]??'';
|
|
|
+ $value['brand_name'] = isset($brands[$value['brand_id']]) ? $brands[$value['brand_id']] : '';
|
|
|
+ $value['unit'] = isset($units[$value['good_unit']]) ? $units[$value['good_unit']] : '';
|
|
|
+ $value['companyName'] = isset($business[$value['companyNo']]) ? $business[$value['companyNo']] : '';
|
|
|
|
|
|
- //规格信息
|
|
|
- $spec = Db::name("good_spec")->where(["spuCode" => $value['spuCode'], "is_del" => 0])->select()->toArray();
|
|
|
+ //规格信息
|
|
|
+ $spec = Db::name("good_spec")->where(["spuCode" => $value['spuCode'], "is_del" => 0])->select()->toArray();
|
|
|
|
|
|
- $speclist = [];
|
|
|
- if (!empty($spec)) {
|
|
|
- foreach ($spec as $val) {
|
|
|
- $temp = [];
|
|
|
- $temp['spec_id'] = $val['spec_id'];
|
|
|
- $temp['spec_value_id'] = $val['spec_value_id'];
|
|
|
- $sp = Db::name("specs")->where(["id" => $val['spec_id']])->find();
|
|
|
- $temp['spec_name'] = isset($sp["spec_name"]) ? $sp["spec_name"] : "";
|
|
|
- $spv = Db::name("spec_value")->where(["id" => $val['spec_value_id']])->find();
|
|
|
- $temp['spec_value'] = isset($spv["spec_value"]) ? $spv["spec_value"] : "";
|
|
|
- $speclist[] = $temp;
|
|
|
+ $speclist = [];
|
|
|
+ if (!empty($spec)) {
|
|
|
+ foreach ($spec as $val) {
|
|
|
+ $temp = [];
|
|
|
+ $temp['spec_id'] = $val['spec_id'];
|
|
|
+ $temp['spec_value_id'] = $val['spec_value_id'];
|
|
|
+ $sp = Db::name("specs")->where(["id" => $val['spec_id']])->find();
|
|
|
+ $temp['spec_name'] = isset($sp["spec_name"]) ? $sp["spec_name"] : "";
|
|
|
+ $spv = Db::name("spec_value")->where(["id" => $val['spec_value_id']])->find();
|
|
|
+ $temp['spec_value'] = isset($spv["spec_value"]) ? $spv["spec_value"] : "";
|
|
|
+ $speclist[] = $temp;
|
|
|
+ }
|
|
|
}
|
|
|
+ $value['specinfo'] = $speclist;
|
|
|
+
|
|
|
+ //采购人
|
|
|
+ $value['cgder'] = Db::name('purchease_order')
|
|
|
+ ->where([
|
|
|
+ 'wsm_code'=>$value['wsm_code'],
|
|
|
+ 'spuCode'=>$value['spuCode'],
|
|
|
+ 'is_del'=>0,
|
|
|
+ ])->value('cgder','');
|
|
|
+
|
|
|
+ $data[] = $value;
|
|
|
}
|
|
|
- $value['specinfo'] = $speclist;
|
|
|
|
|
|
- $data[]=$value;
|
|
|
}
|
|
|
|
|
|
+ return app_show(0, "获取成功", ["list" => $data, "count" => $count]);
|
|
|
}
|
|
|
-
|
|
|
- return app_show(0,"获取成功",["list"=>$data,"count"=>$count]);
|
|
|
-}
|
|
|
public function list()
|
|
|
{
|
|
|
$page = isset($this->post['page']) && $this->post['page'] !== "" ? intval($this->post['page']) : "1";
|