rkljw 4 bulan lalu
induk
melakukan
dc2aad9894
5 mengubah file dengan 28 tambahan dan 7 penghapusan
  1. 3 4
      .env
  2. 12 2
      app/JsonRpc/NewsService.php
  3. 0 0
      runtime/container/scan.cache
  4. 1 1
      runtime/hyperf.pid
  5. 12 0
      runtime/logs/hyperf.log

+ 3 - 4
.env

@@ -1,13 +1,12 @@
 APP_NAME=user_producer
 APP_ENV=dev
 
-
 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_USERNAME=root
-DB_PASSWORD=123456
+DB_PASSWORD=xKmapDpKCxMMSkbe
 DB_CHARSET=utf8mb4
 DB_COLLATION=utf8mb4_unicode_ci
 DB_PREFIX=

+ 12 - 2
app/JsonRpc/NewsService.php

@@ -27,15 +27,25 @@ class NewsService implements NewsServiceInterface
         if(isset($data['department_id']) && $data['department_id']){
             array_push($where, ['category.department_id','=',$data['department_id']]);
         }
+        $city_id='';
         if(isset($data['city_id']) && $data['city_id']){
-            array_push($where, ['category.city_id','=',$data['city_id']]);
+            $city_id = intval($data['city_id']);
         }
         $rep = Category::where($where)
+            ->when($city_id, function ($query) use ($city_id) {
+                if(isset($city_id) && $city_id) {
+                    $query->whereJsonContains("category.city_arr_id", $city_id);
+                }
+            })
             ->leftJoin('district','category.city_id','district.id')
             ->leftJoin('department','category.department_id','department.id')
             ->select("category.*","district.name as city_name","department.name as department_name")
             ->limit($data['pageSize'])->orderBy("category.sort","desc")->orderByDesc('category.updated_at')->offset(($data['page']-1)*$data['pageSize'])->get();
-        $count =  Category::where($where)->count();
+        $count =  Category::where($where)->when($city_id, function ($query) use ($city_id) {
+            if(isset($city_id) && $city_id) {
+                $query->whereJsonContains("category.city_arr_id", $city_id);
+            }
+        })->count();
         $data = [
             'rows'=>$rep->toArray(),
             'count'=>$count

File diff ditekan karena terlalu besar
+ 0 - 0
runtime/container/scan.cache


+ 1 - 1
runtime/hyperf.pid

@@ -1 +1 @@
-34641
+42133

+ 12 - 0
runtime/logs/hyperf.log

@@ -1912,3 +1912,15 @@
 [2024-11-09T09:10:45.348805+00:00] sql.INFO: [9.86] select `category`.*, `category`.`id` as `category_id` from `category` where (`pid` = '0') [] []
 [2024-11-09T09:36:43.493737+00:00] sql.INFO: [16.17] select `category`.*, `district`.`name` as `city_name`, `department`.`name` as `department_name` from `category` left join `district` on `category`.`city_id` = `district`.`id` left join `department` on `category`.`department_id` = `department`.`id` order by `category`.`sort` desc, `category`.`updated_at` desc limit 10 offset 0 [] []
 [2024-11-09T09:36:43.497870+00:00] sql.INFO: [1.94] select count(*) as aggregate from `category` [] []
+[2024-12-17T08:53:29.344431+00:00] sql.INFO: [65.72] select `category`.*, `district`.`name` as `city_name`, `department`.`name` as `department_name` from `category` left join `district` on `category`.`city_id` = `district`.`id` left join `department` on `category`.`department_id` = `department`.`id` where json_contains(`city_arr_id`, '22') order by `category`.`sort` desc, `category`.`updated_at` desc limit 10 offset 0 [] []
+[2024-12-17T08:53:29.391606+00:00] sql.INFO: [18.05] select count(*) as aggregate from `category` [] []
+[2024-12-17T09:27:40.593844+00:00] sql.INFO: [50.37] select `category`.*, `district`.`name` as `city_name`, `department`.`name` as `department_name` from `category` left join `district` on `category`.`city_id` = `district`.`id` left join `department` on `category`.`department_id` = `department`.`id` order by `category`.`sort` desc, `category`.`updated_at` desc limit 10 offset 0 [] []
+[2024-12-17T09:27:40.634599+00:00] sql.INFO: [11.97] select count(*) as aggregate from `category` [] []
+[2024-12-17T09:30:31.736491+00:00] sql.INFO: [1972.73] select `category`.*, `district`.`name` as `city_name`, `department`.`name` as `department_name` from `category` left join `district` on `category`.`city_id` = `district`.`id` left join `department` on `category`.`department_id` = `department`.`id` where json_contains(`category`.`city_arr_id`, '22') order by `category`.`sort` desc, `category`.`updated_at` desc limit 10 offset 0 [] []
+[2024-12-17T09:30:33.741502+00:00] sql.INFO: [1916.92] select count(*) as aggregate from `category` [] []
+[2024-12-17T09:31:30.182410+00:00] sql.INFO: [55.57] select `category`.*, `district`.`name` as `city_name`, `department`.`name` as `department_name` from `category` left join `district` on `category`.`city_id` = `district`.`id` left join `department` on `category`.`department_id` = `department`.`id` where json_contains(`category`.`city_arr_id`, '"22"') order by `category`.`sort` desc, `category`.`updated_at` desc limit 10 offset 0 [] []
+[2024-12-17T09:31:30.204185+00:00] sql.INFO: [13.13] select count(*) as aggregate from `category` [] []
+[2024-12-17T09:31:57.618382+00:00] sql.INFO: [88.24] select `category`.*, `district`.`name` as `city_name`, `department`.`name` as `department_name` from `category` left join `district` on `category`.`city_id` = `district`.`id` left join `department` on `category`.`department_id` = `department`.`id` where json_contains(`category`.`city_arr_id`, '22') order by `category`.`sort` desc, `category`.`updated_at` desc limit 10 offset 0 [] []
+[2024-12-17T09:31:57.697785+00:00] sql.INFO: [15.41] select count(*) as aggregate from `category` [] []
+[2024-12-17T09:32:20.784987+00:00] sql.INFO: [50.45] select `category`.*, `district`.`name` as `city_name`, `department`.`name` as `department_name` from `category` left join `district` on `category`.`city_id` = `district`.`id` left join `department` on `category`.`department_id` = `department`.`id` where json_contains(`category`.`city_arr_id`, '22') order by `category`.`sort` desc, `category`.`updated_at` desc limit 10 offset 0 [] []
+[2024-12-17T09:32:20.808016+00:00] sql.INFO: [12.48] select count(*) as aggregate from `category` where json_contains(`category`.`city_arr_id`, '22') [] []

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini