LiuJ 3 주 전
부모
커밋
4c32656b32
1개의 변경된 파일85개의 추가작업 그리고 86개의 파일을 삭제
  1. 85 86
      app/JsonRpc/NewsService.php

+ 85 - 86
app/JsonRpc/NewsService.php

@@ -189,7 +189,7 @@ class NewsService implements NewsServiceInterface
             }
             return Result::success($result);
             Db::commit();
-        }catch (\Exception $e){
+        } catch (\Exception $e) {
             Db::rollBack();
             return Result::error("删除失败");
         }
@@ -1222,7 +1222,7 @@ class NewsService implements NewsServiceInterface
                 $imgArticles = Article::where('catid', $childCategoryIds[0])
                     ->where(function ($query) use ($data) {
                         $query->where(function ($subQuery) use ($data) {
-                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '".intval($data['website_id'])."') = 0");
+                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '" . intval($data['website_id']) . "') = 0");
                         })->orWhereNull("ignore_ids");
                     })
                     ->where('status', 1)
@@ -1238,7 +1238,7 @@ class NewsService implements NewsServiceInterface
                     ->where('status', 1)
                     ->where(function ($query) use ($data) {
                         $query->where(function ($subQuery) use ($data) {
-                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '".intval($data['website_id'])."') = 0");
+                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '" . intval($data['website_id']) . "') = 0");
                         })->orWhereNull("ignore_ids");
                     })
                 // ->where(function ($query) {
@@ -1292,11 +1292,11 @@ class NewsService implements NewsServiceInterface
         }
         return Result::success($category);
     }
-     /**
-     * 模块新闻加强plus版 
+    /**
+     * 模块新闻加强plus版
      * @param array $data
      * @return array
-    */
+     */
     public function getWebsiteAllArticle(array $data): array
     {
         // 修正传入的字符串,将单引号替换为双引号
@@ -1311,31 +1311,31 @@ class NewsService implements NewsServiceInterface
                 'website_id' => $input['website_id'],
             ];
             // 查询栏目名称
-            $category = WebsiteCategory::where('category_id', $parentCatId)->where($website)->first(['alias', 'category_id','aLIas_pinyin']);
-            if(empty($category)){
+            $category = WebsiteCategory::where('category_id', $parentCatId)->where($website)->first(['alias', 'category_id', 'aLIas_pinyin']);
+            if (empty($category)) {
                 $imgArticles = [];
                 $textArticles = [];
                 // return Result::error("暂无此栏目",0);
-            }else{
+            } else {
                 // 查询图片新闻
                 $imgArticles = Article::where('catid', $parentCatId)
-                ->where('status', 1)
-                ->where(function ($query) use ($website) {
-                    $query->where(function ($subQuery) use ($website) {
-                        $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '".intval($website['website_id'])."') = 0");
-                    })->orWhereNull("ignore_ids");
-                })
-                ->where('imgurl', '!=', '')
-                ->orderBy('updated_at', 'desc')
-                ->limit($parentImgNum)
-                ->get()->all();
+                    ->where('status', 1)
+                    ->where(function ($query) use ($website) {
+                        $query->where(function ($subQuery) use ($website) {
+                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '" . intval($website['website_id']) . "') = 0");
+                        })->orWhereNull("ignore_ids");
+                    })
+                    ->where('imgurl', '!=', '')
+                    ->orderBy('updated_at', 'desc')
+                    ->limit($parentImgNum)
+                    ->get()->all();
 
                 // 查询文字新闻
                 $textArticles = Article::where('catid', $parentCatId)
                     ->where('status', 1)
                     ->where(function ($query) use ($website) {
                         $query->where(function ($subQuery) use ($website) {
-                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '".intval($website['website_id'])."') = 0");
+                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '" . intval($website['website_id']) . "') = 0");
                         })->orWhereNull("ignore_ids");
                     })
                     ->orderBy('updated_at', 'desc')
@@ -1348,27 +1348,27 @@ class NewsService implements NewsServiceInterface
                 'pinyin' => $category->aLIas_pinyin ?? '',
                 'imgnum' => $imgArticles,
                 'textnum' => $textArticles,
