WIN-2308041133\Administrator 1 روز پیش
والد
کامیت
743b8d657f
1فایلهای تغییر یافته به همراه16 افزوده شده و 9 حذف شده
  1. 16 9
      app/api/controller/Shop.php

+ 16 - 9
app/api/controller/Shop.php

@@ -58,6 +58,7 @@ class Shop extends BaseController
         $totalMoney = 0;
         $payMoney = 0;
         $cartInfo = [];
+        $totalNum = 0;  // 总商品数量
 
         foreach ($cartList as $cart) {
             $product = Db::name('store_product')->where('id', $cart['product_id'])->find();
@@ -76,17 +77,23 @@ class Shop extends BaseController
                 }
             }
 
-            $productMoney = $price * $cart['cart_num'];
+            $cartNum = (int)($cart['cart_num'] ?? 1);
+            $productMoney = $price * $cartNum;
             $totalMoney += $productMoney;
+            $totalNum += $cartNum;  // 累加总数量
 
             $cartInfo[] = [
+                'cart_id' => $cart['id'],
                 'product_id' => $cart['product_id'],
-                'cart_num' => $cart['cart_num'],
-                'product_attr_unique' => $cart['product_attr_unique'],
-                'title' => $product['store_name'] ?? '',
-                'image' => $product['image'] ?? '',
-                'price' => $price,
-                'total_price' => $productMoney,
+                'product_name' => $product['store_name'] ?? '',
+                'cart_info' => json_encode([
+                    'cart_num' => $cartNum,
+                    'product_attr_unique' => $cart['product_attr_unique'] ?? '',
+                    'image' => $product['image'] ?? '',
+                    'price' => $price,
+                    'total_price' => $productMoney,
+                ], JSON_UNESCAPED_UNICODE),
+                'unique' => $cart['product_attr_unique'] ?? '',
             ];
         }
 
@@ -111,7 +118,7 @@ class Shop extends BaseController
 //                'district' => $address['district'],
                 'user_address' => $address['detail'],
                 'total_price' => $totalMoney,
-                'total_num' => count($cartInfo),
+                'total_num' => $totalNum,
                 'total_postage' => $postage,
                 'pay_price' => $payMoney,
                 'pay_postage' => $postage,
@@ -125,7 +132,7 @@ class Shop extends BaseController
             // 创建订单商品
             foreach ($cartInfo as &$item) {
                 $item['oid'] = $orderIdDb;
-                $item['time'] = time();
+                $item['order_id'] = $orderId;
             }
             Db::name('store_order_cart_info')->insertAll($cartInfo);