Pārlūkot izejas kodu

新增c端:项目相关接口、建立自助建站c端获取所有网站基本信息接口

15313670163 1 dienu atpakaļ
vecāks
revīzija
8cb9d7ce83

+ 110 - 0
app/Controller/WebController.php

@@ -1442,4 +1442,114 @@ class WebController extends AbstractController
         $result = $this->newsServiceClient->getWebsiteCompanyInfo($requireData);
         return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
     }
+    /*
+    *c端-项目 项目模块
+    * @return array
+    */
+    public function getWebsiteProject(){
+        $requireData = $this->request->all();
+        $validator = $this->validationFactory->make(
+            $requireData,
+            [
+                'id' =>'required',
+            ],
+            [
+                'id.required' => 'id不能为空',
+            ]
+        );
+        if ($validator->fails()){
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
+        $requireData['website_id'] =  Context::get("SiteId")?? 0;
+        $result = $this->newsServiceClient->getWebsiteProject($requireData);
+        return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+    }
+    /**
+    *c端-项目 项目列表
+    * @return array
+    */
+    public function getWebsiteProjectList(){
+        $requireData = $this->request->all();
+        $validator = $this->validationFactory->make(
+            $requireData,
+            [
+                'category_id' =>'nullable|integer',
+                'page' => 'required|integer',
+                'pageSize' =>'required|integer',
+                'keyword_or_category_id' => 'required_without_all:keyword,category_id|in:1',
+            ],
+            [
+                'category_id.interger' => '栏目id必须为整数',   
+                'keyword.string' => '搜索关键字必须为字符串',
+                'page.required' => '当前页不能为空',
+                'page.integer' => '当前页必须为整数',
+                'pageSize.required' => '每页数量不能为空',
+                'pageSize.integer' => '每页数量必须为整数',
+                'keyword_or_category_id.required_without_all' => '搜索关键字和栏目 ID 不能同时为空',
+            ]
+        );
+        if ($validator->fails()){
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
+        $requireData['website_id'] =  Context::get("SiteId")?? 0;
+        $result = $this->newsServiceClient->getWebsiteProjectList($requireData);
+        return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+    }
+    /**
+    *c端-项目 项目详情
+    * @return array
+    */
+    public function getWebsiteProjectInfo(){
+        $requireData = $this->request->all();
+        $validator = $this->validationFactory->make(
+            $requireData,
+            [
+                'id' =>'required|integer',
+            ],
+            [
+                'id.required' => 'id不能为空',
+                'id.integer' => 'id必须为整数',
+            ]
+        );
+        if ($validator->fails()){
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage);
+        }
+        $requireData['website_id'] =  Context::get("SiteId")?? 0;
+        $result = $this->newsServiceClient->getWebsiteProjectInfo($requireData);
+        return $result['code'] == 200? Result::success($result['data']) : Result::error($result['message']);
+    }
+     /*
+     * 获取底部所有信息
+     * 
+     * */
+    public function getWebsiteAllinfo()
+    {
+        $requireData = $this->request->all();
+        $validator = $this->validationFactory->make(
+            $requireData,
+            [
+                'link_textnum' => 'required|integer',
+                'link_imgnum' => 'required|integer',
+                'link_footnum' => 'required|integer',
+            ],
+            [
+                'link_textnum.required' => '文字类型友情链接数量不能为空',
+                'link_textnum.integer' => '文字类型友情链接数量必须为整数',
+                'link_imgnum.required' => '图片类型友情链接数量不能为空',
+                'link_imgnum.integer' => '图片类型友情链接数量必须为整数',
+                'link_footnum.required' => '底部友情链接数量不能为空',
+                'link_footnum.integer' => '底部友情链接数量必须为整数',
+            ] 
+        );
+        if ($validator->fails()){
+            $errorMessage = $validator->errors()->first();
+            return Result::error($errorMessage); 
+        }
+        $requireData['website_id'] =  Context::get("SiteId");
+        $result = $this->websiteServiceClient->getWebsiteAllinfo($requireData);
+        return $result['code']==200?Result::success($result['data']):Result::error($result['message']);
+    }
 }

+ 24 - 0
app/JsonRpc/NewsService.php

@@ -551,6 +551,30 @@ class NewsService extends AbstractServiceClient implements NewsServiceInterface
     {
         return $this->__request(__FUNCTION__, $data);
     }
+    /**
+     * @param array $data
+     * @return mixed
+     */
+    public function getWebsiteProject(array $data)
+    {
+        return $this->__request(__FUNCTION__, $data);
+    }
+    /**
+     * @param array $data
+     * @return mixed
+     */
+    public function getWebsiteProjectInfo(array $data)
+    {
+        return $this->__request(__FUNCTION__, $data);
+    }
+    /**
+     * @param array $data
+     * @return mixed
+     */
+    public function getWebsiteProjectList(array $data)
+    {
+        return $this->__request(__FUNCTION__, $data);
+    }
     /**
      * @param array $data
      * @return mixed

+ 16 - 1
app/JsonRpc/NewsServiceInterface.php

@@ -405,7 +405,22 @@ interface NewsServiceInterface
      * @return mixed
      */
     public function getWebsiteCompanyList(array $data);
-    
+    /**
+     * @param array $data
+     * @return mixed
+     */
+    public function getWebsiteProject(array $data);
+    /**
+     * @param array $data
+     * @return mixed
+     */
+    public function getWebsiteProjectInfo(array $data);
+    /**
+     * @param array $data
+     * @return mixed
+     */
+    public function getWebsiteProjectList(array $data);
+
 
     /**
      * @param array $data

+ 8 - 0
app/JsonRpc/WebsiteService.php

@@ -672,6 +672,14 @@ class WebsiteService extends AbstractServiceClient implements WebsiteServiceInte
     {
         return $this->__request(__FUNCTION__, $data); 
     }
+    /**
+     * @param array $data
+     * @return mixed
+     */
+    public function getWebsiteAllinfo(array $data)
+    {
+        return $this->__request(__FUNCTION__, $data);
+    }
 
    /*
     * @param array $data

+ 5 - 0
app/JsonRpc/WebsiteServiceInterface.php

@@ -441,6 +441,11 @@ interface WebsiteServiceInterface
      * @return mixed
      */
     public function getWebsiteRoute(array $data);
+    /**
+     * @param array $data
+     * @return mixed
+     */
+    public function getWebsiteAllinfo(array $data);
 
     /**
      * @param array $data

+ 9 - 0
config/api/web.php

@@ -113,6 +113,15 @@ Router::addGroup(
                 Router::get('/getWebsiteCompanyList', [WebController::class, 'getWebsiteCompanyList']);
                 // 企业详情
                 Router::get('/getWebsiteCompanyInfo', [WebController::class, 'getWebsiteCompanyInfo']);
+                // 项目模块
+                Router::get('/getWebsiteProject', [WebController::class, 'getWebsiteProject']);
+                // 项目列表
+                Router::get('/getWebsiteProjectList', [WebController::class, 'getWebsiteProjectList']);
+                // 项目详情
+                Router::get('/getWebsiteProjectInfo', [WebController::class, 'getWebsiteProjectInfo']);
+
+                // 自助建站-c端获取头部及底部所有网站信息
+                Router::get('/getWebsiteAllinfo', [WebController::class, 'getWebsiteAllinfo']);
                 
                 
             },