-                
+
             ];
 
             if (!empty($item['child']) && $item['child'] != "") {
                 // 查询第一个pid等于parent中第一个参数的category来获取child的category_id
-                $childCategory = WebsiteCategory::where('pid', $parentCatId)->where($website)->select('category_id','alias','aLIas_pinyin')->get()->all();
+                $childCategory = WebsiteCategory::where('pid', $parentCatId)->where($website)->select('category_id', 'alias', 'aLIas_pinyin')->get()->all();
                 if ($childCategory) {
                     list($childCatId, $childImgNum, $childTextNum) = explode(',', $item['child']);
                     // 查询子栏目名称
-                    $childCategoryInfo = WebsiteCategory::where('category_id', $childCatId)->where($website)->first(['alias', 'category_id','aLIas_pinyin']);
+                    $childCategoryInfo = WebsiteCategory::where('category_id', $childCatId)->where($website)->first(['alias', 'category_id', 'aLIas_pinyin']);
                     // $childAllCartegory = WebsiteCategory::where('pid', $childCatId)->where($website)->first(['category_id']);
-                    if(empty($childCategoryInfo)){
+                    if (empty($childCategoryInfo)) {
                         $childImgArticles = [];
                         $childTextArticles = [];
-                    }else{
-                         // 查询子栏目图片新闻
+                    } else {
+                        // 查询子栏目图片新闻
                         $childImgArticles = Article::where('catid', $childCatId)
                             ->where('status', 1)
                             ->where(function ($query) use ($website) {
                                 $query->where(function ($subQuery) use ($website) {
-                                    $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '".intval($website['website_id'])."') = 0");
+                                    $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '" . intval($website['website_id']) . "') = 0");
                                 })->orWhereNull("ignore_ids");
                             })
                             ->where('imgurl', '!=', '')
@@ -1380,7 +1380,7 @@ class NewsService implements NewsServiceInterface
                             ->where('status', 1)
                             ->where(function ($query) use ($website) {
                                 $query->where(function ($subQuery) use ($website) {
-                                    $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '".intval($website['website_id'])."') = 0");
+                                    $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '" . intval($website['website_id']) . "') = 0");
                                 })->orWhereNull("ignore_ids");
                             })
                             ->orderBy('updated_at', 'desc')
@@ -1390,11 +1390,11 @@ class NewsService implements NewsServiceInterface
                     $resultItem['child'] = [
                         'alias' => $childCategoryInfo ? $childCategoryInfo->alias : null,
                         'category_id' => $childCatId,
-                        'pinyin' => $childCategoryInfo->aLIas_pinyin?? '',
+                        'pinyin' => $childCategoryInfo->aLIas_pinyin ?? '',
                         'all_childcat' => $childCategory,
                         'imgnum' => $childImgArticles,
                         'textnum' => $childTextArticles,
-                        
+
                     ];
                     // $resultItem['pinyin'] = $childCategoryInfo->aLIas_pinyin ?? '';
                 }
@@ -1403,10 +1403,9 @@ class NewsService implements NewsServiceInterface
             return $resultItem;
         }, $data);
         return Result::success($result);
-                // return Result::success($data);
+        // return Result::success($data);
     }
 
