shish 5 лет назад
Родитель
Сommit
98b517a633
2 измененных файлов с 18 добавлено и 11 удалено
  1. 10 2
      biz-ghs/order/services/OrderService.php
  2. 8 9
      biz-hd/purchase/classes/PurchaseClass.php

+ 10 - 2
biz-ghs/order/services/OrderService.php

@@ -63,9 +63,17 @@ class OrderService extends BaseService
         $sendType = $data['sendType'] ?? OrderClass::SEND_TYPE_MYSELF;
         $getType = $sendType == OrderClass::SEND_TYPE_NO ? PurchaseClass::GET_TYPE_SELF_GET : PurchaseClass::GET_TYPE_SEND;
 
-        //零售采购单
+        //零售采购单时没有传price字段,供应商下单时会传,供应商价格是可以修改的,改成userPrice以便后面使用
+        $currentProduct = $data['product'];
+        foreach($currentProduct as $currentKey => $currentItem){
+            if(isset($currentProduct[$currentKey]['price'])){
+                $currentProduct[$currentKey]['userPrice'] = $currentProduct[$currentKey]['price'];
+                unset($currentProduct[$currentKey]['price']);
+            }
+        }
+
         $purchaseData = [
-            'product' => $data['product'],
+            'product' => $currentProduct,
             'sendTime' => date("H:i:s"),
             'sendCost' => $data['sendCost'] ?: '0.00',
             'ghsShopAdminId' => $ghsShopAdminId,

+ 8 - 9
biz-hd/purchase/classes/PurchaseClass.php

@@ -88,12 +88,11 @@ class PurchaseClass extends BaseClass
 
             $itemNum = ProductClass::mergeItemNum($product['bigNum'], $product['smallNum'], $ratio);//采购数量
             $price = $productData[$productId]['price']; //卖的单价
-            $sellPrice = bcmul($itemNum, $price, 2); //采购总价
-            $totalPrice = $sellPrice;
-            //供应商改价
-            if (isset($product['userPrice']) && $product['userPrice'] > 0) {
-                $totalPrice = $product['userPrice'];
-            }
+            //每个花材总价(原价)
+            $productPrePrice = bcmul($itemNum, $price, 2); //采购总价
+            //供应商开单的每个花材总价,可能会改价
+            $productTotalPrice = isset($product['userPrice']) && $product['userPrice'] > 0 ? $product['userPrice'] : $productPrePrice;
+
             $itemInfo = [
                 'itemName' => $hdProductData[$hdProductId]['name'] ?? '',//花材名称
                 'itemCover' => $hdProductData[$hdProductId]['cover'] ?? '',//花材图片
@@ -113,12 +112,12 @@ class PurchaseClass extends BaseClass
             $productList[$key]['itemNum'] = $itemNum;
             $productList[$key]['price'] = $price;
             $productList[$key]['ratio'] = $ratio;
-            $productList[$key]['totalPrice'] = $totalPrice;
-            $productList[$key]['preTotalPrice'] = $sellPrice;
+            $productList[$key]['totalPrice'] = $productTotalPrice;
+            $productList[$key]['preTotalPrice'] = $productPrePrice;
             $productList[$key]['productId'] = $hdProductId;
             $productList[$key]['ghsProductId'] = $productId;
 
-            $prePrice = bcadd($prePrice, $sellPrice, 2);
+            $prePrice = bcadd($prePrice, $productTotalPrice, 2);
 
         }
         $data['itemPrice'] = $prePrice;