Преглед изворни кода

商品列表增加大小单位的价格

林琦海 пре 5 година
родитељ
комит
a4897c8964
2 измењених фајлова са 29 додато и 18 уклоњено
  1. 4 7
      biz-ghs/order/classes/PurchaseOrderClass.php
  2. 25 11
      biz-ghs/product/classes/ProductClass.php

+ 4 - 7
biz-ghs/order/classes/PurchaseOrderClass.php

@@ -33,7 +33,7 @@ class PurchaseOrderClass extends BaseClass
         $data['status'] = self::PURCHASE_ORDER_STATUS_COMPLETE;
         $orderSn = time();
         $data['orderSn'] = orderSn::getGhsPurchaseSn();
-        $ghsItemInfo = $data['itemInfo']; // [{itemId:0,num:0,smallNum:0,productId:1.0}]
+        $ghsItemInfo = $data['itemInfo']; // [{itemId:0,bigNum:0,smallNum:0,productId:1.0,itemPrice:1}]
         //计算出总共多少扎,多少支
         $bigNum = 0; //总共多少扎
         $smallNum = 0; //总共多少支
@@ -139,10 +139,7 @@ class PurchaseOrderClass extends BaseClass
         return $data;
     }
 
-
-
-
-
+    //获取订单详情信息 lqh 2021.1.20
     public static function getOrderDetail($orderSn,$shopId)
     {
         $where = [
@@ -167,8 +164,8 @@ class PurchaseOrderClass extends BaseClass
             }
         }
         $gysInfo = SupplierClass::getById($orderData['supplierId']);
-        $orderData['upName'] = $gysInfo['upName'];
-        $orderData['upCover'] = $gysInfo['upCover'];
+        $orderData['upName'] = $gysInfo['upName']??'';
+        $orderData['upCover'] = $gysInfo['upCover']??'';
         $orderData['itemInfo'] = $itemData;
         return $orderData;
     }

+ 25 - 11
biz-ghs/product/classes/ProductClass.php

@@ -33,21 +33,30 @@ class ProductClass extends BaseClass
 		if (!empty($data)) {
 			$data = array_column($data, NULL, 'id');
 			foreach ($list as $k => $v) {
-				$coverInfo = business::formatOrderGoodsCover($data[$v['itemId']]);
+				$cover = self::groupImg($data[$v['itemId']]['cover']);
 				$unitNum = $data[$v['itemId']]['unitNum']??0;
 				$stockInfo = self::formatStock($v['stock'], $unitNum);
-				$list[$k]['cover'] = $coverInfo['coverUrl'];
-				$list[$k]['num'] = $stockInfo['num'];
+				$list[$k]['cover'] = $cover;
+				$list[$k]['bigNum'] = $stockInfo['bigNum'];
 				$list[$k]['smallNum'] = $stockInfo['smallNum'];
 				$list[$k]['itemName'] = $data[$v['itemId']]['name']??'';
-				$list[$k]['unitCount'] = $unitNum ? 2 : 1;
-				$list[$k]['unit'] = xhItemService::getUnitName($data[$v['itemId']]['bigUnit']);
+				$list[$k]['ratio'] = $unitNum??0;
+				//换算大小单位对应价格
+                $list[$k]['bigPrice'] = $v['price']; //大单位价格就是product表存的价格
+                $smallPrice = 0;
+                if($unitNum){
+                    $smallPrice =  bcdiv($v['price'],$unitNum,2);
+                }
+                $list[$k]['smallPrice'] =$smallPrice;
+				$list[$k]['bigUnit'] = xhItemService::getUnitName($data[$v['itemId']]['bigUnit']);
 				$list[$k]['smallUnit'] = xhItemService::getUnitName($data[$v['itemId']]['smallUnit']);
 			}
 		}
 		return $list;
 	}
 
+
+
 	//根据花材ID,库存=》  计算出多少扎,多少支
 	public static function formatStockByItemId($itemId, $stock)
 	{
@@ -58,15 +67,15 @@ class ProductClass extends BaseClass
 	//花材的库存转换: 库存是小数,根据各个花材的unitNum, 计算出多少扎,多少支
 	public static function formatStock($stock, $unitNum)
 	{
-		$stockBundle = floor($stock); // 扎
+		$bigNum = floor($stock); // 扎
 		$stockArr = explode('.', $stock);
-		$stockPiece = 0; //支
+		$smallNum = 0; //支
 		if (count($stockArr) === 2) {
-			$stockPiece = bcdiv(bcmul($stockArr[1], $unitNum, 1), 100);
+            $smallNum = bcdiv(bcmul($stockArr[1], $unitNum, 1), 100);
 		}
 		return [
-			'num' => $stockBundle,
-			'smallNum' => (int)$stockPiece,
+			'bigNum' => $bigNum,
+			'smallNum' => (int)$smallNum,
 		];
 	}
 
@@ -195,7 +204,6 @@ class ProductClass extends BaseClass
 	}
 
 	//计算价格
-
 	/**
 	 * @param $productId  门店下的花材ID(xhGhsItemInfo 主键ID)
 	 * @param $itemNumBundle  花材数量(扎)
@@ -225,6 +233,12 @@ class ProductClass extends BaseClass
 		return $total;
 	}
 
+	//获取小单位的价格
+    public static function priceConvert($unitNum,$price)
+    {
+
+    }
+
 	//根据门店ID, 平台花材ID, 获取门店的花材ID
 	public static function getGhsProductId($shopId, $itemId)
 	{