-
     /**
      * 乡村网-获取特殊新闻模块
      * @param array $data
@@ -1414,61 +1413,60 @@ class NewsService implements NewsServiceInterface
      */
     public function getWebsiteArticles(array $data): array
     {
-        // 修正传入的字符串,将单引号替换为双引号 
-        $input['id'] = $data['id']; 
-        $input['website_id'] = $data['website_id']; 
-        // 将 JSON 字符串转换为 PHP 数组 
-        $data = json_decode($input['id'], true); 
-        // 使用 array_map 处理每个元素 
-        $result = array_map(function ($item) use ($input) { 
-            list($parentCatId, $parentImgNum, $parentTextNum) = explode(',', $item['parent']); 
-            $website = [ 
-                'website_id' => $input['website_id'], 
-            ]; 
-            // 查询栏目名称 
-            $category = WebsiteCategory::where('category_id', $parentCatId)->where($website)->first(['alias', 'category_id','aLIas_pinyin']); 
-            if(empty($category)){ 
-                $imgArticles = []; 
-                $textArticles = []; 
-                // return Result::error("暂无此栏目",0); 
-            }else{ 
-                // 查询图片新闻 
-                $imgArticles = Article::where('status',1) 
-                    ->where(function ($query) use ($website) { 
-                        $query->where(function ($subQuery) use ($website) { 
-                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '".intval($website['website_id'])."') = 0"); 
-                        })->orWhereNull("ignore_ids"); 
-                    }) 
-                    ->where('imgurl', '!=', '') 
-                    ->whereRaw("JSON_CONTAINS(category_arr_id, '".intval($parentCatId)."')") 
-                    ->leftJoin('website_category', 'website_category.category_id', 'article.catid') 
-                    ->select('article.*','website_category.category_id','website_category.alias','website_category.aLIas_pinyin') 
-                    ->orderBy('updated_at', 'desc') 
-                    ->limit($parentImgNum) 
-                    ->get()->all(); 
-                // 查询文字新闻 
-                $textArticles = Article::where('status',1) 
-                    ->where(function ($query) use ($website) { 
-                        $query->where(function ($subQuery) use ($website) { 
-                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '".intval($website['website_id'])."') = 0"); 
-                        })->orWhereNull("ignore_ids"); 
-                    }) 
-                    ->whereRaw("JSON_CONTAINS(category_arr_id, '".intval($parentCatId)."')") 
-                    ->leftJoin('website_category', 'website_category.category_id', 'article.catid') 
-                    ->select('article.*','website_category.category_id','website_category.alias','website_category.aLIas_pinyin') 
-                    ->orderBy('updated_at', 'desc') 
-                    ->limit($parentTextNum) 
-                    ->get()->all(); 
-            } 
-            $resultItem = [ 
-                'alias' => $category ? $category->alias : null, 
-                'category_id' => $parentCatId, 
-                'pinyin' => $category->aLIas_pinyin ?? '', 
-                'imgnum' => $imgArticles, 
-                'textnum' => $textArticles, 
-                
-            ]; 
+        // 修正传入的字符串,将单引号替换为双引号
+        $input['id'] = $data['id'];
+        $input['website_id'] = $data['website_id'];
+        // 将 JSON 字符串转换为 PHP 数组
+        $data = json_decode($input['id'], true);
+        // 使用 array_map 处理每个元素
+        $result = array_map(function ($item) use ($input) {
+            list($parentCatId, $parentImgNum, $parentTextNum) = explode(',', $item['parent']);
+            $website = [
+                'website_id' => $input['website_id'],
+            ];
+            // 查询栏目名称
+            $category = WebsiteCategory::where('category_id', $parentCatId)->where($website)->first(['alias', 'category_id', 'aLIas_pinyin']);
+            if (empty($category)) {
+                $imgArticles = [];
+                $textArticles = [];
+                // return Result::error("暂无此栏目",0);
+            } else {
+                // 查询图片新闻
+                $imgArticles = Article::where('status', 1)
+                    ->where(function ($query) use ($website) {
+                        $query->where(function ($subQuery) use ($website) {
+                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '" . intval($website['website_id']) . "') = 0");
+                        })->orWhereNull("ignore_ids");
+                    })
+                    ->where('imgurl', '!=', '')
+                    ->whereRaw("JSON_CONTAINS(category_arr_id, '" . intval($parentCatId) . "')")
+                    ->leftJoin('website_category', 'website_category.category_id', 'article.catid')
+                    ->select('article.*', 'website_category.category_id', 'website_category.alias', 'website_category.aLIas_pinyin')
+                    ->orderBy('updated_at', 'desc')
+                    ->limit($parentImgNum)
+                    ->get()->all();
+                // 查询文字新闻
+                $textArticles = Article::where('status', 1)
+                    ->where(function ($query) use ($website) {
+                        $query->where(function ($subQuery) use ($website) {
+                            $subQuery->whereRaw("JSON_CONTAINS(ignore_ids, '" . intval($website['website_id']) . "') = 0");
+                        })->orWhereNull("ignore_ids");
+                    })
+                    ->whereRaw("JSON_CONTAINS(category_arr_id, '" . intval($parentCatId) . "')")
+                    ->leftJoin('website_category', 'website_category.category_id', 'article.catid')
+                    ->select('article.*', 'website_category.category_id', 'website_category.alias', 'website_category.aLIas_pinyin')
+                    ->orderBy('updated_at', 'desc')
+                    ->limit($parentTextNum)
+                    ->get()->all();
+            }
+            $resultItem = [
+                'alias' => $category ? $category->alias : null,
+                'category_id' => $parentCatId,
+                'pinyin' => $category->aLIas_pinyin ?? '',
+                'imgnum' => $imgArticles,
+                'textnum' => $textArticles,
 
+            ];
 
             return $resultItem;
         }, $data);
@@ -1775,6 +1773,7 @@ class NewsService implements NewsServiceInterface
         if ($type_id == 1) {
             //最近的5篇已审的文章
             $apply_articale = Article::where('status', 1)
+                ->where('user_id', $user_id)
                 ->orderBy('updated_at', 'desc')
                 ->limit(5)->get();
             //获取5条单聊未读聊天消息