| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- <?php
- /**
- * User: admin
- * Date Time: 2022/7/24 22:03
- */
- namespace bizGhs\express\services;
- use bizGhs\express\classes\DeliveryOrderClass;
- use bizHd\base\services\BaseService;
- use common\components\util;
- use Yii;
- class DeliveryOrderServices extends BaseService
- {
- public static $baseFile = '\bizGhs\express\classes\DeliveryOrderClass';
- //新增即时配送订单
- public static function addOrder($sjId,$shopId,$expressId, $shopNo, $orderSn, $openId, $sender, $receiver, $cargo, $orderInfo, $shop)
- {
- $res = MiniExpressService::addOrder($expressId,$shopNo,$orderSn,$openId,$sender,$receiver,$cargo,$orderInfo,$shop);
- $expressData = MiniExpressService::getExpressInfo($expressId);
- $data = $res;
- $data['sjId'] = $sjId;
- $data['shopId'] = $shopId;
- $data['orderSn'] = $orderSn;
- $data['deliveryId'] = $expressData['deliveryId'];
- $data['deliveryName'] = $expressData['deliveryName'];
- $data['waybillId'] = $res['waybill_id'];
- $data['orderStatus'] = $res['order_status'];
- $data['finishCode'] = $res['finish_code'];
- $data['pickupCode'] = $res['pickup_code'];
- $data['dispatchDuration'] = $res['dispatch_duration'];
- $order = DeliveryOrderClass::addOrder($data);
- return $order;
- }
- //订单状态变更
- public static function updateOrder($shopId,$waybillId,$orderSn,array $data)
- {
- $orderStatus = $data['order_status'];
- $actionMsg = $data['action_msg']??'';
- $riderName = $data['rider_name']??'';
- $ridePhone = $data['ride_phone']??'';
- $expectedDeliveryTime = $data['expected_delivery_time']??false;
- $isPhoneEncrypted = $data['expected_delivery_time']??false;
- // 日志记录
- Yii::info("订单状态变更 : waybillId". $waybillId . " data= " . json_encode($data));
- if(!$orderStatus){
- util::fail("订单状态错误");
- }
- $orderStatusMap = array_keys(MiniExpressService::$orderStatusMap);
- if(!in_array($orderStatus,$orderStatusMap)){
- util::fail("订单状态异常");
- }
- $upData = [];
- $upData['orderStatus'] = $orderStatus;
- if($actionMsg){
- $upData['actionMsg'] = $actionMsg;
- }
- if($riderName){
- $upData['riderName'] = $riderName;
- }
- if($ridePhone){
- $upData['ridePhone'] = $ridePhone;
- }
- if($expectedDeliveryTime!==false){
- $upData['expectedDeliveryTime'] = $expectedDeliveryTime;
- }
- if($isPhoneEncrypted!==false){
- $upData['isPhoneEncrypted'] = $isPhoneEncrypted;
- }
- $where = [];
- $where['shopId'] = $shopId;
- $where['orderSn'] = $orderSn;
- $where['waybillId'] = $waybillId;
- $check = DeliveryOrderClass::getByCondition($where);
- if(!$check){
- util::fail("订单不存在");
- }
- $res = DeliveryOrderClass::getById($check['id'],$upData);
- return $res;
- }
- }
|