$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, 'orderSn' => $orderSn]; // OrderSendClass::add($data); // $actionList = OrderSendClass::ACTION_LIST; // $data['actionSign'] = isset($actionList[$deliverId]['sign']) ? $actionList[$deliverId]['sign'] : ''; // util::success(['nextAction' => $data]); // } // // //发货 ssh 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, // 'sjId' => $data['sjId'], // '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 // $shopId = $data['shopId']; // $shop = Shop::findBySql('select * from ' . Shop::tableName() . ' where id = :id for update', ['id' => $shopId])->one(); // if (empty($shop)) { // util::fail('没有找到门店74'); // } // $shop->unSendOrder -= 1; // $shop->sendingOrder += 1; // $shop->save(); // // //显示送达流程 // $reachId = $actionRelation['reach']; // $data = ['actionId' => $reachId, 'orderId' => $id, 'finishTime' => 0, 'addTime' => $time, 'inTurn' => $reachId, 'orderSn' => $orderSn]; // OrderSendClass::add($data); // $actionList = OrderSendClass::ACTION_LIST; // $data['actionSign'] = isset($actionList[$reachId]['sign']) ? $actionList[$reachId]['sign'] : ''; // util::success(['nextAction' => $data, 'sendInfo' => $sendInfo]); // } // // //送达 ssh 2019.12.17 // public static function reach($order) // { // $orderSn = $order['orderSn']; // $actionRelation = OrderSendClass::ACTION_RELATION; // $reachId = $actionRelation['reach']; // $currentId = OrderSendClass::toDoActionId($orderSn); // if ($reachId != $currentId) { // util::fail('当前流程无法操作'); // } // OrderSendClass::reach($order); // // //送达,订单完成。【现在有三个地方有订单完成操作】 // $id = $order['id']; // $currentOrder = self::getById($id, true); // $shopId = $order['shopId'] ?? 0; // $shop = Shop::findBySql('select * from ' . Shop::tableName() . ' where id = :id for update', ['id' => $shopId])->one(); // if (empty($shop)) { // util::fail('没有找到门店75'); // } // OrderClass::complete($currentOrder, $shop, OrderClass::TOTAL_FLOW); // } //发货详情 ssh 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; } }