Zory 2 hafta önce
ebeveyn
işleme
e2ec6ded74
1 değiştirilmiş dosya ile 27 ekleme ve 1 silme
  1. 27 1
      app/controller/admin/Pages.php

+ 27 - 1
app/controller/admin/Pages.php

@@ -3,6 +3,7 @@
 namespace app\controller\admin;
 
 use app\extra\basic\Base;
+use app\extra\tools\CodeExtend;
 use app\middleware\AuthMiddleware;
 use app\model\cpa\CpaPage;
 use app\service\cpa\PageService;
@@ -29,7 +30,9 @@ class Pages extends Base
     {
         try {
             $param = $request->all();
-            $data = $this->service->setModel()->getList($param,['product','account']);
+            $data = $this->service->setModel()->getList($param,['product','account'],true,['link'],['link' => function($query,$next){
+                return "https://www.baidu.com/s/{$next['link_code']}";
+            }]);
             return successTrans("success.data",pageFormat($data),200);
         } catch (\Throwable $th) {
             return error($th->getMessage());
@@ -41,6 +44,9 @@ class Pages extends Base
     {
         try {
             $param = $request->post();
+            if (!isset($param['id'])) {
+                $param['link_code'] = strtoupper(CodeExtend::random(10,3));
+            }
             $state = $this->model->setAutoData($param);
             if (!$state) return errorTrans("error.data");
             return successTrans("success.data");
@@ -48,4 +54,24 @@ class Pages extends Base
             return error($throwable->getMessage());
         }
     }
+    #[PostMapping("status")]
+    public function setPageData(Request $request): Response
+    {
+        try {
+            $param = $this->_valid([
+                "id.require" => "参数错误",
+                "status.require" => "参数错误"
+            ],$request->method());
+            if (!is_array($param)) return error($param);
+            $product = $this->model->where("id",$param['id'])->findOrEmpty();
+            if ($product->isEmpty()) return error("数据错误");
+            $product->status = $param['status'] - 1;
+            $state = $product->save();
+            if (!$state) return errorTrans("error.data");
+            return successTrans("success.data");
+        } catch (\Throwable $throwable) {
+            return error($throwable->getMessage());
+        }
+    }
+
 }