wugg il y a 1 an
Parent
commit
039b17a23e

+ 2 - 2
app/admin/controller/After.php

@@ -791,11 +791,11 @@ class After extends Base
 
             } catch (Exception $e) {
                 Db::rollback();
-                throw new Exception($e->getMessage() . '|' . $e->getFile() . '|' . $e->getLine());
+                throw new Exception($e->getMessage());
             }
 
         } catch (Exception $exception) {
-            return json_show(1005, $exception->getMessage() . '|' . $exception->getFile() . '|' . $exception->getLine());
+            return json_show(1005, $exception->getMessage() );
         }
 
     }

+ 2 - 16
app/admin/controller/Good.php

@@ -112,16 +112,6 @@ class Good extends Base
         if($supplier!==""){
 			$where[]=['a.supplierName',"like","%$supplier%"];
         }
-//        $role=$this->checkRole();
-//        if(!empty($role['write']) ){
-//            $where[]=["a.createrid","in",$role['write']];
-//        }
-//        $role = $this->checkDataShare();
-//        $hand = resign_hand_user($this->uid,0);
-//        if (!empty($role[DataGroupModel::$type_全部])) {
-//        	$arr= array_unique(array_merge($hand,$role[DataGroupModel::$type_全部]));
-//			$where[] = ['b.createrid', 'in',$arr];
-//        }
 
         $company_name = isset($this->post['company_name']) && $this->post['company_name'] !== "" ? trim($this->post['company_name']) : "";
         if ($company_name !== "") $where[] = ["b.createrid", 'in', get_company_item_user_by_name($company_name)];
@@ -131,9 +121,7 @@ class Good extends Base
 
         $count = Db::name('good')
             ->alias("a")
-            ->leftJoin("good_platform b","a.spuCode=b.spuCode")
-//            ->leftJoin("supplier s","a.supplierNo=s.code")
-//            ->leftJoin("depart_user u", "u.uid=b.createrid AND u.is_del=0")
+            ->rightJoin("good_platform b","a.spuCode=b.spuCode")
             ->leftJoin("platform p","p.id=b.platform_code")
             ->where('p.platform_type',0)//只筛选非对接平台的商品
             ->where($where)
@@ -147,9 +135,7 @@ class Good extends Base
             a.good_unit,a.noble_metal,a.companyNo,a.companyName,a.spuCode,a.good_type,b.creater,b.addtime,b.updatetime,
             b.exam_status,a.createrid purchase_id,a.creater purchase,a.is_stock,p.platform_name,b.is_compliance,b.compliance_remark")
             //成本表里的创建人,也是线上商品的采购人,为了防止混淆,给creater取个别名
-            ->leftJoin("good_platform b","a.spuCode=b.spuCode")
-//            ->leftJoin("supplier s","a.supplierNo=s.code")
-//            ->leftJoin("good_basic gb","gb.spuCode=a.spuCode")
+            ->rightJoin("good_platform b","a.spuCode=b.spuCode")
             ->leftJoin("platform p","p.id=b.platform_code")
             ->where('p.platform_type',0)//只筛选非对接平台的商品
             ->where($where)

+ 2 - 35
app/admin/controller/Goodup.php

@@ -114,12 +114,7 @@ class Goodup extends Base
         }
         $isonline = isset($this->post['isonline']) && $this->post['isonline']!=="" ? $this->post['isonline']:"";
         if($isonline!==""){
-            $condit[] =['b.exam_status',"=",3];
-//            if($isonline==1){
-//                $condit[] =['b.exam_status',"=",6];
-//            }else{
-//                $condit[] =['b.exam_status',"<>",6];
-//            }
+          $condit[] =['b.exam_status',"=",3];
           $sta =Db::name("good_basic")
               ->alias("a")
               ->leftJoin("good_platform b","a.spuCode=b.spuCode")
@@ -130,29 +125,6 @@ class Goodup extends Base
             if($isonline==1) $where[]=["gb.spuCode","in",$sta];
             else  $where[]=["gb.spuCode","not in",$sta];
         }
