Pārlūkot izejas kodu

!1 获取新闻、获取模块新闻
Merge pull request !1 from the_bug/news_10_21_fr

rkljw 5 mēneši atpakaļ
vecāks
revīzija
f377d2fb22

+ 7 - 7
.env

@@ -1,18 +1,18 @@
-APP_NAME=user_producer
+APP_NAME=news_producer
 APP_ENV=dev
 APP_ENV=dev
 
 
 
 
 DB_DRIVER=mysql
 DB_DRIVER=mysql
-DB_HOST=192.168.1.201
-DB_PORT=3307
+DB_HOST=101.254.114.211
+DB_PORT=13306
 DB_DATABASE=hyperf
 DB_DATABASE=hyperf
 DB_USERNAME=root
 DB_USERNAME=root
-DB_PASSWORD=123456
+DB_PASSWORD=xKmapDpKCxMMSkbe
 DB_CHARSET=utf8mb4
 DB_CHARSET=utf8mb4
 DB_COLLATION=utf8mb4_unicode_ci
 DB_COLLATION=utf8mb4_unicode_ci
 DB_PREFIX=
 DB_PREFIX=
 
 
-REDIS_HOST=localhost
-REDIS_AUTH=(null)
-REDIS_PORT=6379
+REDIS_HOST=101.254.114.211
+REDIS_AUTH=YPWWnFnNebc7427B
+REDIS_PORT=26739
 REDIS_DB=0
 REDIS_DB=0

+ 125 - 0
app/JsonRpc/NewsService.php

@@ -4,13 +4,39 @@ namespace App\JsonRpc;
 use App\Model\Article;
 use App\Model\Article;
 use App\Model\ArticleData;
 use App\Model\ArticleData;
 use App\Model\Category;
 use App\Model\Category;
+use App\Model\WebsiteCategory;
 use Hyperf\DbConnection\Db;
 use Hyperf\DbConnection\Db;
 use Hyperf\RpcServer\Annotation\RpcService;
 use Hyperf\RpcServer\Annotation\RpcService;
 use App\Tools\Result;
 use App\Tools\Result;
 
 
