|
@@ -6,6 +6,7 @@ use app\extra\basic\Base;
|
|
|
use app\extra\dyLife\data\OrderData;
|
|
use app\extra\dyLife\data\OrderData;
|
|
|
use app\middleware\AuthMiddleware;
|
|
use app\middleware\AuthMiddleware;
|
|
|
use app\model\saas\SaasOrder;
|
|
use app\model\saas\SaasOrder;
|
|
|
|
|
+use app\model\saas\SaasOrderAddress;
|
|
|
use app\model\saas\SaasStore;
|
|
use app\model\saas\SaasStore;
|
|
|
use app\service\saas\GoodsService;
|
|
use app\service\saas\GoodsService;
|
|
|
use app\service\saas\OrderService;
|
|
use app\service\saas\OrderService;
|
|
@@ -148,4 +149,44 @@ class Order extends Base
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+ #[PostMapping('address')]
|
|
|
|
|
+ public function setOrderAddress(Request $request): Response
|
|
|
|
|
+ {
|
|
|
|
|
+ try {
|
|
|
|
|
+ $param = $this->_valid([
|
|
|
|
|
+ "nickname.require" => trans("empty.require"),
|
|
|
|
|
+ "mobile.require" => trans("empty.require"),
|
|
|
|
|
+ "mobile.mobile" => trans("error.mobile"),
|
|
|
|
|
+ "city.require" => trans("empty.require"),
|
|
|
|
|
+ "address.require" => trans("empty.require"),
|
|
|
|
|
+ "cityLabel.require" => trans("empty.require"),
|
|
|
|
|
+ "order.require" => trans("empty.require"),
|
|
|
|
|
+ ],$request->method());
|
|
|
|
|
+ if (!is_array($param)) return error($param);
|
|
|
|
|
+ $order = (new SaasOrder)->where("out_order_no",$param["order"])->with(['poi'])->findOrEmpty();
|
|
|
|
|
+ if ($order->isEmpty()) return error("关联订单错误");
|
|
|
|
|
+ if ($order['status'] <> 1) return error("关联订单错误");
|
|
|
|
|
+ $address = (new SaasOrderAddress)->where(['openid' => $order['openid'],'order_sn' => $param['order']])->findOrEmpty();
|
|
|
|
|
+ if (!$address->isEmpty()) return error("请勿重复提交");
|
|
|
|
|
+ $param['city_text'] = empty($param['cityLabel'])?'':implode("",$param['cityLabel']);
|
|
|
|
|
+ $address->insertGetId([
|
|
|
|
|
+ "openid" => $order['openid'],
|
|
|
|
|
+ "order_sn" => $param['order'],
|
|
|
|
|
+ "city_code" => empty($param['city'])?[]:json_encode($param['city']),
|
|
|
|
|
+ "city_text" => $param['city_text'],
|
|
|
|
|
+ "mobile" => $param['mobile'],
|
|
|
|
|
+ "address" => $param['address'],
|
|
|
|
|
+ "nickname" => $param['nickname'],
|
|
|
|
|
+ ]);
|
|
|
|
|
+ $order->status = 2;
|
|
|
|
|
+ $order->express_status = 1;
|
|
|
|
|
+ $state = $order->save();
|
|
|
|
|
+ if (!$state) return errorTrans("error.data");
|
|
|
|
|
+ return successTrans("success.data");
|
|
|
|
|
+ } catch (\Throwable $throwable) {
|
|
|
|
|
+ return error($throwable->getMessage());
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|