瀏覽代碼

销花宝支持创建跑腿订单

shizhongqi 10 月之前
父節點
當前提交
747a0d5c32

+ 22 - 33
app-ghs/controllers/IntraCityController.php

@@ -2,11 +2,12 @@
 
 namespace ghs\controllers;
 
-use bizHd\express\classes\ExpressOrderClass;
+use bizGhs\express\classes\GhsExpressOrderClass as ExpressOrderClass;
 use bizHd\express\models\ExpressOrder;
 use bizHd\order\classes\OrderGoodsClass;
 use bizHd\user\classes\UserClass;
-use bizHd\order\classes\OrderItemClass;
+use bizGhs\order\classes\OrderItemClass;
+use common\components\imgUtil;
 use hd\models\IntraCity\StoreFeeForm;
 // 以上类来自零售端
 
@@ -325,34 +326,20 @@ class IntraCityController extends BaseController
             }
 
             $sn = $order['orderSn'];
-            $itemInfoList = OrderItemClass::getListBySn($sn, 'id, name, cover, num');
+            $itemInfoList = OrderItemClass::getAllByCondition(['orderSn'=>$sn], null,'id, name, cover, num');
             $itemList = [];
             $orderType = 2; // 默认是 2。说明:1花束订单 2花材订单 3花束和花材都有
