wugg 2 years ago
parent
commit
c78bdd6315
3 changed files with 30 additions and 12 deletions
  1. 24 10
      app/admin/controller/Sale.php
  2. 5 1
      app/command/NowReportHandle.php
  3. 1 1
      app/command/handleYzOrderData.php

+ 24 - 10
app/admin/controller/Sale.php

@@ -3878,10 +3878,16 @@ class Sale extends Base
                 if (!in_array($own_roleid, config('app.wsm_cgder_role'))) throw new \think\Exception('库存品只能由库管人员操作');
             } elseif ($einfo['is_stock'] == 0 || $einfo['order_type'] == 3) {
                 //非库存品和采返商品只能由供应商负责人操作
+	            if($einfo['order_type'] == 3){
+		            $personid = Db::name('good_zixun')->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
+		                          ->where(['a.spuCode' => $einfo['good_code'], 'a.is_del' => 0])
+		                          ->value('personid');
+	            }else{
+		            $personid = Db::name('good')->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
+		                          ->where(['a.spuCode' => $einfo['good_code'], 'a.is_del' => 0])
+		                          ->value('personid');
+	            }
 
-                $personid = Db::name('good')->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
-                    ->where(['b.code' => $einfo['supplierNo'], 'is_del' => 0])
-                    ->value('personid');
                 if ($uid !=$personid) throw new \think\Exception('非库存品和采返商品只能由供应商负责人操作');
             }
 
@@ -4645,13 +4651,21 @@ class Sale extends Base
                         return app_show(1003, $value['outCode'] . '发货单只能由库管操作');
                     }
                 } else {
-                	$personid = Db::name('good')->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
-                    ->where(['a.spuCode' => $sale_infos[$order_out_infos[$value['outCode']]['orderCode']]['good_code'],'is_del' => 0])
-                    ->value('personid');
-                    if ($createrid != $personid) {
-                        Db::rollback();
-                        return app_show(1003, $value['outCode'] . '发货单只能由供应商负责人操作');
-                    }
+                	if($sale_infos[$order_out_infos[$value['outCode']]['orderCode']]['order_type']==3){
+		                $personid = Db::name('good_zixun')->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
+		                              ->where(['a.spuCode' => $sale_infos[$order_out_infos[$value['outCode']]['orderCode']]['good_code'], 'a.is_del' => 0])
+		                              ->value('personid');
+	                }else{
+		                $personid = Db::name('good')->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
+		                              ->where(['a.spuCode' =>
+			                              $sale_infos[$order_out_infos[$value['outCode']]['orderCode']]['good_code'],'a.is_del' => 0])
+		                              ->value('personid');
+	                }
+
+	                if ($createrid != $personid) {
+		                Db::rollback();
+		                return app_show(1003, $value['outCode'] . '发货单只能由供应商负责人操作');
+	                }
                 }
 
                 //【发货单】

+ 5 - 1
app/command/NowReportHandle.php

@@ -295,11 +295,15 @@ class NowReportHandle extends Command
             $value['一级分类'] = isset($top[0]['name']) ? $top[0]['name'] : '';
             $value['二级分类'] = isset($top[1]['name']) ? $top[1]['name'] : '';
             $value['三级分类'] = isset($top[2]['name']) ? $top[2]['name'] : '';
-            if($value['单位']==3||$value['单位']==4){
+            if($value['单位']==3){
                 $good= Db::name("good_zixun")->where(["spuCode"=>$value['产品编码']])->find();
             }else{
                 $good= Db::name("good_basic")->where(["spuCode"=>$value['产品编码']])->find();
             }
+            if($value['单位']==1&& $value['退货采购货款']!=0){
+            	$returninfo = Db::name("return_info")->where(["returnCode"=>$value['thCode']])->field("sum(origin_price * num) as cgd_total")->find();
+            	$value['退货采购货款'] = $returninfo['cgd_total']??0;
+            }
             $value['单位']=isset($good['good_unit'])?Db::name("unit")->where(["id"=>$good['good_unit']])->value('unit',''):"";
             $value['税点']=isset($good['tax'])?$good['tax'].'%':"";
             $value['平台类型']= Db::name("platform")->where(["id"=>$value['平台类型']])->value("platform_name",'');

+ 1 - 1
app/command/handleYzOrderData.php

@@ -242,7 +242,7 @@ class handleYzOrderData extends Command
                 $user = Config::get('app.uid_platform_youzan.' . $platform_yz_info['platform_id']);
                 $rm = isset($user['id']) ? $user['id'] : 0;
                 $ri = isset($user['nickname']) ? $user['nickname'] : 'youzan';
-
+				if($rm==0)throw new Exception('平台转单未找到对应的平台账户');
 
                 $supplier_temp_info = Db::name('supplier')
                     ->field('id,person,personid')