wugg il y a 1 an
Parent
commit
bff05e4a2b
3 fichiers modifiés avec 43 ajouts et 17 suppressions
  1. 3 3
      app/admin/listener/Cgdmake.php
  2. 21 14
      app/bbc/controller/Fill.php
  3. 19 0
      app/model/AccountCompany.php

+ 3 - 3
app/admin/listener/Cgdmake.php

@@ -9,7 +9,7 @@ use app\admin\model\GoodStock;use app\admin\model\OrderOut;use app\admin\model\O
 use app\admin\model\Sale;
 use app\admin\model\WarehouseInfo;
 use app\bbc\model\BbcFill;
-use app\admin\model\OrderNum;
+use app\admin\model\OrderNum;use app\model\AccountCompany;
 class Cgdmake
 {
     /**
@@ -54,7 +54,7 @@ class Cgdmake
 	            $wsm_code = $wsm['wsm_code'];
 	        }
          //判断该供应商是否开通了供应商账号
-        $from_tag=checkHasAccountBySupplierNos([$orderinfo->supNo]);
+        $from_tag=AccountCompany::IsOpenAccount($orderinfo->supNo);
          $info = (new BbcFill())->where(["fillCode"=>$orderinfo->other_orderNo])->findOrEmpty();
          if($info->isEmpty())return;
 		 if($info->fill_type==2){
@@ -109,7 +109,7 @@ class Cgdmake
             'updatetime' => date('Y-m-d H:i:s'),
             'good_createrid' => $origin['createrid'],
             'good_creater' => $origin['creater'],//商品创建人
-            'from_tag' => isset($from_tag[$data['supplierNo']]) ? 2 : 1,//来源标签:1采销(默认),2供应商端
+            'from_tag' => $from_tag==false ? 2 : 1,//来源标签:1采销(默认),2供应商端
         ];
         $cgd=PurcheaseOrder::create($cg);
        $event=[ 'order_type' => 'CGD',

+ 21 - 14
app/bbc/controller/Fill.php

@@ -82,9 +82,17 @@ class Fill extends Base
         ->findOrEmpty();
         if($goodinfo->isEmpty()) $this->error("商品信息未找到");
         if($goodinfo->exam_status!=3) $this->error("商品未上线");
+        $origin_price=0;
+		if($goodinfo->fill_type==2){
+        	 $origin =(new GoodNake())->where([['spuCode', '=', $goodinfo->spuCode], ['min_num', '<=', $param['good_num']],
+        	 ['is_del', '=', 0]])->order('min_num desc')->findOrEmpty();
+                if ($origin->isEmpty()) $this->error('未找到商品相关阶梯成本价格');
+                $origin_price = $origin->nake_total;
+        }
         $data=[
         	"fillCode"=>makeNo("BF"),
         	"total_price"=>bcmul($param['good_num'],$param['good_price'],4),
+        	"origin_price"=>$origin_price,
         	"apply_id"=>$this->uid,
         	"apply_name"=>$this->uname,
         	"status"=>2,
@@ -180,20 +188,19 @@ class Fill extends Base
         	$transNum+=$item['receipt_quantity'];
         	$orderArr[]=$temp;
         }
-        $origin_price=0;
         if($info->fill_type==1 && $good->usable_stock< $transNum) $this->error('商品可用库存不足');
-        if($info->fill_type==2){
-        	 $origin =(new GoodNake())->where([['spuCode', '=', $good->spuCode], ['min_num', '<=', $info->good_num],
-        	 ['is_del', '=', 0]])->order('min_num desc')->findOrEmpty();
-                if ($origin->isEmpty()) $this->error('未找到商品相关阶梯成本价格');
-                $origin_price = $origin->nake_total;
-        }
-        if($info->fill_type==3){
-        	 $origin =(new \app\admin\model\ConsultBids())->where([['spuCode', '=', $good->spuCode] ,['is_del', '=',
-        	 0]])->findOrEmpty();
-             if ($origin->isEmpty()) $this->error('未找到商品相关成本价格');
-              $origin_price = $origin->total_fee;
-        }
+//        if($info->fill_type==2){
+//        	 $origin =(new GoodNake())->where([['spuCode', '=', $good->spuCode], ['min_num', '<=', $info->good_num],
+//        	 ['is_del', '=', 0]])->order('min_num desc')->findOrEmpty();
+//                if ($origin->isEmpty()) $this->error('未找到商品相关阶梯成本价格');
+//                $origin_price = $origin->nake_total;
+//        }
+//        if($info->fill_type==3){
+//        	 $origin =(new \app\admin\model\ConsultBids())->where([['spuCode', '=', $good->spuCode] ,['is_del', '=',
+//        	 0]])->findOrEmpty();
+//             if ($origin->isEmpty()) $this->error('未找到商品相关成本价格');
+//              $origin_price = $origin->total_fee;
+//        }
         $orderInfo=[
         	    'orderCode' => $orderCode,
                 'apply_id' => $this->uid,
@@ -207,7 +214,7 @@ class Fill extends Base
                 'good_name' =>  $info->good_name,
                 'good_num' => $transNum,
                 'good_type' => 1,
-                'origin_price' => $origin_price,
+                'origin_price' => $info->origin_price,
                 'sale_price' => round($info->good_price,2),
                 'total_price' => round(bcmul($info->good_price, strval($transNum), 4), 2),
                 'post_fee' => 0,

+ 19 - 0
app/model/AccountCompany.php

@@ -0,0 +1,19 @@
+<?php
+declare (strict_types = 1);
+
+namespace app\model;
+
+use think\Model;
+
+/**
+ * @mixin \think\Model
+ */
+class AccountCompany extends Base
+{
+    public static function IsOpenAccount($supplierNo){
+      return    self::alias("a")->leftJoin("account b" ,"b.id=a.account_id")
+         ->where([ ['a.is_del', '=', 0],
+            ['a.status', '=', 1],
+            ['b.level', '=', 3]])->where(["companyNo"=>$supplierNo])->findOrEmpty()->isEmpty();
+    }
+}