-//        $token = isset($this->post['token']) ? trim($this->post['token']) : "";
-//        if($token==""){
-//            return error_show(101,'token不能为空');
-//        }
-//        $apply_id =GetUserInfo($token);
-//        if(empty($apply_id)||$apply_id['code']!=0){
-//            return error_show(102,"申请人数据不存在");
-//        }
-//        $rm= isset($apply_id["data"]['id']) ?  $apply_id["data"]['id'] : "";
-//        if($rm!=''){
-//            $useinfo = Db::name("user_role")->where(['uid'=>$rm,"status"=>1,"is_del"=>0])->find();
-//            if($useinfo==false){
-//                return error_show(1002,"未找到用户角色权限");
-//            }
-//            $check = checkRole($useinfo['roleid'],115);
-//            if($check){
-//                $where[]=['gb.createrid', "=" ,$rm];
-//            }
-//        }
-//        $role=$this->checkRole();
-//        $wheror=[];
-//        $role = $this->checkDataShare();//取负责人字段
-//        if(!empty($role[DataGroupModel::$type_全部]))  $wheror[]=["gb.chargerid","in",$role[DataGroupModel::$type_全部]];
 
         //只有level2的账号过滤数据权限
         if ($this->level == 2) {
@@ -160,8 +132,6 @@ class Goodup extends Base
             $hand = resign_hand_user($this->uid, 0);
             if (!empty($role[DataGroupModel::$type_全部])) {
                 $arr = array_unique(array_merge($hand, $role[DataGroupModel::$type_全部]));
-//                $where[] = ['gb.chargerid|gb.createrid', 'in', $arr];
-
                 $supplierNos = Db::connect('mysql_sys')
                     ->name('supplier')
                     ->where(['is_del' => 0, 'personid' => $arr])
@@ -180,9 +150,6 @@ class Goodup extends Base
         $count = Db::name('good_basic')
             ->alias('gb')
             ->where($where)
-//            ->where(function ($Query) use ($wheror) {
-//                return $Query->whereOr($wheror);
-//            })
             ->count('gb.id');
         $total = ceil($count / $size);
         $page = $page >= $total ? $total : $page;
@@ -2047,7 +2014,7 @@ class Goodup extends Base
         $platform['exam_status'] = empty($nake)?1:2;
         $platform['updatetime'] = date("Y-m-d H:i:s");
         $createrid= $this->uid;
-        $creater= $this->uame;
+        $creater= $this->uname;
       Db::startTrans();
         try {
             $save =Db::name("good_platform")->save($platform);

+ 3 - 3
app/admin/controller/OrderOutChild.php

@@ -144,7 +144,7 @@ class OrderOutChild extends Base
 
         $list = Db::name('order_out_child')
             ->alias('a')
-            ->field('a.*,c.supplierNo wsm_supplierNo,c.supplierName wsm_supplierName,c.name wsm_name,c.contactor_name,p.use_type,m.cgdNo')
+            ->field('a.*,c.supplierNo wsm_supplierNo,c.supplierName wsm_supplierName,c.name wsm_name,c.contactor_name,p.use_type,m.cgdNo,d.remark')
             ->leftJoin('warehouse_info c', 'c.wsm_code=a.wsm_code AND c.is_del=0')
             ->leftJoin('sale d', 'd.orderCode=a.orderCode AND d.is_del=0')
             ->leftJoin('platform p', 'p.id=d.platform_id AND p.is_del=0')
@@ -278,7 +278,7 @@ class OrderOutChild extends Base
             a.apply_name 申请人,
             case p.use_type when 0 then "无" when 1 then "to B" when 2 then "to C" end 对接类型,
             a.post_name 物流公司,a.post_code 物流单号,a.post_fee 物流费用,
-            e.addr 收货地址,e.addr_code,e.contactor 收货联系人,e.mobile 联系方式,m.cgdNo 采购单号')
+            e.addr 收货地址,e.addr_code,e.contactor 收货联系人,e.mobile 联系方式,m.cgdNo 采购单号,d.remark 备注')
             ->leftJoin('warehouse_info c', 'c.wsm_code=a.wsm_code AND c.is_del=0')
             ->leftJoin('order_addr e', 'a.addrid=e.id')
             ->leftJoin('order_send m', 'a.outCode=m.outCode')
@@ -431,7 +431,7 @@ class OrderOutChild extends Base
             ->findOrEmpty();
         //校验是否开通了供应商账号
         $supp_account = checkHasAccountBySupplierNos([$info['supplierNo']]);
-
+		$info['remark'] = Db::name("sale")->where(["orderCode"=>$info['orderCode']])->value("remark",'');
         $info['has_account'] = (int)isset($supp_account[$info['supplierNo']]);
         return json_show(0, '获取详情成功', $info);
 

+ 0 - 1
app/admin/controller/SaleReport.php

@@ -726,7 +726,6 @@ class SaleReport extends Base
         $data = Db::name('sale')
             ->alias('s')
             ->field('s.apply_name 创建人,"" 创建人所属部门,s.addtime 下单时间,s.orderCode 订单号,"" 一级企业,"" 二级企业,"" 客户名称,s.good_name 商品名称,s.good_num 数量,"" 单位,s.sale_price 单价,s.total_price 金额,s.arrive_time 承诺发货时间,s.good_code,s.skuCode,s.is_stock,s.order_type,s.apply_id,s.customer_code')
-//            ->leftJoin('customer_info csi', 'csi.companyNo=s.customer_code')
             ->leftJoin('order_out out', 'out.orderCode=s.orderCode AND out.is_del=0')
             ->where($where)
             ->order('s.addtime', 'desc')

+ 5 - 11
app/admin/controller/Suppler.php

@@ -382,16 +382,9 @@ class Suppler extends Base
         if ($name == "") {
             return error_show(1002, "数据标题不能为空");
         }
-//        $rename = Db::name('supplier')->where(['is_del' => 0, 'name' => $name])->where([["id", "<>", $id]])->find();
-
-//        if ($rename != false) {
-//            return error_show(1002, "公司名称已存在");
-//        }
-//        $nature = isset($this->post['nature']) && $this->post['nature']!==""? trim($this->post['nature']) :"";
         $is_platform = isset($this->post['is_platform']) && $this->post['is_platform'] !== "" ? intval($this->post['is_platform']) : "0";
         $ticket_type = isset($this->post['ticket_type']) && $this->post['ticket_type'] !== "" ? trim($this->post['ticket_type']) : "";
-//        $legaler = isset($this->post['legaler']) && $this->post['legaler']!==""? trim($this->post['legaler']) :"";
-//        $addr = isset($this->post['addr']) && $this->post['addr']!==""? trim($this->post['addr']) :"";
+
         $registercode = isset($this->post['registercode']) && $this->post['registercode'] !== "" ? trim($this->post['registercode']) : "";
 //        $capital= isset($this->post['capital']) && $this->post['capital']!==""? intval($this->post['capital']) :"";
         $product_category = isset($this->post['product_category']) && $this->post['product_category'] !== "" ? trim($this->post['product_category']) : "";
@@ -400,7 +393,7 @@ class Suppler extends Base
         $agreement = isset($this->post['agreement']) && $this->post['agreement'] !== "" ? trim($this->post['agreement']) : "";
         $warehouse = isset($this->post['warehouse']) && $this->post['warehouse'] !== "" ? trim($this->post['warehouse']) : "";
         $pay_day = isset($this->post['pay_day']) && $this->post['pay_day'] !== "" ? trim($this->post['pay_day']) : "";
-//        $scope= isset($this->post['scope']) && $this->post['scope']!==""?trim($this->post['scope']) :"";
+        $scope= isset($this->post['scope']) && $this->post['scope']!==""?trim($this->post['scope']) :"";
 ////        $status= isset($this->post['status']) && $this->post['status']!==""?trim($this->post['status']) :"";
 //        $registertime= isset($this->post['registertime']) && $this->post['registertime']!==""? $this->post['registertime'] :"";
         $supplier_img = isset($this->post['supplier_img']) && $this->post['supplier_img'] !== "" ? trim($this->post['supplier_img']) : "";
@@ -427,6 +420,7 @@ class Suppler extends Base
             "id" => $id,
             "source" => $source,
             "name" => $name,
+            "code" => $code['code'],
             "coop_state" => $coop_state,
             "category" => $category,
             "delivery_way" => $delivery_way,
@@ -441,9 +435,9 @@ class Suppler extends Base
             "warehouse" => $warehouse,
             "pay_day" => $pay_day,
             "type" => $type,
-            "license_img" => $supplier_img,
+            "license_img" => $supplier_img=="" ?$info['data']['license_img']:"",
             "is_del" => 0,
-            // "status"=>$info['data']['license_img']==$supplier_img ? $info['data']['status']:0,
+            "scope"=>$scope,
             "ticket_type" => $ticket_type,
             "updatetime" => date("Y-m-d H:i:s"),
             "is_platform" => $is_platform,

+ 1 - 0
app/admin/model/GoodStockInfo.php

@@ -251,6 +251,7 @@ class GoodStockInfo extends Model
 	        "childCode"=>$childCode,
 	        "bnCode"=>$value['bnCode'],
 	        "num"=>$value['num'],
+	        "total_bn_num"=>$value['num'],
 	        "origin_price"=>$value['origin_price'],
 	        "addtime"=>date("Y-m-d H:i:s"),
 	        "updatetime"=>date("Y-m-d H:i:s"),

+ 1 - 1
app/command/ExecByRelaComNoHandle.php

@@ -628,7 +628,7 @@ class ExecByRelaComNoHandle extends Command
     //网络部出入库
     public function GetWlb($start, $end)
     {
-        $db = Db::connect("mysql3");
+        $db = Db::connect("mysql_cxinv");
         $list = $db->name("cgd_info")
             ->where(['cgdSource' => 10, "is_del" => 0])->whereBetweenTime('createdTime', $start, $end)->field(
                 "year(createdTime) AS `年`,

+ 93 - 121
app/command/NowReportHandle.php

@@ -36,14 +36,14 @@ class NowReportHandle extends Command
 
                 //不同的方法处理不同的脚本
                 switch ($info['code']) {
-                    //【财务报表】退货台账-业务口径
-                    case 'A':
-                        $res = $this->A($info['start'], $info['end']);
-                        break;
-                    //【财务报表】库存日报及预警汇总表
-                    case 'B':
-                        $res = $this->B($info['start'], $info['end']);
-                        break;
+//                    //【财务报表】退货台账-业务口径
+//                    case 'A':
+//                        $res = $this->A($info['start'], $info['end']);
+//                        break;
+//                    //【财务报表】库存日报及预警汇总表
+//                    case 'B':
+//                        $res = $this->B($info['start'], $info['end']);
+//                        break;
                     //【财务报表】退货台账
                     case 'C':
                         $res = $this->C($info['start'], $info['end']);
@@ -57,9 +57,9 @@ class NowReportHandle extends Command
                         $res = $this->E($info['start'], $info['end']);
                         break;
                     //【财务报表】库存品出库明细
-                    case 'F':
-                        $res = $this->F($info['start'], $info['end']);
-                        break;
+//                    case 'F':
+//                        $res = $this->F($info['start'], $info['end']);
+//                        break;
                     //【销售】订单表导出
                     case 'G':
                         $res = $this->G($info['start'], $info['end']);
@@ -271,11 +271,8 @@ class NowReportHandle extends Command
             ->leftJoin('sale_return wsr', 'wtd.thCode = wsr.returnCode and wtd.th_type=1')
             ->leftJoin('order_return wor', 'wtd.thCode = wor.returnCode and wtd.th_type in (2,3)')
             ->leftJoin('sale ws', 'ws.orderCode=wtd.orderCode and ws.is_del=0')
-//            ->leftJoin('business wb', ' ws.supplierNo=wb.companyNo')
             ->leftJoin('order_num won', 'won.orderCode=wtd.orderCode')
             ->leftJoin('purchease_order wpo', 'wpo.cgdNo=won.cgdNo and wpo.is_del=0')
-//            ->leftJoin('supplier wps', 'wps.code=wpo.supplierNo')
-//            ->leftJoin('customer_info wci', 'wci.companyNo =ws.customer_code')
             ->whereBetween('wtd.addtime', [$start_date, $end_date])
             ->field("	year(wtd.addtime) '年',
 	month(wtd.addtime) '月',
@@ -393,7 +390,6 @@ class NowReportHandle extends Command
             ->leftJoin("purchease_order wpo", "wpo.cgdNo=won.cgdNo and wpo.is_del=0")
             ->leftJoin("good_basic wgb", "wgb.spuCode=wpo.spuCode and wgb.is_del=0")
             ->leftJoin("good_zixun wgz", "wgz.spuCode=wpo.spuCode and wgz.is_del=0")
-//            ->leftJoin("supplier ws","ws.code=wpo.supplierNo")
             ->where('woo.status', ">=", 2)
             ->where('woo.is_del', "=", 0)
             ->where('wpo.order_type', "<>", 1)
@@ -404,6 +400,7 @@ class NowReportHandle extends Command
             a.supplierName as '公司名称', 
              a.apply_id '业务部门名称' ,
              a.apply_name as '业务人员',
+             if(a.pay_id>0,'是','否') 是否拆单,
              a.order_type as '订单类型',
              a.good_type as '商品类型',
              woo.outCode '发货编号',
@@ -447,16 +444,10 @@ class NowReportHandle extends Command
         $unit = Db::name('unit')->where('is_del', 0)->column('unit', 'id');
 
         foreach ($list as $value) {
-
-//                $tmp=User::getIns()->handle('getCodeAndName',['code'=>$value['公司名称']]);
-//                $value['公司名称'] = $tmp['data'][$value['公司名称']]??'';//Db::name("business")->where(["companyNo"=>$value['公司名称']])->value('company','');
             if (!isset($tmp[$value['业务部门名称']])) $tmp[$value['业务部门名称']] = get_company_name_by_uid($value['业务部门名称']);
             $value['业务部门名称'] = $tmp[$value['业务部门名称']] ?? '';//get_company_name_by_uid($value['业务部门名称']);//Db::name("depart_user")->alias("a")->leftJoin("company_item ci","a.itemid=ci.id")->where(["a.uid"=>$value['业务部门名称'],"a.status"=>1,"a.is_del"=>0])->value('ci.name','');
 
-
-//                $value['公司名称'] = Db::name("business")->where(["companyNo"=>$value['公司名称']])->value('company','');
-//                $value['业务部门名称'] = Db::name("depart_user")->alias("a")->leftJoin("company_item ci","a.itemid=ci.id")->where(["a.uid"=>$value['业务部门名称'],"a.status"=>1,"a.is_del"=>0])->value('ci.name','');
-            $value['订单类型'] = $order_tyepe[$value['订单类型'] - 1];
+	        $value['订单类型'] = $order_tyepe[$value['订单类型'] - 1];
             $value['商品类型'] = $good_type[$value['商品类型'] - 1];
             $cat = made($value['三级分类']);
             $value['财务核算编码'] = $fund_code[$value['三级分类']] ?? '';//Db::name("cat")->where(["id"=>$value['三级分类']])->value("fund_code",'');
@@ -503,7 +494,7 @@ class NowReportHandle extends Command
             ->leftJoin("good_basic wgb", "wgb.spuCode=wpo.spuCode and wgb.is_del=0")
             ->leftJoin("warehouse_info wwi", "wwi.wsm_code = wpo.wsm_code")
 //            ->leftJoin("supplier ws","ws.code=wpo.supplierNo")
-            ->where('wpi.status', "in", [4, 6])
+            ->where('wpi.status', "=", 2)
             ->where('wpi.is_del', "=", 0)
             ->where('wpo.order_type', "=", 1)
             ->where('wpo.order_source', "=", 0)
@@ -519,8 +510,8 @@ class NowReportHandle extends Command
                                 wgb.cat_id as '三级分类',
                                 wgb.cat_id as '财务核算编号',
                                wpo.good_name as '商品名称',
-                            if(wpi.status=4,wpi.send_num,wpi.wsm_num) '入库数量',
-	                        round( if(wpi.status=4,wpi.send_num,wpi.wsm_num) * good_price, 2 ) '入库金额',
+                            wpi.send_num '入库数量',
+	                        wpi.send_num * good_price '入库金额',
                                wpi.updatetime '本次入库时间',
                             wgb.tax/100 '采购税率',
                             '' as '不含税入库金额',
@@ -562,7 +553,6 @@ class NowReportHandle extends Command
             ->leftJoin("order_back wor", "wor.outCode=woo.outCode and wor.status=4 and wor.is_del=0")
             ->leftJoin("purchease_order wpo", "wpo.cgdNo=won.cgdNo")
             ->leftJoin("good_basic wgb", "wgb.spuCode=wpo.spuCode and wgb.is_del=0")
-//            ->leftJoin("supplier ws","ws.code=wpo.supplierNo")
             ->leftJoin("warehouse_info wwi", "wwi.wsm_code = wpo.wsm_code")
             ->where([['woo.status', ">=", 2], ['woo.is_del', "=", 0], ['a.order_type', "=", 1], ['woo.sendtime', "between", [$start, $end]]])
             ->field("wpo.companyName '业务公司',
@@ -614,7 +604,7 @@ class NowReportHandle extends Command
     //网络部出入库
     public function GetWlb($start, $end)
     {
-        $db = Db::connect("mysql3");
+        $db = Db::connect("mysql_cxinv");
         $list = $db->name("cgd_info")
             ->where(['cgdSource' => 10, "is_del" => 0])->whereBetweenTime('createdTime', $start, $end)->field(
                 "year(createdTime) AS `年`,
@@ -623,6 +613,7 @@ class NowReportHandle extends Command
 					companyName '公司名称',
 					department '业务部门',
 					ownerName '业务人员',
+					if(cxCode='','否','是') '是否拆单',
 					'网络部采购单' '订单类型',
 					'' as '商品类型',
 					'' as '发货编号',
@@ -649,7 +640,7 @@ class NowReportHandle extends Command
 		            deliveryPrice AS `物流费`,
 		            goodPrice AS `成本合计`,
 		            totalPrice AS `采购货款`,
-		            tax AS `采购税点`, 
+		            tax/100 AS `采购税点`, 
 				    supplierName AS `供应商名称`,
 					'否'as '是否库存品',
 		            '包邮' as '发货方式',
@@ -679,17 +670,17 @@ class NowReportHandle extends Command
 
         $data = Db::name('sale')
             ->alias('s')
-            ->field('s.addtime 确认单下单时间,s.orderCode 订单编号,s.order_type 订单类型,s.status 订单状态,s.apply_name 创建人,"" 部门,s.supplierName 销售方公司,"" 一级组织,"" 二级组织,s.customerName 购买方公司,p.platform_name 所属平台,s.platform_order 平台订单号,s.poNo 其他单号,s.paytime 承诺回款时间,ou.order_use 订单用途,"" 活动类型,s.good_name 产品名称,"" 一级分类,gb.tax 税率,s.sale_price 销售单价,s.good_num 下单数量,s.total_price 销售总额,po.cgder 采购人,gb.customized 工期时间,s.arrive_time 要求到货时间,s.remark 备注,s.is_stock 是否库存品,s.cat_id,s.is_activity,s.good_type,s.customer_code,s.apply_id')
-//            ->leftJoin('customer_info csi', 'csi.companyNo=s.customer_code')
-//            ->leftJoin('business b', 'b.companyNo=s.supplierNo')
+            ->field('s.addtime 确认单下单时间,s.orderCode 订单编号,s.order_type 订单类型,s.status 订单状态,s.apply_name 创建人,
+            "" 部门,s.supplierName 销售方公司,"" 一级组织,"" 二级组织,s.customerName 购买方公司,p.platform_name 所属平台,
+            s.platform_order 平台订单号,s.poNo 其他单号,s.paytime 承诺回款时间,ou.order_use 订单用途,"" 活动类型,s.good_name 产品名称,
+            "" 一级分类,gb.tax 税率,s.sale_price 销售单价,s.good_num 下单数量,s.total_price 销售总额,po.cgder 采购人,gb.customized 工期时间,
+            s.arrive_time 要求到货时间,s.remark 备注,s.is_stock 是否库存品,s.cat_id,s.is_activity,s.good_type,s.customer_code,s.apply_id')
             ->leftJoin('platform p', 'p.id=s.platform_id')
             ->leftJoin('good_basic gb', 'gb.spuCode=s.good_code')
             ->leftJoin('order_use ou', 'ou.id=s.use_order')
-//            ->leftJoin('depart_user u', 'u.uid=s.apply_id')
-//            ->leftJoin('company_item ci', 'ci.id=u.itemid')
             ->leftJoin('order_num on', 'on.orderCode=s.orderCode')
             ->leftJoin('purchease_order po', 'po.cgdNo=on.cgdNo')
-            ->where(['s.is_del' => 0, 'ci.is_del' => 0])
+            ->where(['s.is_del' => 0])
             ->whereBetween('s.addtime', [$start_date, $end_date])
             ->order('s.addtime', 'desc')
             ->cursor();
@@ -704,17 +695,17 @@ class NowReportHandle extends Command
 
             if (!isset($tmp_customer[$value['customer_code']])) {
                 $tmp = $userCommon->handle('cInfo', ['companyNo' => $value['customer_code']]);
-                $tmp_customer[$value['customer_code']] = $tmp['data']['itemid'];
+                $tmp_customer[$value['customer_code']] = $tmp['data']['itemid']??0;
             }
+            $value['itemid'] = $tmp_customer[$value['customer_code']]??"";
 
-            $value['itemid'] = $tmp_customer[$value['customer_code']];
 
 
-            $value['订单类型'] = isset($all_order_type[$value['订单类型']]) ? $all_order_type[$value['订单类型']] : '';
+	        $value['订单类型'] = isset($all_order_type[$value['订单类型']]) ? $all_order_type[$value['订单类型']] : '';
             $value['订单状态'] = isset($all_sale_status[$value['订单状态']]) ? $all_sale_status[$value['订单状态']] : '';
 
-            if (!empty($value['itemid'])) {
-                $customer_org1 = array_column(get_top_customer_org($value['itemid']), 'name', 'level');
+            if ($value['itemid']!='') {
+                $customer_org1 = array_column(get_top_customer_org($value['itemid'])??[], 'name', 'level');
                 $value['一级组织'] = isset($customer_org1[1]) ? $customer_org1[1] : '';
                 $value['二级组织'] = isset($customer_org1[2]) ? $customer_org1[2] : '';
             }
@@ -764,7 +755,8 @@ class NowReportHandle extends Command
             $cat = made($value['一级分类']);
             $value['一级分类'] = isset($cat[0]['name']) ? $cat[0]['name'] : "";
 
-            $value['最近入库时间'] = Db::name("purchease_order")->alias("a")->leftJoin("purchease_in c", "a.cgdNo=c.cgdNo")->where(["spuCode" => $value['产品编号'], "order_type" => 1, "order_source" => 0, "c.status" => [4, 6]])->order("a.addtime desc")->value("c.addtime", "");
+            $value['最近入库时间'] = Db::name("purchease_order")->alias("a")->leftJoin("purchease_in c", "a.cgdNo=c.cgdNo")
+                                                                      ->where(["spuCode" => $value['产品编号'], "order_type" => 1, "order_source" => 0, "c.status" =>2])->order("a.addtime desc")->value("c.addtime", "");
             $value['备库单号'] = Db::name("purchease_order")->alias("a")->where(["spuCode" => $value['产品编号'], "order_type" => 1, "order_source" => 0])->order("a.addtime desc")->value("a.bkcode", "");
             if (!empty($value['最近入库时间'])) {
                 $value['保质期时间'] = date('Y-m-d H:i:s', strtotime($value['最近入库时间']) + 31536000);//365天之后
@@ -841,11 +833,11 @@ class NowReportHandle extends Command
             ->leftJoin("good_basic wgb", "wgb.spuCode=wpo.spuCode")
             ->leftJoin("warehouse_info wwi", "wwi.wsm_code = wpo.wsm_code")
 //            ->leftJoin("supplier ws", "ws.code=wpo.supplierNo")
-            ->where('wpi.status', "in", [4, 6])
+            ->where('wpi.status', "=", 2)
             ->where('wpo.order_type', "=", 1)
             ->where('wpo.order_source', "=", 0)
             ->whereBetween('wpi.addtime', [$start, $end])
-            ->field("wpo.companyName '业务公司',bkcode '备库单号',wpi.wsm_in_code '入库单号',wpi.cgdNo '采购单号',wpo.spuCode '商品编号','' as '一级分类','' as '二级分类',wgb.cat_id as '三级分类',wgb.cat_id as '财务核算编号',wpo.good_name as '商品名称',if(wpi.status=4,wpi.send_num,wpi.wsm_num) '入库数量',wpo.updatetime '本次入库时间',wp.apply_id as '业务部门',wp.apply_name as '业务员',wpo.cgder as '采购员',wsm_type '仓库类型',wpo.supplier_name '供应商名称',wwi.name '仓库名称'")
+            ->field("wpo.companyName '业务公司',bkcode '备库单号',wpi.wsm_in_code '入库单号',wpi.cgdNo '采购单号',wpo.spuCode '商品编号','' as '一级分类','' as '二级分类',wgb.cat_id as '三级分类',wgb.cat_id as '财务核算编号',wpo.good_name as '商品名称',wpi.send_num '入库数量',wpo.updatetime '本次入库时间',wp.apply_id as '业务部门',wp.apply_name as '业务员',wpo.cgder as '采购员',wsm_type '仓库类型',wpo.supplier_name '供应商名称',wwi.name '仓库名称'")
             ->cursor();
         $data = [];
         $fund_code = Db::name('cat')->where(['is_del' => 0, 'level' => 3])->column('fund_code', 'id');
@@ -911,22 +903,22 @@ class NowReportHandle extends Command
         $data = Db::name("order_out")
             ->alias("a")
             ->leftJoin("sale b", "a.orderCode=b.orderCode")
-//		->leftJoin("depart_user du"," b.apply_id=du.uid and du.is_del=0")
             ->field("b.supplierName '业务公司',a.orderCode AS '销售单号',outCode '出库单号',
 	b.good_code '商品编号',b.cat_id ,'' as '一级分类','' as '二级分类','' as  '三级分类','' as '财务核算编号',
 	b.good_name '商品名称',a.send_num '出库数量','' as '出库金额',a.sendtime '本次出库时间',
     ''as '税率', b.apply_id as '业务部门',a.apply_name as '业务人员',cgder as '采购员','' as '成本裸价',
-	'' as '供应商名称','' as '出库退货数量',b.order_type")
+	'' as '供应商名称','' as '出库退货数量',b.order_type,b.addtime")
             ->where([["a.status", ">=", 2], ["a.is_del", "=", 0], ["b.order_type", "=", 1], ['a.sendtime', 'between', [$start, $end]]])
             ->cursor();
         $list = $tmp = [];
         $fund_code = Db::name('cat')->where(['is_del' => 0, 'level' => 3])->column('fund_code', 'id');
+        $date=strtotime("2023-04-15 00:00:00");
         foreach ($data as $value) {
-//			 $value['业务公司'] = Db::name("business")->where(["companyNo" => $value['业务公司']])->value('company', '');
+
             if (!isset($tmp[$value['业务部门']])) $tmp[$value['业务部门']] = get_company_name_by_uid($value['业务部门']);
-            $value['业务部门'] = $tmp[$value['业务部门']] ?? '';//Db::name("depart_user")->alias("a")->leftJoin("company_item ci", "a.itemid=ci.id")->where(["a.uid" => $value['业务部门'], "a.status" => 1, "a.is_del" => 0])->value('ci.name', '');
+            $value['业务部门'] = $tmp[$value['业务部门']] ?? '';
             $cat = made($value['cat_id']);
-            $value['财务核算编号'] = $fund_code[$value['cat_id']] ?? '';//Db::name("cat")->where(["id"=>$value['cat_id']])->value("fund_code",'');
+            $value['财务核算编号'] = $fund_code[$value['cat_id']] ?? '';
             unset($value['cat_id']);
             $value['一级分类'] = isset($cat[0]['name']) ? $cat[0]['name'] : "";
             $value['二级分类'] = isset($cat[1]['name']) ? $cat[1]['name'] : "";
@@ -936,95 +928,75 @@ class NowReportHandle extends Command
             } else {
                 $good = Db::name("good")->where(["spuCode" => $value['商品编号']])->find();
             }
-            $saleinfo = Db::name("sale_info")->where(["orderCode" => $value['销售单号']])->field("num,origin_price,num*origin_price as total_price")->select()
-                ->toArray();
-            if (empty($saleinfo)) {
-                $value['成本裸价'] = Db::name("order_out")->alias("a")
-                    ->leftJoin("order_send b", "a.outCode=b.outCode")
-                    ->leftJoin("purchease_order c", "b.cgdNo=c.cgdNo")
-                    ->where(["a.outCode" => $value['出库单号']])->value("c.good_price", '0');
-            } else {
-                $num = array_sum(array_column($saleinfo, "num"));
-                if ($num == 0) {
-                    $value['成本裸价'] = 0;
-                } else {
-                    $value['成本裸价'] = round(array_sum(array_column($saleinfo, "total_price")) / array_sum(array_column($saleinfo, "num")), 2);
-                }
+            if(strtotime($value['addtime'])<=$date){
+	            $saleinfo = Db::name("sale_info")->where(["orderCode" => $value['销售单号']])->field("num,origin_price,num*origin_price as total_price")->select()
+	                ->toArray();
+	            if (empty($saleinfo)) {
+	                $value['成本裸价'] = Db::name("order_out")->alias("a")
+	                    ->leftJoin("order_send b", "a.outCode=b.outCode")
+	                    ->leftJoin("purchease_order c", "b.cgdNo=c.cgdNo")
+	                    ->where(["a.outCode" => $value['出库单号']])->value("c.good_price", '0');
+	            } else {
+	                $num = array_sum(array_column($saleinfo, "num"));
+	                if ($num == 0) {
+	                    $value['成本裸价'] = 0;
+	                } else {
+	                    $value['成本裸价'] = round(array_sum(array_column($saleinfo, "total_price")) / array_sum(array_column($saleinfo, "num")), 2);
+	                }
+	            }
+            }else{
+        	    $mp= Db::name("child_bn")->where(["outCode"=> $value['出库单号']])->field("sum(origin_price * total_bn_num)/sum(total_bn_num) as total")->findOrEmpty();
+	            $value['成本裸价'] = $mp['total']??0;
             }
             $value['出库金额'] = $value['出库数量'] * $value['成本裸价'];
             $value['税率'] = $good['tax'] . "%";
             $value['供应商名称'] = $good['supplierName'];//Db::name("supplier")->where(["code"=>$good['supplierNo']])->value("name","");
             $value["出库退货数量"] = Db::name("order_back")->where(["outCode" => $value['出库单号']])->sum("return_num");
             unset($value['order_type']);
+            unset($value['addtime']);
             yield $list[] = $value;
         }
     }
-
-    /**每日库存记录
-     * @param string $start
-     * @param string $end
-     * @return \Generator
-     * @throws \think\db\exception\DataNotFoundException
-     * @throws \think\db\exception\DbException
-     * @throws \think\db\exception\ModelNotFoundException
-     */
-    private function EveryDayStock(string $start, string $end)
-    {
-        $list = Db::name("good_stock_info")
-            ->alias("a")
-            ->leftJoin("good_stock b", "a.stockid=b.id")
-            ->leftJoin("purchease_in c", "c.bnCode=a.bnCode")
-            ->leftJoin("purchease_order d", "c.cgdNo=d.cgdNo")
-            ->leftJoin("purchease e", "d.bkcode=e.bk_code")
-            ->leftJoin("good f", "b.spuCode=f.spuCode")
-            ->leftJoin("warehouse_info j", "b.wsm_code=j.wsm_code")
-            ->field("	e.companyName '业务公司',
-		e.apply_id '申请部门',
-		e.apply_name '申请人',
-		e.addtime '备库创建时间',
-		e.bk_code '备库单号',
-		a.bnCode 'BN编号' ,
-		a.addtime '入库时间',
-		c.cgdNo '采购单编号' ,
+	/**每日库存记录
+	* @param string $start
+	* @param string $end
+	 * @return \Generator
+	* @throws \think\db\exception\DataNotFoundException
+	* @throws \think\db\exception\DbException
+	* @throws \think\db\exception\ModelNotFoundException
+	 */
+    private function EveryDayStock(string $start,string $end){
+		$list = Db::name("good_stock")->alias("b")
+		->leftJoin("good_basic f","b.spuCode=f.spuCode")
+		->leftJoin("warehouse_info j","b.wsm_code=j.wsm_code")
+		->field("	f.companyName '业务公司',
 		f.spuCode '产品编号' ,
-		f.good_name '产品名称' ,
-		e.good_num '备库数量' ,
 		f.cat_id '一级分类' ,
+		f.good_name '产品名称' ,
 		f.cat_id,
-		'' as '财务核算编',
-		f.tax as '税率',
-		a.origin_price '成本单价',
+		'' as '财务核算编号',
+		f.tax/100 as '税率',
+		'' as '成本单价',
 		b.wait_in_stock '待入库数量',
 		b.wait_out_stock '待出库数量',
-		(b.wait_out_stock+b.usable_stock) '当前库存数量',
+		(b.wait_out_stock+b.usable_stock)  '当前库存数量',
 		b.usable_stock '可用库存数量',
-			a.total_num 'BN总数',
-		a.balance_num 'BN库存数',
-		a.used_num 'BN已使用数量',
-		DATEDIFF(NOW(),a.addtime) '库存天数',
-		f.supplierNo '采购员',
-		d.supplier_name '供应商名称',
-		j.`name` '仓库名称'")
-            ->where(["f.is_stock" => 1])
-            ->whereBetween("a.updatetime", [$start, $end])
-            ->cursor();
-        $fund_code = Db::name('cat')->where(['is_del' => 0, 'level' => 3])->column('fund_code', 'id');
-        $tmp = [];
-        foreach ($list as $value) {
-            if (!isset($tmp[$value['申请部门']])) $tmp[$value['申请部门']] = get_company_name_by_uid($value['申请部门']);
-            $value['申请部门'] = $tmp[$value['申请部门']] ?? '';//Db::name("depart_user")->alias("a")->leftJoin("company_item ci", "a.itemid=ci.id")->where(["a.uid" => $value['申请部门'], "a.status" => 1, "a.is_del" => 0])->value('ci.name', '');
-//			$value['业务公司'] = Db::name("business")->where(["companyNo" => $value['业务公司']])->value('company', '');
-            $cat = made($value['cat_id']);
-            $value['财务核算编号'] = $fund_code[$value['cat_id']] ?? '';//Db::name("cat")->where(["id"=>$value['cat_id']])->value("fund_code",'');
-            unset($value['cat_id']);
-            $value['一级分类'] = isset($cat[0]['name']) ? $cat[0]['name'] : "";
-            $supplier = Db::connect('mysql_sys')->name("supplier")->where(["code" => $value['采购员']])->field("person,name")->find();
-            if ($value['供应商名称'] == '') {
-                $value['供应商名称'] = $supplier['name'] ?? "";
-            }
-            $value['采购员'] = $supplier['person'] ?? "";
-            yield $value;
-        }
+		f.creater '采购员',
+		f.supplierName as '供应商名称',
+		j.`name` '仓库名称',
+		''as '最新备库时间'
+		")
+		->where(["f.is_stock"=>1])
+		->cursor();
+		foreach ($list as $value){
+			$cat = made($value['cat_id']);
+			 $value['财务核算编号'] = Db::name("cat")->where(["id"=>$value['cat_id']])->value("fund_code",'');
+			 unset($value['cat_id']);
+             $value['一级分类'] = isset($cat[0]['name']) ? $cat[0]['name'] : "";
+             $value['最新备库时间']= Db::name("purchease_order")->where(["spuCode"=>$value['产品编号'],"status"=>[2,3]])
+             ->order("id desc")->value("addtime",'');
+             yield $value;
+		}
     }
 
     /**获取商品成本列表

+ 19 - 9
app/command/SplitSale.php

@@ -64,9 +64,9 @@ class SplitSale extends Command
                     if ($sale['order_type'] == 3) {
                         //咨询相关
                         $good = Db::name('consult_bids')
-                            ->field('b.noble_metal,c.brand_name brand,d.unit,a.cost_desc,a.good_weight noble_weight,a.tax,a.delivery_day,0 lead_time')
+                            ->field('b.noble_metal,c.brand_name brand,d.unit,a.cost_desc,a.good_weight noble_weight,b.tax,a.delivery_day,0 lead_time')
                             ->alias('a')
-                            ->leftJoin('good_zixun b', 'b.is_del=0 AND b.spuCode=a.spuCode')
+                            ->rightJoin('good_zixun b', 'b.is_del=0 AND b.spuCode=a.spuCode')
                             ->leftJoin('brand c', 'c.id=a.brand_id')
                             ->leftJoin('unit d', 'd.id=a.unit_id')
                             ->where(['a.is_del' => 0, 'a.spuCode' => $sale['good_code']])
@@ -74,9 +74,9 @@ class SplitSale extends Command
                     } elseif ($sale['order_type'] == 4) {
                         //报备单
                         $good = Db::name('filing')
-                            ->field('a.noble_metal,c.brand_name brand,d.unit,a.cost_desc,a.gold_weight noble_weight,a.tax,a.delivery_day,0 lead_time')
+                            ->field('a.noble_metal,c.brand_name brand,d.unit,a.cost_desc,a.gold_weight noble_weight,b.tax,a.delivery_day,0 lead_time')
                             ->alias('a')
-                            ->leftJoin('good_zixun b', 'b.is_del=0 AND b.spuCode=a.spuCode')
+                            ->rightJoin('good_zixun b', 'b.is_del=0 AND b.spuCode=a.spuCode')
                             ->leftJoin('brand c', 'c.id=a.brand_id')
                             ->leftJoin('unit d', 'd.id=a.unit_id')
                             ->where(['a.is_del' => 0, 'a.orderCode' => $sale['good_code']])
@@ -90,7 +90,9 @@ class SplitSale extends Command
                             ->where(['b.is_del' => 0, 'b.spuCode' => $sale['good_code']])
                             ->findOrEmpty();
                     }
-
+					$sale['plan_price'] = Db::name("good_nake")->where(["spuCode"=>$sale['good_code'],"is_del"=>0])
+					->order("min_num asc")->value("nake_total",0);
+                    $sale['plan_total'] = round($sale['good_num'] * $sale['plan_price'],2);
                     //贵金属分类转换文本
                     $good['noble_metal'] = $this->noble_metal[$good['noble_metal'] ?? 0] ?? '';
 
@@ -130,9 +132,10 @@ class SplitSale extends Command
                         //计算渠道业务公司采购单单价。
                         $cgd_total = bcsub($cgd_total, bcmul($sale['total_price'] ?? 0, round($pay_rate['rate'] / 100, 4), 5), 5);
                         //此次销售单业务公司信息
-						$supplier = ['No' => $pay_rate['companyNo'], 'name' => $pay_rate['companyName']];
+						$supplier = ['No' => $pay_rate['companyNo'], 'name' => $pay_rate['companyName'],"pay_name"=>$pay_rate['pay_name']];
                         $this->_handle_sale_caixiao($sale, $orderCode, $cgdNo, $sale_total, $customer, $supplier);
 						$this->_handle_cgd_caixiao($cgd, $sale, $pay_rate, $cgdNo, $orderCode, $cgd_total);
+						$sale['origin_price'] = $sale['good_num'] > 0 ? bcdiv($cgd_total, $sale['good_num'], 5) : 0;
 						//下一个渠道公司/原业务公司的 客户信息
 						$customer= ['No' => $pay_rate['companyNo'], 'name' => $pay_rate['companyName']];
 	                    $sale_total =$cgd_total; //下一个渠道公司/原业务公司的 销售价未此次的采购单价
@@ -140,7 +143,7 @@ class SplitSale extends Command
 						if($keys == count($pay_rates)-1){
 							$orderCode = makeNo('QR');
 							$orderCode = substr($orderCode, 0, -2) . str_pad($this->i, 2, '0', STR_PAD_LEFT);
-							$supplier = ['No' => $sale['supplierNo'], 'name' => $sale['supplierName']];
+							$supplier = ['No' => $sale['supplierNo'], 'name' => $sale['supplierName'],"pay_name"=>$pay_rate['pay_name']];
 							$this->_handle_sale_caixiao($sale, $orderCode, $cgd['cgdNo'] ?? '', $sale_total, $customer, $supplier);
 						}
                         //把自己覆盖到上一个记录的供应商记录中
@@ -191,7 +194,11 @@ class SplitSale extends Command
     {
         $sale_price = $sale['good_num'] > 0 ? bcdiv($sale_total, $sale['good_num'], 5) : 0;
         $tmp_sale = [
-            'origin_price' => $sale['origin_price'] ?? 0,
+            'origin_price' =>round( $sale['origin_price'] ?? 0, 2),
+            'origin_plan_price' =>round( $sale['plan_price'] ?? 0, 2),
+	        'total_origin_price' => round($sale['origin_price']*$sale['good_num'],2),
+	        'total_origin_price_plan' => $sale['plan_total'],
+	        'pay_source' => $supplier['pay_name'],
             'sale_price' => round($sale_price, 2),
             'total_price' => $sale_total,
             'post_fee' => $sale['post_fee'] ?? 0,
@@ -249,7 +256,7 @@ class SplitSale extends Command
                 'other_orderNo' => $sale['other_orderNo'],
                 'paytime' => $sale['paytime'] ?? '',
                 'workNo' => $sale['workNo'] ?? '',
-                'poNo' => $sale['poNo'] ?? '',
+                'poNo' => $sale['platform_order'] ?? '',
                 'use_order' => $sale['use_order'],
                 'good_weight' => $sale['good_weight'] ?? 0,
                 'addtime' => $sale['addtime'],
@@ -262,7 +269,10 @@ class SplitSale extends Command
                 'lead_time' => $sale['lead_time'] ?? 0,
                 'depart' => isset($sale['apply_id']) ? get_company_name_by_uid($sale['apply_id']) : '',
                 'cgdNo' => $cgdNo,
+                'total_origin_price' => round($sale['origin_price']*$sale['good_num'],2),
+                'total_origin_price_plan' => $sale['plan_total'],
                 'pay_id' => $sale['pay_id'],
+                'pay_source' => $supplier['pay_name'],
                 'oldCode' => $sale['orderCode'],
             ]);
         }

+ 0 - 246
app/command/TempHandleBusinessData.php

@@ -1,246 +0,0 @@
-<?php
-
-namespace app\command;
-
-use app\admin\common\User;
-use think\console\Command;
-use think\console\Input;
-use think\console\Output;
-use think\Exception;
-use think\facade\Cache;
-use think\facade\Db;
-
-class TempHandleBusinessData extends Command
-{
-
-    private $key = 'temp_handle_business_data_lock_key';
-
-    protected function configure()
-    {
-        // 指令配置
-        $this->setName('TempHandleBusinessData')
-            ->setDescription('将业务公司数据同步到结算平台');
-    }
-
-    protected function execute(Input $input, Output $output)
-    {
-        $tmp = Cache::store('redis')->handler()->get($this->key);
-
-        if ($tmp) return '';//不执行
-
-        Cache::store('redis')->handler()->set($this->key, 1, 5 * 60);
-
-        try {
-
-            //临时同步供应商数据
-            $temp = Db::connect('mysql_sys')
-                ->name('supplier')
-                ->alias('a')
-                ->field('a.*,b.contactor,b.position,b.mobile')
-                ->leftJoin('supplier_contact b', 'b.code=a.code')
-                ->where('a.is_del', 0)
-                ->where('a.updatetime', '>=', date('Y-m-d H:i:s', time() -  60))
-                ->select()
-                ->toArray();
-
-            if (!empty($temp)) {
-                $a = Db::connect('mysql_cxinv')
-                    ->table('cfp_supplier_info')
-                    ->whereIn('code', array_column($temp, 'code'))
-                    ->column('id,updatetime', 'code');
-
-                $ins_supplier = [];
-                foreach ($temp as $val) {
-                    if (!isset($a[$val['code']])) {
-                        $ins_supplier[] = [
-                            'name' => $val['name'],
-                            'code' => $val['code'],
-                            'source' => $val['source'],
-                            'contector' => $val['contactor'],
-                            'post' => $val['position'],
-                            'type' => $val['type'],
-                            'nature' => $val['supplier_type'],
-                            'corporation' => $val['legaler'],
-                            'registertime' => $val['registertime'],
-                            'capital' => $val['capital'],
-                            'supplier_type' => $val['supplier_type'],
-                            'pay_method' => $val['pay_type'],
-                            'paydays' => $val['pay_day'],
-                            'mobile' => $val['mobile'],
-                            'address' => $val['addr'],
-                            'return_ticket' => $val['ticket_type'],
-                            'delivery' => $val['delivery_way'],
-                            'status' => $val['status'],
-                            'addtime' => $val['addtime'],
-                            'updatetime' => $val['updatetime'],
-                            'registercode' => $val['registercode'],
-                            'level' => $val['level'],
-                            'product_category' => $val['product_category'],
-                            'license_img' => $val['license_img'],
-                        ];
-                    }else{
-						if($val["updatetime"]==$a[$val['code']]['updatetime']) continue;
-                    	$supp_upda=[
-                    		'id' =>$a[$val['code']]['id'],
-                            'name' => $val['name'],
-                            'code' => $val['code'],
-                            'source' => $val['source'],
-                            'contector' => $val['contactor'],
-                            'post' => $val['position'],
-                            'type' => $val['type'],
-                            'nature' => $val['supplier_type'],
-                            'corporation' => $val['legaler'],
-                            'registertime' => $val['registertime'],
-                            'capital' => $val['capital'],
-                            'supplier_type' => $val['supplier_type'],
-                            'pay_method' => $val['pay_type'],
-                            'paydays' => $val['pay_day'],
-                            'mobile' => $val['mobile'],
-                            'address' => $val['addr'],
-                            'return_ticket' => $val['ticket_type'],
-                            'delivery' => $val['delivery_way'],
-                            'status' => $val['status'],
-                            'updatetime' => $val['updatetime'],
-                            'registercode' => $val['registercode'],
-                            'level' => $val['level'],
-                            'product_category' => $val['product_category'],
-                            'license_img' => $val['license_img'],
-                            //以下字段填空字符串,需要用户在结算平台补充值
-                            ];
-                    	$else = Db::connect('mysql_cxinv')
-                        ->table('cfp_supplier_info')
-                        ->save($supp_upda);
-                    	if($else ==false) throw new Exception("供应商公司{$val['code']}更新失败");
-                    }
-
-                }
-                if ($ins_supplier) Db::connect('mysql_cxinv')->table('cfp_supplier_info')->insertAll($ins_supplier);
-            }
-
-            $userCommon = new User();
-            $rs = $userCommon->handle('get_business_list_tmp', ['where' => [
-                ['a.updatetime', '>=', date('Y-m-d H:i:s', time() -60)],
-            ]]);
-
-//            $output->writeln('---***---');
-//            $output->writeln(json_encode($rs,JSON_UNESCAPED_UNICODE));
-//            $output->writeln('---***---');
-            if (isset($rs['code']) && $rs['code'] == 0 && !empty($rs['data'])) {
-
-                $all_code = array_column($rs['data'], 'companyNo');
-
-                //业务公司
-                $exists = Db::connect('mysql_cxinv')
-                    ->table('cfp_company_info')
-                    ->whereIn('companyNo', $all_code)
-                    ->column('id,updatetime', 'companyNo');
-
-                //供应商
-                $gys_exists = Db::connect('mysql_cxinv')
-                    ->table('cfp_supplier_info')
-                    ->whereIn('code', array_column($rs['data'], 'supplierNo'))
-                    ->column('*', 'code');
-
-                $insert = $gys_insert = $customer_ins = [];
-                foreach ($rs['data'] as $item) {
-                    if (!isset($exists[$item['companyNo']])) {
-                        $insert[] = [
-                            'companyNo' => $item['companyNo'],
-                            'company_name' => $item['company'],
-                            'company_address' => $item['inv_addr'],
-                            'company_license' => $item['inv_code'],
-                            'bank_name' => $item['inv_bank'],
-                            'bankNo' => $item['inv_bankNo'],
-                            'contector' => $item['inv_legaler'],
-                            'mobile' => $item['invoice_mobile'],
-                            'company_img' => $item['license_img'],
-                            'status' => 0,//默认禁用,需要在结算平台启用
-                            'is_del' => $item['is_del'],
-                            'addtime' => $item['addtime'],
-                            'updatetime' => $item['updatetime'],
-                            'invoice_title' => $item['invoice_title'],
-                            //以下字段填空字符串,需要用户在结算平台补充值
-                            'input_ticket' => '',
-                            'out_ticket' => '',
-                            'voider' => '',
-                            'payee' => '',
-                            'drawer' => '',
-                            'reviewer' => '',
-                            'ownerPlace' => '',
-                            'denomination' => '',
-                            'invoiceType' => '',
-                        ];
-
-                        $gys_insert[] = array_merge(
-                            $gys_exists[$item['supplierNo']],
-                            [
-                                'id' => null,
-                                'code' => $item['companyNo'],
-                                'type' => '企业',
-                                'addtime' => date('Y-m-d H:i:s'),
-                                'updatetime' => date('Y-m-d H:i:s'),
-                            ]
-                        );
-
-                        $customer_ins[]=[
-                            'companyNo'=>$item['companyNo'],
-                            'companyName'=>$item['company'],
-                            'parent'=>'业务公司',
-                            'addtime'=>date('Y-m-d H:i:s'),
-                            'updatetime'=>date('Y-m-d H:i:s'),
-                        ];
-                    }else{
-	                    if($item["updatetime"]==$exists[$item['companyNo']]['updatetime']) continue;
-                    	$upda=[
-                    		'id' => $exists[$item['companyNo']]['id'],
-		                    'company_name' => $item['company'],
-                            'company_address' => $item['inv_addr'],
-                            'company_license' => $item['inv_code'],
-                            'bank_name' => $item['inv_bank'],
-                            'bankNo' => $item['inv_bankNo'],
-                            'contector' => $item['inv_legaler'],
-                            'mobile' => $item['invoice_mobile'],
-                            'company_img' => $item['license_img'],
-                            'is_del' => $item['is_del'],
-                            'updatetime' => $item['updatetime'],
-		                    'invoice_title' => $item['invoice_title'],
-                            //以下字段填空字符串,需要用户在结算平台补充值
-                            ];
-                    	$else = Db::connect('mysql_cxinv')
-                        ->table('cfp_company_info')
-                        ->save($upda);
-                    	if($else ==false) throw new Exception("业务公司{$item['companyNo']}更新失败");
-                    }
-                }
-
-                if ($insert) {
-                    $res = Db::connect('mysql_cxinv')
-                        ->table('cfp_company_info')
-                        ->insertAll($insert);
-                    $output->writeln('同步业务公司数据成功,共' . $res);
-                }
-                if ($gys_insert) {
-                    Db::connect('mysql_cxinv')
-                        ->table('cfp_supplier_info')
-                        ->insertAll($gys_insert);
-                }
-                if ($customer_ins) {
-                    Db::connect('mysql_cxinv')
-                        ->table('cfp_customer_info')
-                        ->insertAll($customer_ins);
-                }
-
-            }
-
-            Cache::store('redis')->handler()->set($this->key, 0);
-
-        } catch (Exception $exception) {
-
-            Cache::store('redis')->handler()->set($this->key, 0);
-
-            $output->writeln('脚本出错,' . $exception->getMessage() . '|' . $exception->getFile() . ':' . $exception->getLine());
-
-        }
-    }
-
-}

+ 1 - 1
app/common.php

@@ -1189,7 +1189,7 @@ if (!function_exists('get_top_customer_org')) {
         $rs = $userCommon->handle('get_top_customer_org', ['itemid' => is_array($var) ? $var : [$var]]);
 
         if (is_array($var)) return $rs['data'];
-        else return $rs['data'][$var];
+        else return $rs['data'][$var]??[];
 
 //        $str = Db::name('customer_org1')
 //            ->field('id,name,pid,level')