Просмотр исходного кода

[智价云] 消息数量统计

tangyuanwang 6 часов назад
Родитель
Сommit
04f3c19ad3

+ 30 - 0
app/Http/Controllers/Manager/Process/Notice.php

@@ -97,4 +97,34 @@ class Notice extends Controller
         // 告知结果
         return                          json_send(['code' => 'success', 'msg' => '设置成功', 'data' => '']);
     }
+
+    /**
+     * 消息数统计
+     * @author: 唐远望
+     * @version: 1.0
+     * @date: 2026-03-21
+     */
+    public function message_count(Request $Request, NoticesModel $NoticesModel)
+    {
+        // 验证规则
+        $Request->scene('message_count')->validate();
+        $admin_company_id = request('admin_company_id', '0');
+        $company_id = request('access_token.company_id', '0');
+        $is_admin = request('access_token.is_admin', '0'); //是否管理员操作 0=是1=否
+        // 接收参数
+        $uid = request('access_token.uid', 0);
+        $map = [];
+        // 权限判断
+        if ($is_admin != 1 && $company_id != 0) {
+            $map['company_id'] = $company_id;
+            $map['custom_uid'] = $uid;
+        } else {
+            $map['company_id'] = $admin_company_id;
+        }
+        $map[] = ['status', '=', 0];
+        // 查询系统用户
+        $unread_count                    = $NoticesModel->where($map)->orderByDesc('id')->count();
+        // 告知结果
+        return                        json_send(['code' => 'success', 'msg' => '获取成功', 'data' => ['unread_count' => $unread_count]]);
+    }
 }

+ 2 - 1
app/Http/Requests/Manager/Process/Notices.php

@@ -42,7 +42,8 @@ class Notices extends BaseRequest
         'set_processing_status'   => ['id'],
         'delete'                  => ['id'],
         'data_cleaning'           => [''],
-        'export_excel'            => ['']
+        'export_excel'            => [''],
+        'message_count'            => ['']
     ];
 
     /**

+ 2 - 0
routes/manager.php

@@ -277,6 +277,8 @@ Route::any('process/violation_store/export_excel', [App\Http\Controllers\Manager
 Route::any('process/notice/list', [App\Http\Controllers\Manager\Process\Notice::class, 'list']);
 //违规处理-通知修改状态
 Route::any('process/notice/set_status', [App\Http\Controllers\Manager\Process\Notice::class, 'set_status']);
+//违规处理-消息数统计
+Route::any('process/notice/message_count', [App\Http\Controllers\Manager\Process\Notice::class, 'message_count']);
 
 // 获取签名上传地址
 Route::any('upload/get_sign_url',[App\Http\Controllers\Manager\Upload::class,'get_sign_url']);