|
|
@@ -13,7 +13,8 @@ use app\common\{enum\GoodsEnum,
|
|
|
model\third\ThirdGoods,
|
|
|
model\third\ThirdOrders,
|
|
|
model\user\User,
|
|
|
- model\works\ServiceWork};
|
|
|
+ model\works\ServiceWork,
|
|
|
+ model\works\ServiceWorkLog};
|
|
|
use think\facade\Db;
|
|
|
use app\common\model\service_area\ServiceArea;
|
|
|
|
|
|
@@ -399,4 +400,40 @@ class ThirdOrderLogic extends BaseLogic
|
|
|
return http_request($url,http_build_query($data));
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 取消预订
|
|
|
+ * @param array
|
|
|
+ * $order
|
|
|
+ * @return bool
|
|
|
+ */
|
|
|
+ public static function cancelOrderHandle(array $order)
|
|
|
+ {
|
|
|
+ $message = json_decode($order['message'], true);
|
|
|
+ $thirdOrders = ThirdOrders::where('orderId',$message['orderId'])->findOrEmpty();
|
|
|
+ Db::startTrans();
|
|
|
+ try {
|
|
|
+ // 04-11-12 不做任何限制强制取消,已支付的费用给工程师余额
|
|
|
+ $serviceWorkInfo = ServiceWork::find($thirdOrders->work_id);
|
|
|
+
|
|
|
+ ServiceWork::where('id', $thirdOrders->work_id)->update([
|
|
|
+ //'work_status' => 9,
|
|
|
+ 'service_status' => 4,
|
|
|
+ 'remark' => '美团取消预约订单'
|
|
|
+ ]);
|
|
|
+
|
|
|
+ ServiceWorkLog::create([
|
|
|
+ 'work_id' => $thirdOrders->work_id,
|
|
|
+ 'master_worker_id' => $serviceWorkInfo['master_worker_id'],
|
|
|
+ 'opera_log' => "工单:{$serviceWorkInfo['work_sn']}已取消"
|
|
|
+ ]);
|
|
|
+
|
|
|
+ Db::commit();
|
|
|
+ return true;
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ Db::rollback();
|
|
|
+ self::setError($e->getMessage());
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|