Răsfoiți Sursa

配送信息

shish 5 ani în urmă
părinte
comite
c379169906

+ 0 - 4
biz-ghs/order/classes/OrderExpressClass.php

@@ -31,10 +31,6 @@ class OrderExpressClass extends BaseClass
         if (empty($info)) {
             return [];
         }
-        $sideId = $info['sideId'];
-        $sideData = self::$side;
-        $sideName = isset($sideData[$sideId]) ? $sideData[$sideId] : '';
-        $info['sideName'] = $sideName;
         return $info;
     }
 

+ 156 - 153
biz-ghs/order/services/OrderSendService.php

@@ -10,157 +10,160 @@ use Yii;
 
 class OrderSendService extends BaseService
 {
-	
-	public static $baseFile = '\bizGhs\order\classes\OrderSendClass';
-	
-	
-	//制单 shish 2019.12.17
-	public static function printOrder($data)
-	{
-		$id = $data['id'];
-		$orderSn = $data['orderSn'];
-		$option = $data['option'];
-		$actionRelation = OrderSendClass::ACTION_RELATION;
-		$printOrderId = $actionRelation['printOrder'];
-		$currentId = OrderSendClass::toDoActionId($orderSn);
-		if ($printOrderId != $currentId) {
-			util::fail('当前流程无法操作');
-		}
-		//1有配送单 2 填单制单
-		if (in_array($option, [1, 2]) == false) {
-			util::fail('操作无效');
-		}
-		$time = time();
-		OrderSendClass::updateByCondition(['orderId' => $id, 'actionId' => $printOrderId], ['option' => $option, 'finishTime' => $time]);
-		$hasDeliver = 0;
-		if ($option == 1) {
-			//有纸质配送单
-			$hasDeliver = 1;
-		}
-		if ($option == 2) {
-			//填单制单
-			$hasDeliver = 2;
-		}
-		OrderClass::updateById($id, ['status' => OrderClass::ORDER_STATUS_UN_SEND, 'currentFlow' => 2, 'printStatus' => 1, 'hasDeliver' => $hasDeliver]);
-		
-		//进入发货流程
-		$deliverId = $actionRelation['deliver'];
-		$data = ['actionId' => $deliverId, 'orderId' => $id, 'finishTime' => 0, 'addTime' => $time, 'inTurn' => $deliverId];
-		OrderSendClass::add($data);
-		$actionList = OrderSendClass::ACTION_LIST;
-		$data['actionSign'] = isset($actionList[$deliverId]['sign']) ? $actionList[$deliverId]['sign'] : '';
-		util::success(['nextAction' => $data]);
-	}
-	
-	//发货 shish 2019.12.17
-	public static function deliver($data)
-	{
-		$id = $data['id'];
-		$orderSn = $data['orderSn'];
-		$option = $data['option'];
-		$actionRelation = OrderSendClass::ACTION_RELATION;
-		$deliverId = $actionRelation['deliver'];
-		$currentId = OrderSendClass::toDoActionId($orderSn);
-		if ($deliverId != $currentId) {
-			util::fail('当前流程无法操作');
-		}
-		$time = time();
-		
-		$sendType = isset($data['sendType']) ? $data['sendType'] : OrderClass::SEND_TYPE_UNKNOWN;
-		
-		$sendInfo = [];
-		if ($sendType == OrderClass::SEND_TYPE_THIRD) {
-			
-			util::fail('即将开通...');
-			
-			$side = $data['expressId'];
-			$sendTime = strtotime(date("Y-m-d") . ' ' . $data['sendTime']);
-			if ($sendTime < ($time + 20 * 60)) {
-				util::fail('请选择20分钟之后的时间');
-			}
-			$sendInfo = [
-				'sideId' => $side,
-				'sendTime' => $sendTime,
-				'addTime' => $time,
-				'sendTip' => 0,
-				'merchantId' => $data['merchantId'],
-				'orderId' => $id,
-				'cost' => 6,
-				'tip' => 0,
-				'distance' => 7,
-				'sendTime' => $sendTime,
-				'side' => $side,
-			];
-			OrderExpressClass::add($sendInfo);
-		}
-		
-		OrderSendClass::updateByCondition(['orderId' => $id, 'actionId' => $deliverId], ['option' => $option, 'finishTime' => $time]);
-		OrderClass::updateById($id, ['status' => OrderClass::ORDER_STATUS_SENDING, 'currentFlow' => 3, 'sendType' => $sendType]);
-		
-		//待发货订单-1,配送中订单+1
-		$merchantId = $data['merchantId'];
-		$asset = MerchantAssetClass::getByMerchantId($merchantId, true);
-		$asset->unSendOrder -= 1;
-		$asset->sendingOrder += 1;
-		$asset->save();
-		
-		//进入送达流程
-		$reachId = $actionRelation['reach'];
-		$data = ['actionId' => $reachId, 'orderId' => $id, 'finishTime' => 0, 'addTime' => $time, 'inTurn' => $reachId];
-		OrderSendClass::add($data);
-		$actionList = OrderSendClass::ACTION_LIST;
-		$data['actionSign'] = isset($actionList[$reachId]['sign']) ? $actionList[$reachId]['sign'] : '';
-		util::success(['nextAction' => $data, 'sendInfo' => $sendInfo]);
-	}
-	
-	//送达 shish 2019.12.17
-	public static function reach($order, $data)
-	{
-		$id = $order['id'];
-		$orderSn = $data['orderSn'];
-		$actionRelation = OrderSendClass::ACTION_RELATION;
-		$reachId = $actionRelation['reach'];
-		$currentId = OrderSendClass::toDoActionId($orderSn);
-		if ($reachId != $currentId) {
-			util::fail('当前流程无法操作');
-		}
-		OrderSendClass::reach($order);
-		OrderClass::complete($order, OrderClass::ORDER_TOTAL_FLOW);
-		//配送中订单-1,完成订单+1
-		$merchantId = $order['merchantId'];
-		$asset = MerchantAssetClass::getByMerchantId($merchantId, true);
-		$asset->sendingOrder -= 1;
-		$asset->finishOrder += 1;
-		$asset->save();
-		util::complete();
-	}
-	
-	//发货详情 shish 2019.12.15
-	public static function sendList($order)
-	{
-		$orderId = $order['id'];
-		$orderSn = $order['orderSn'];
-		$list = OrderSendClass::getAllByCondition(['orderSn' => $orderSn], 'inTurn DESC', '*');
-		if (empty($list)) {
-			return [];
-		}
-		$actionList = OrderSendClass::ACTION_LIST;
-		$actionRelation = OrderSendClass::ACTION_RELATION;
-		foreach ($list as $key => $val) {
-			$currentId = $val['actionId'];
-			$list[$key]['actionName'] = $actionList[$currentId]['name'] ?? '';
-			$list[$key]['actionSign'] = $actionList[$currentId]['sign'] ?? '';
-			
-			//发货需要显示的信息
-			if ($currentId == $actionRelation['deliver']) {
-				$list[$key]['sendInfo'] = $order['sendType'] == OrderClass::SEND_TYPE_THIRD ? OrderExpressClass::getExpress($orderId) : [];
-			}
-			//送达需要显示的信息
-			if ($currentId == $actionRelation['reach']) {
-			
-			}
-		}
-		return $list;
-	}
-	
+
+    public static $baseFile = '\bizGhs\order\classes\OrderSendClass';
+
+
+    //制单 shish 2019.12.17
+    public static function printOrder($data)
+    {
+        $id = $data['id'];
+        $orderSn = $data['orderSn'];
+        $option = $data['option'];
+        $actionRelation = OrderSendClass::ACTION_RELATION;
+        $printOrderId = $actionRelation['printOrder'];
+        $currentId = OrderSendClass::toDoActionId($orderSn);
+        if ($printOrderId != $currentId) {
+            util::fail('当前流程无法操作');
+        }
+        //1有配送单 2 填单制单
+        if (in_array($option, [1, 2]) == false) {
+            util::fail('操作无效');
+        }
+        $time = time();
+        OrderSendClass::updateByCondition(['orderId' => $id, 'actionId' => $printOrderId], ['option' => $option, 'finishTime' => $time]);
+        $hasDeliver = 0;
+        if ($option == 1) {
+            //有纸质配送单
+            $hasDeliver = 1;
+        }
+        if ($option == 2) {
+            //填单制单
+            $hasDeliver = 2;
+        }
+        OrderClass::updateById($id, ['status' => OrderClass::ORDER_STATUS_UN_SEND, 'currentFlow' => 2, 'printStatus' => 1, 'hasDeliver' => $hasDeliver]);
+
+        //进入发货流程
+        $deliverId = $actionRelation['deliver'];
+        $data = ['actionId' => $deliverId, 'orderId' => $id, 'finishTime' => 0, 'addTime' => $time, 'inTurn' => $deliverId];
+        OrderSendClass::add($data);
+        $actionList = OrderSendClass::ACTION_LIST;
+        $data['actionSign'] = isset($actionList[$deliverId]['sign']) ? $actionList[$deliverId]['sign'] : '';
+        util::success(['nextAction' => $data]);
+    }
+
+    //发货 shish 2019.12.17
+    public static function deliver($data)
+    {
+        $id = $data['id'];
+        $orderSn = $data['orderSn'];
+        $option = $data['option'];
+        $actionRelation = OrderSendClass::ACTION_RELATION;
+        $deliverId = $actionRelation['deliver'];
+        $currentId = OrderSendClass::toDoActionId($orderSn);
+        if ($deliverId != $currentId) {
+            util::fail('当前流程无法操作');
+        }
+        $time = time();
+
+        $sendType = isset($data['sendType']) ? $data['sendType'] : OrderClass::SEND_TYPE_UNKNOWN;
+
+        $sendInfo = [];
+        if ($sendType == OrderClass::SEND_TYPE_THIRD) {
+
+            util::fail('即将开通...');
+
+            $side = $data['expressId'];
+            $sendTime = strtotime(date("Y-m-d") . ' ' . $data['sendTime']);
+            if ($sendTime < ($time + 20 * 60)) {
+                util::fail('请选择20分钟之后的时间');
+            }
+            $sendInfo = [
+                'sideId' => $side,
+                'sendTime' => $sendTime,
+                'addTime' => $time,
+                'sendTip' => 0,
+                'merchantId' => $data['merchantId'],
+                'orderId' => $id,
+                'cost' => 6,
+                'tip' => 0,
+                'distance' => 7,
+                'sendTime' => $sendTime,
+                'side' => $side,
+            ];
+            OrderExpressClass::add($sendInfo);
+        }
+
+        OrderSendClass::updateByCondition(['orderId' => $id, 'actionId' => $deliverId], ['option' => $option, 'finishTime' => $time]);
+        OrderClass::updateById($id, ['status' => OrderClass::ORDER_STATUS_SENDING, 'currentFlow' => 3, 'sendType' => $sendType]);
+
+        //待发货订单-1,配送中订单+1
+        $merchantId = $data['merchantId'];
+        $asset = MerchantAssetClass::getByMerchantId($merchantId, true);
+        $asset->unSendOrder -= 1;
+        $asset->sendingOrder += 1;
+        $asset->save();
+
+        //进入送达流程
+        $reachId = $actionRelation['reach'];
+        $data = ['actionId' => $reachId, 'orderId' => $id, 'finishTime' => 0, 'addTime' => $time, 'inTurn' => $reachId];
+        OrderSendClass::add($data);
+        $actionList = OrderSendClass::ACTION_LIST;
+        $data['actionSign'] = isset($actionList[$reachId]['sign']) ? $actionList[$reachId]['sign'] : '';
+        util::success(['nextAction' => $data, 'sendInfo' => $sendInfo]);
+    }
+
+    //送达 shish 2019.12.17
+    public static function reach($order, $data)
+    {
+        $id = $order['id'];
+        $orderSn = $data['orderSn'];
+        $actionRelation = OrderSendClass::ACTION_RELATION;
+        $reachId = $actionRelation['reach'];
+        $currentId = OrderSendClass::toDoActionId($orderSn);
+        if ($reachId != $currentId) {
+            util::fail('当前流程无法操作');
+        }
+        OrderSendClass::reach($order);
+        OrderClass::complete($order, OrderClass::ORDER_TOTAL_FLOW);
+        //配送中订单-1,完成订单+1
+        $merchantId = $order['merchantId'];
+        $asset = MerchantAssetClass::getByMerchantId($merchantId, true);
+        $asset->sendingOrder -= 1;
+        $asset->finishOrder += 1;
+        $asset->save();
+        util::complete();
+    }
+
+    //发货详情 shish 2019.12.15
+    public static function sendList($order)
+    {
+        $orderId = $order['id'];
+        $orderSn = $order['orderSn'];
+        $list = OrderSendClass::getAllByCondition(['orderSn' => $orderSn], 'inTurn DESC', '*');
+        if (empty($list)) {
+            return [];
+        }
+        $actionList = OrderSendClass::ACTION_LIST;
+        $actionRelation = OrderSendClass::ACTION_RELATION;
+        foreach ($list as $key => $val) {
+            $currentId = $val['actionId'];
+            $list[$key]['actionName'] = $actionList[$currentId]['name'] ?? '';
+            $list[$key]['actionSign'] = $actionList[$currentId]['sign'] ?? '';
+
+            //发货需要显示的信息
+            if ($currentId == $actionRelation['deliver']) {
+                $list[$key]['sendInfo'] = [];
+                if ($order['sendType'] == OrderClass::SEND_TYPE_THIRD) {
+                    $list[$key]['sendInfo'] = OrderExpressClass::getExpress($orderId);
+                }
+            }
+            //送达需要显示的信息
+            if ($currentId == $actionRelation['reach']) {
+
+            }
+        }
+        return $list;
+    }
+
 }