-            if (empty($itemInfoList)) {
-                $orderType = 1; // 花束订单
-                $goodsInfoList = OrderGoodsClass::getListBySn($sn);
-                $itemCount = 0;
-                foreach ($goodsInfoList as $itemInfo) {
-                    $itemList[] = [
-                        'item_name' => $itemInfo['name'],
-                        'item_pic_url' => $itemInfo['bigCover'],
-                        'count' => $itemInfo['num'],
-                    ];
-                    $itemCount += $itemInfo['num'];
-                }
-                $post['packageNum'] = $itemCount;
-            } else {
-                $itemCount = 0;
-                foreach ($itemInfoList as $itemInfo) {
-                    $itemList[] = [
-                        'item_name' => $itemInfo['name'],
-                        'item_pic_url' => $itemInfo['bigCover'],
-                        'count' => $itemInfo['num'],
-                    ];
-                    $itemCount += $itemInfo['num'];
-                }
-                $post['packageNum'] = $itemCount;
+
+            $itemCount = 0;
+            foreach ($itemInfoList as $itemInfo) {
+                $itemList[] = [
+                    'item_name' => $itemInfo['name'],
+                    'item_pic_url' => imgUtil::groupImg($itemInfo['cover']) . "?x-oss-process=image/resize,m_fill,h_130,w_130",
+                    'count' => $itemInfo['num'],
+                ];
+                $itemCount += $itemInfo['num'];
             }
+            $post['packageNum'] = $itemCount;
 
             $shopExt = MainClass::getById($this->mainId, false, 'id, wxStoreId');
             if (empty($shopExt)) {
@@ -372,7 +359,7 @@ class IntraCityController extends BaseController
             }
 
             // 通过 userId 获取 openid(小程序OpenId)
-            $user = UserClass::getById($order['userId'], false, 'id, miniOpenId');
+            $user = UserClass::getByCondition(['mobile'=>$order['customMobile']], false, false,'id, miniOpenId');
             if (empty($user)) {
                 Yii::error('获取用户openId出错');
                 util::fail('数据出错');
@@ -389,7 +376,7 @@ class IntraCityController extends BaseController
 
             //生成 store_order_id
             $storeOrderId = $orderId;
-            if ($post['isNew'] == 0) { // 如果不是首次用 $orderId 创建快递配送,则要生成新 store_order_id
+            if (true) { // 如果不是首次用 $orderId 创建快递配送,则要生成新 store_order_id
                 // store_order_id 门店订单编号, 即 orderId。如果是重新配送的第n次,订单编号的命名规则为:orderId_copy_n
                 $query = (new Query())
                     ->from('xhExpressOrder')
@@ -398,8 +385,10 @@ class IntraCityController extends BaseController
                 // $command = $query->createCommand();
                 // $sql = $command->sql;
                 $copyOrderCount = $query->count();
-                $copyOrderCount += 1;
-                $storeOrderId = $orderId . '_copy_' . $copyOrderCount;
+                if ($copyOrderCount >= 1) {
+                    $copyOrderCount += 1;
+                    $storeOrderId = $orderId . '_copy_' . $copyOrderCount;
+                }
             }
 
 
@@ -426,7 +415,7 @@ class IntraCityController extends BaseController
                 OrderClass::updateById($orderId, ['sendStatus' => 1]); // 更新订单状态为配送中
 
                 // 保存进 xhExpressOrder 表
-                $orderData = [
+                $data = [
                     'mainId' => $this->mainId,
                     'shopId' => $this->shopId,
                     'deliveryId' => isset($result['service_trans_id']) ? $result['service_trans_id'] : '',
@@ -439,7 +428,7 @@ class IntraCityController extends BaseController
                     'fetchCode' => isset($result['fetch_code']) ? $result['fetch_code'] : '',
                     'orderSeq' => isset($result['order_seq']) ? $result['order_seq'] : ''
                 ];
-                ExpressOrderClass::add($orderData);
+                ExpressOrderClass::add($data);
 
                 util::success(['fee' => $result['fee']], '订单创建成功');
             } else {

+ 0 - 10
app-hd/controllers/IntraCityController.php

@@ -463,16 +463,6 @@ class IntraCityController extends BaseController
                 'cargo' => $cargo
             ];
 
-            //开发环境只能使用沙箱 ssh
-            if (getenv('YII_ENV') != 'production') {
-                $orderData['use_sandbox'] = 1;
-                $orderData['user_name'] = '顺丰同城';
-                $orderData['user_phone'] = 13881979410;
-                $orderData['user_address'] = '北京市海淀区学清嘉创大厦A座15层';
-                $orderData['user_lng'] = '116.352954';
-                $orderData['user_lat'] = '40.014747';
-            }
-
             $result = IntraCityExpress::createOrder($orderData);
 
             if (isset($result['errcode']) && $result['errcode'] === 0) {

+ 9 - 0
biz-ghs/express/classes/ExpressOrderClass.php

@@ -0,0 +1,9 @@
+<?php
+namespace bizGhs\express\classes;
+
+use bizGhs\base\classes\BaseClass;
+
+class GhsExpressOrderClass extends BaseClass
+{
+    public static $baseFile = '\bizGhs\express\models\GhsExpressOrder';
+}

+ 13 - 0
biz-ghs/express/models/ExpressOrder.php

@@ -0,0 +1,13 @@
+<?php
+namespace bizGhs\express\models;
+use bizGhs\base\models\Base;
+
+class GhsExpressOrder extends Base
+{
+
+    public static function tableName()
+    {
+        return 'xhGhsExpressOrder';
+    }
+
+}

+ 0 - 4
biz-hd/express/classes/ExpressOrderClass.php

@@ -7,8 +7,4 @@ class ExpressOrderClass extends BaseClass
 {
     public static $baseFile = '\bizHd\express\models\ExpressOrder';
 
-    public static function getOrderList()
-    {
-
-    }
 }

+ 9 - 0
common/components/IntraCityExpress.php

@@ -291,6 +291,15 @@ class IntraCityExpress
         }
         
         $accessToken = self::getAccessToken($merchant, $ptStyle);
+        //开发环境只能使用沙箱 ssh
+        if (getenv('YII_ENV') != 'production') {
+            $orderData['use_sandbox'] = 1;
+            $orderData['user_name'] = '顺丰同城';
+            $orderData['user_phone'] = 13881979410;
+            $orderData['user_address'] = '北京市海淀区学清嘉创大厦A座15层';
+            $orderData['user_lng'] = '116.352954';
+            $orderData['user_lat'] = '40.014747';
+        }
         $data = $orderData;
         
         return self::sendRequest(self::API_ADD_ORDER, $data, $accessToken);

+ 7 - 0
common/components/dict/GhsExpressOrderDict.php

@@ -0,0 +1,7 @@
+<?php
+namespace common\components\dict;
+
+class GhsExpressOrderDict
+{
+
+}