|
@@ -50,6 +50,40 @@ class Order extends Base
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ #[PostMapping("del")]
|
|
|
|
|
+ public function delOrderData(Request $request): Response
|
|
|
|
|
+ {
|
|
|
|
|
+ try {
|
|
|
|
|
+ $param = $this->_valid([
|
|
|
|
|
+ "order.require" => trans("empty.require"),
|
|
|
|
|
+ "type.require" => trans("empty.require"),
|
|
|
|
|
+ ],$request->method());
|
|
|
|
|
+ if (!is_array($param)) return error($param);
|
|
|
|
|
+ $order = $this->model->where("order_sn",$param['order'])->with(['product','poi'])->findOrEmpty();
|
|
|
|
|
+ if ($order->isEmpty()) return errorTrans("empty.data");
|
|
|
|
|
+ if ($order['openid'] <> $request->user['openid']) return errorTrans("empty.data");
|
|
|
|
|
+ switch ($param['type']) {
|
|
|
|
|
+ case "del": // 删除订单
|
|
|
|
|
+ if ($order['status'] <> 5) return error("该订单不支持删除");
|
|
|
|
|
+ $state = $order->delete();
|
|
|
|
|
+ break;
|
|
|
|
|
+ case "cancel": // 取消订单
|
|
|
|
|
+ if ($order['status'] <> 0) return error("该订单不支持取消");
|
|
|
|
|
+ $order->status = 5;
|
|
|
|
|
+ $state = $order->save();
|
|
|
|
|
+ break;
|
|
|
|
|
+ default:
|
|
|
|
|
+ $state = false;
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (!$state) return errorTrans("error.data");
|
|
|
|
|
+ return successTrans("success.data");
|
|
|
|
|
+ } catch (\Throwable $throwable) {
|
|
|
|
|
+ return error($throwable->getMessage());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
#[PostMapping("refund")]
|
|
#[PostMapping("refund")]
|
|
|
public function orderRefund(Request $request): Response
|
|
public function orderRefund(Request $request): Response
|
|
|
{
|
|
{
|
|
@@ -96,8 +130,9 @@ class Order extends Base
|
|
|
"order.require" => trans("empty.require")
|
|
"order.require" => trans("empty.require")
|
|
|
],$request->method());
|
|
],$request->method());
|
|
|
if (!is_array($param)) return error($param);
|
|
if (!is_array($param)) return error($param);
|
|
|
- $order = $this->model->where("order_sn",$param['order'])->with(['product','poi'])->findOrEmpty();
|
|
|
|
|
|
|
+ $order = $this->model->where("out_order_no",$param['order'])->with(['product','poi'])->findOrEmpty();
|
|
|
if ($order->isEmpty()) return errorTrans("empty.data");
|
|
if ($order->isEmpty()) return errorTrans("empty.data");
|
|
|
|
|
+ $order['end_time'] = timeDiff(strtotime("+30 minutes",strtotime($order['create_at'])),time());
|
|
|
return $this->encode("ok",$order->toArray());
|
|
return $this->encode("ok",$order->toArray());
|
|
|
} catch (\Throwable $th) {
|
|
} catch (\Throwable $th) {
|
|
|
return error($th->getMessage());
|
|
return error($th->getMessage());
|