+
 #[RpcService(name: "NewsService", protocol: "jsonrpc-http", server: "jsonrpc-http")]
 #[RpcService(name: "NewsService", protocol: "jsonrpc-http", server: "jsonrpc-http")]
 class NewsService implements NewsServiceInterface
 class NewsService implements NewsServiceInterface
 {
 {
+    /**
+     * @param array $data
+     * @return array|mixed
+     */
+    //*********getCategoryInfo********** */
+    public function getCategoryInfo(array $data): array
+    {
+        $where = [
+            ['name','like','%'.$data['keyWord'].'%'],
+            ['website_id','=',$data['website_id']],
+            ['pid','=',$data['pid']??0]
+        ];
+        $rep = Category::where($where)->limit($data['pageSize'])->orderBy("sort","asc")->offset(($data['page']-1)*$data['pageSize'])->get();
+        $count =  Category::where($where)->count();
+        $data = [
+            'rows'=>$rep->toArray(),
+            'count'=>$count
+        ];
+        if(empty($rep->toArray())){
+            return Result::error("没有栏目数据");
+        }
+        return Result::success($data);
+    }
+
 
 
     /**
     /**
      * @param array $data
      * @param array $data
@@ -107,10 +133,22 @@ class NewsService implements NewsServiceInterface
     public function getArticleList(array $data): array
     public function getArticleList(array $data): array
     {
     {
         $where= [];
         $where= [];
+        
         if(isset($data['keyWord'])){
         if(isset($data['keyWord'])){
             $where[] =   ['article.title','like','%'.$data['keyWord'].'%'];
             $where[] =   ['article.title','like','%'.$data['keyWord'].'%'];
             $where[] =   ['article.status','!=','5'];
             $where[] =   ['article.status','!=','5'];
         }
         }
+        if(isset($data['catid'])){
+            $where[] =   ['article.catid',$data['catid']];
+            $where[] =   ['article.status', '1'];
+        }elseif(isset($data['keyword'])){
+            $where[] =   ['article.title','like','%'.$data['keyword'].'%'];
+            $where[] =   ['article.status', '1'];
+        }else{
+            $where[] =   ['article.catid',$data['catid']];
+            $where[] =   ['article.title','like','%'.$data['keyword'].'%'];
+            $where[] =   ['article.status', '1'];
+        }
         $rep = Article::where($where)
         $rep = Article::where($where)
             ->leftJoin('category','article.catid','category.id')
             ->leftJoin('category','article.catid','category.id')
             ->leftJoin("article_data","article.id","article_data.article_id")
             ->leftJoin("article_data","article.id","article_data.article_id")
@@ -218,4 +256,91 @@ class NewsService implements NewsServiceInterface
             return Result::error("查询失败",0);
             return Result::error("查询失败",0);
         }
         }
     }
     }
+     /**
+     * @param array $data
+     * @return array
+     */
+    public function getWebsiteArticlett(array $data): array   // 获取新闻
+    {
+    
+       $category = WebsiteCategory::where('website_id',$data['website_id'])->select('category_id')->get();
+       $category = $category->toArray();
+       $result= [];
+       if($category){
+            $category_ids = [];
+            foreach($category as $val){
+                array_push($category_ids,$val['category_id']);
+            }
+            if(isset($data['placeid'])){
+                $placeid=$data['placeid']-1;
+                $result=Article::where('status',1)->where('level',$data['level'])->whereIn("catid",$category_ids)->orderBy("created_at","desc")->offset($placeid)->limit($data['pageSize'])->get();
+            }else{
+                $result=Article::where('status',1)->where('level',$data['level'])->whereIn("catid",$category_ids)->orderBy("created_at","desc")->offset(0)->limit($data['pageSize'])->get();
+            }
+            if(empty($result)){
+                return Result::error("暂无头条新闻",0);
+            }            
+            return Result::success($result); 
+        }
+    }
+     /**
+     * @param array $data
+     * @return array
+     */
+    //   获取模块新闻
+    public function getWebsiteModelArticles(array $data): array    
+    {
+        $catid=$data['catid'];
+        $category = WebsiteCategory::where('website_id',$data['website_id'])->where('category_id',$catid)->select('category_id')->get();
+        $category = $category->toArray();
+        if(!empty($category)){
+            $where=[
+                'status' => 1,
+                'catid' => $catid,
+            ];
+            if($data['level']==1){
+                $level=[
+                    0=>'1',
+                    1=>'4',
+                    2=>'5'
+                ];
+                $result = Article::where($where)->whereIn('level',$level)->orderBy("created_at","desc")->limit($data['pagesize'])->get();
+            }elseif($data['level']==2){
+                $level='2';
+                $result = Article::where($where)->where('level',$level)->orderBy("created_at","desc")->limit($data['pagesize'])->get();
+
+            }else{
+                $level='3';
+                $result = Article::where($where)->where('level',$level)->orderBy("created_at","desc")->limit($data['pagesize'])->get();
+            }
+            $result= $result->toArray();
+            if(!empty($result) && isset($data['placeid']) && !empty($data['placeid'])){
+                $placeid=$data['placeid']-1;
+                if($level==2 || $level==3){
+                    $where =[
+                        'level' => $level
+                    ];
+                    $result = Article::where($where)
+                    ->orderBy("created_at","desc")
+                    ->offset($placeid)
+                    ->limit($data['pagesize'])->get();
+                }else{
+                    $result = Article::where($where)
+                    ->whereIn('level',$level)
+                    ->offset($placeid)
+                    ->orderBy("created_at","desc")
+                    ->limit($data['pagesize'])->get();
+                } 
+            }
+            if(empty($result)){
+                return Result::error("此栏目暂无相关新闻",0);
+            }
+        }else{
+            return Result::error("此网站暂无此栏目",0);
+        
+        }
+        return Result::success($result);  
+        
+    }
+    
 }
 }

+ 19 - 0
app/JsonRpc/NewsServiceInterface.php

@@ -2,6 +2,7 @@
 namespace App\JsonRpc;
 namespace App\JsonRpc;
 interface NewsServiceInterface
 interface NewsServiceInterface
 {
 {
+    
     /**
     /**
      * @param array $data
      * @param array $data
      *  @return array
      *  @return array
@@ -61,5 +62,23 @@ interface NewsServiceInterface
      * @return array
      * @return array
      */
      */
     public function getArticleInfo(array $data):array;
     public function getArticleInfo(array $data):array;
+     /**
+     * @param array $data
+     * @return array|mixed
+     */
+    public function getCategoryInfo(array $data):array;
+
+    /**
+     * @param array $data
+     * @return array
+     */
+    public function getWebsiteArticlett(array $data):array;
+    /**
+     * @param array $data
+     * @return array
+     */
+    public function getWebsiteModelArticles(array $data):array;
 
 
 }
 }
+
+

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
runtime/container/classes.cache


+ 0 - 32
runtime/container/proxy/App_Controller_AbstractController.proxy.php

