Zory 1 тиждень тому
батько
коміт
96e02dfe6a

+ 5 - 0
app/controller/api/Service.php

@@ -217,6 +217,11 @@ class Service extends Base
         }
     }
 
+    /**
+     * 收集完善用户收货地址
+     * @param Request $request
+     * @return Response
+     */
     #[PostMapping("send/address")]
     public function setOrderAddress(Request $request): Response
     {

+ 22 - 0
app/controller/merchant/Order.php

@@ -4,6 +4,7 @@ namespace app\controller\merchant;
 
 use app\extra\basic\Base;
 use app\middleware\AuthMiddleware;
+use app\model\saas\SaasOrder;
 use app\service\saas\GoodsService;
 use app\service\saas\OrderService;
 use DI\Attribute\Inject;
@@ -22,6 +23,9 @@ class Order extends Base
     #[Inject]
     protected OrderService $service;
 
+    #[Inject]
+    protected SaasOrder $model;
+
     #[Inject]
     protected GoodsService $goodsService;
 
@@ -49,4 +53,22 @@ class Order extends Base
         }
     }
 
+    #[GetMapping('detail')]
+    public function getOrderDetail(Request $request): Response
+    {
+        try {
+            $param = $this->_valid([
+                "order.require" => trans("empty.require"),
+            ],$request->method());
+            if (!is_array($param)) return error($param);
+            $order = $this->model->where("out_order_no",$param['order'])->with(['product','poi','user'])->findOrEmpty();
+            if ($order['poi_id'] <> $request->user['store_id']) return errorTrans("empty.data");
+            if ($order->isEmpty()) return errorTrans("empty.data");
+            $order['end_time'] = timeDiff(strtotime("+30 minutes",strtotime($order['create_at'])),time());
+            return successTrans("success.data",$order->toArray());
+        } catch (\Throwable $throwable) {
+            return error($throwable->getMessage());
+        }
+    }
+
 }

+ 5 - 0
app/model/saas/SaasOrder.php

@@ -60,4 +60,9 @@ class SaasOrder extends Model
         return $this->hasOne(SaasStore::class,"poi_id","poi_id");
     }
 
+    public function user(): HasOne
+    {
+        return $this->hasOne(SaasUserOpen::class,"openid","openid");
+    }
+
 }