@@ -1,32 +0,0 @@
-<?php
-
-declare (strict_types=1);
-/**
- * This file is part of Hyperf.
- *
- * @link     https://www.hyperf.io
- * @document https://hyperf.wiki
- * @contact  group@hyperf.io
- * @license  https://github.com/hyperf/hyperf/blob/master/LICENSE
- */
-namespace App\Controller;
-
-use Hyperf\Di\Annotation\Inject;
-use Hyperf\HttpServer\Contract\RequestInterface;
-use Hyperf\HttpServer\Contract\ResponseInterface;
-use Psr\Container\ContainerInterface;
-abstract class AbstractController
-{
-    use \Hyperf\Di\Aop\ProxyTrait;
-    use \Hyperf\Di\Aop\PropertyHandlerTrait;
-    function __construct()
-    {
-        $this->__handlePropertyHandler(__CLASS__);
-    }
-    #[Inject]
-    protected ContainerInterface $container;
-    #[Inject]
-    protected RequestInterface $request;
-    #[Inject]
-    protected ResponseInterface $response;
-}

+ 0 - 31
runtime/container/proxy/App_Controller_IndexController.proxy.php

@@ -1,31 +0,0 @@
-<?php
-
-declare (strict_types=1);
-/**
- * This file is part of Hyperf.
- *
- * @link     https://www.hyperf.io
- * @document https://hyperf.wiki
- * @contact  group@hyperf.io
- * @license  https://github.com/hyperf/hyperf/blob/master/LICENSE
- */
-namespace App\Controller;
-
-class IndexController extends AbstractController
-{
-    use \Hyperf\Di\Aop\ProxyTrait;
-    use \Hyperf\Di\Aop\PropertyHandlerTrait;
-    function __construct()
-    {
-        if (method_exists(parent::class, '__construct')) {
-            parent::__construct(...func_get_args());
-        }
-        $this->__handlePropertyHandler(__CLASS__);
-    }
-    public function index()
-    {
-        $user = $this->request->input('user', 'Hyperf');
-        $method = $this->request->getMethod();
-        return ['method' => $method, 'message' => "Hello {$user}."];
-    }
-}

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
runtime/container/scan.cache


+ 1 - 1
runtime/hyperf.pid

@@ -1 +1 @@
-164
+137

+ 1 - 0
vendor/composer/autoload_classmap.php

@@ -21,6 +21,7 @@ return array(
     'App\\Model\\Link' => $baseDir . '/app/Model/Link.php',
     'App\\Model\\Link' => $baseDir . '/app/Model/Link.php',
     'App\\Model\\Model' => $baseDir . '/app/Model/Model.php',
     'App\\Model\\Model' => $baseDir . '/app/Model/Model.php',
     'App\\Model\\Website' => $baseDir . '/app/Model/Website.php',
     'App\\Model\\Website' => $baseDir . '/app/Model/Website.php',
+    'App\\Model\\WebsiteCategory' => $baseDir . '/app/Model/WebsiteCategory.php',
     'App\\Model\\WebsiteColumn' => $baseDir . '/app/Model/WebsiteColumn.php',
     'App\\Model\\WebsiteColumn' => $baseDir . '/app/Model/WebsiteColumn.php',
     'App\\Model\\WebsiteRole' => $baseDir . '/app/Model/WebsiteRole.php',
     'App\\Model\\WebsiteRole' => $baseDir . '/app/Model/WebsiteRole.php',
     'App\\Model\\WebsiteRoleUser' => $baseDir . '/app/Model/WebsiteRoleUser.php',
     'App\\Model\\WebsiteRoleUser' => $baseDir . '/app/Model/WebsiteRoleUser.php',

+ 1 - 0
vendor/composer/autoload_static.php

@@ -705,6 +705,7 @@ class ComposerStaticInit88f2a4d4a4e81dc7d415bcdf39930654
         'App\\Model\\Link' => __DIR__ . '/../..' . '/app/Model/Link.php',
         'App\\Model\\Link' => __DIR__ . '/../..' . '/app/Model/Link.php',
         'App\\Model\\Model' => __DIR__ . '/../..' . '/app/Model/Model.php',
         'App\\Model\\Model' => __DIR__ . '/../..' . '/app/Model/Model.php',
         'App\\Model\\Website' => __DIR__ . '/../..' . '/app/Model/Website.php',
         'App\\Model\\Website' => __DIR__ . '/../..' . '/app/Model/Website.php',
+        'App\\Model\\WebsiteCategory' => __DIR__ . '/../..' . '/app/Model/WebsiteCategory.php',
         'App\\Model\\WebsiteColumn' => __DIR__ . '/../..' . '/app/Model/WebsiteColumn.php',
         'App\\Model\\WebsiteColumn' => __DIR__ . '/../..' . '/app/Model/WebsiteColumn.php',
         'App\\Model\\WebsiteRole' => __DIR__ . '/../..' . '/app/Model/WebsiteRole.php',
         'App\\Model\\WebsiteRole' => __DIR__ . '/../..' . '/app/Model/WebsiteRole.php',
         'App\\Model\\WebsiteRoleUser' => __DIR__ . '/../..' . '/app/Model/WebsiteRoleUser.php',
         'App\\Model\\WebsiteRoleUser' => __DIR__ . '/../..' . '/app/Model/WebsiteRoleUser.php',

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels