From dd4f2ce60b2cda1093d8808170d1777eb1b3d3ba Mon Sep 17 00:00:00 2001 From: wwp <782568523@qq.com> Date: Fri, 19 Jul 2024 13:11:49 +0800 Subject: [PATCH 1/2] 12 --- SafeCampus.WEB/.env | 2 +- .../src/api/interface/sys/monitor/camera.ts | 7 ++ .../src/api/modules/monitor/live.ts | 8 +++ SafeCampus.WEB/src/enums/formEnum.ts | 10 ++- .../views/monitor/live/components/form.vue | 1 + .../monitor/live/components/userForm.vue | 70 +++++++++++++------ .../src/views/monitor/live/index.vue | 17 ++--- .../src/views/sysconfig/ability/index.vue | 37 +++++++--- 8 files changed, 108 insertions(+), 44 deletions(-) diff --git a/SafeCampus.WEB/.env b/SafeCampus.WEB/.env index 09e5344..329f2b1 100644 --- a/SafeCampus.WEB/.env +++ b/SafeCampus.WEB/.env @@ -1,5 +1,5 @@ # title -VITE_GLOB_APP_TITLE = 校园监控智能分析平台 +VITE_GLOB_APP_TITLE = AI监控预警分析平台 # 本地运行端口号 VITE_PORT = 8848 diff --git a/SafeCampus.WEB/src/api/interface/sys/monitor/camera.ts b/SafeCampus.WEB/src/api/interface/sys/monitor/camera.ts index b5d6743..d5b6b11 100644 --- a/SafeCampus.WEB/src/api/interface/sys/monitor/camera.ts +++ b/SafeCampus.WEB/src/api/interface/sys/monitor/camera.ts @@ -57,4 +57,11 @@ export namespace sysCamera { id: number | string; name: string; } + // 设置推送人 + export interface setGroup { + /** groupId */ + groupId: number | string; + userId: number | string; + ids: number | string[]; + } } diff --git a/SafeCampus.WEB/src/api/modules/monitor/live.ts b/SafeCampus.WEB/src/api/modules/monitor/live.ts index 1227609..b6cee10 100644 --- a/SafeCampus.WEB/src/api/modules/monitor/live.ts +++ b/SafeCampus.WEB/src/api/modules/monitor/live.ts @@ -44,6 +44,14 @@ const monitorLIVEApi = { setGroup(params: sysCamera.setGroup) { return http2.post>("batchSetGroup", params); }, + // 根据分组批量设置推送人 + setPushPerson(params: sysCamera.setGroup) { + return http2.post>("batchSetPushPersonByGroup", params); + }, + // 对摄像头批量设置推送人 + setVideoPushPerson(params: sysCamera.setGroup) { + return http2.post>("batchSetPushPerson", params); + }, // 获取摄像头分组树 groupList(params: sysCamera.Tree) { return http3.get>("getNoPageList"); diff --git a/SafeCampus.WEB/src/enums/formEnum.ts b/SafeCampus.WEB/src/enums/formEnum.ts index 68792e3..c756366 100644 --- a/SafeCampus.WEB/src/enums/formEnum.ts +++ b/SafeCampus.WEB/src/enums/formEnum.ts @@ -22,5 +22,13 @@ export enum FormOptEnum { /** 查看 */ VIEW = "查看", /** 删除 */ - DELETE = "删除" + DELETE = "删除", + // 分组推送人 + GroupPushPerson = "分组推送人", + // 视频推送人 + VideoPushPerson = "视频推送人", + // 移动 + MOVE = "移动", + // 分组 + GROUP = "分组" } diff --git a/SafeCampus.WEB/src/views/monitor/live/components/form.vue b/SafeCampus.WEB/src/views/monitor/live/components/form.vue index f133cdf..744eaf3 100644 --- a/SafeCampus.WEB/src/views/monitor/live/components/form.vue +++ b/SafeCampus.WEB/src/views/monitor/live/components/form.vue @@ -78,6 +78,7 @@ function onOpen(props: FormProps.Base) { visible.value = true; //显示表单 if (props.record.id) { //如果传了id,就去请求api获取record + return; bizOrgApi.detail({ id: props.record.id }).then(res => { orgProps.record = res.data; }); diff --git a/SafeCampus.WEB/src/views/monitor/live/components/userForm.vue b/SafeCampus.WEB/src/views/monitor/live/components/userForm.vue index cb6b623..48ae156 100644 --- a/SafeCampus.WEB/src/views/monitor/live/components/userForm.vue +++ b/SafeCampus.WEB/src/views/monitor/live/components/userForm.vue @@ -15,10 +15,10 @@ label-width="auto" label-suffix=" :" > - + 选择 - {{ - liveUserProps.record.directorInfo?.name + {{ + liveUserProps.record.userInfo?.name }} @@ -32,7 +32,7 @@ + + diff --git a/SafeCampus.WEB/src/views/sysconfig/ability/index.vue b/SafeCampus.WEB/src/views/sysconfig/ability/index.vue index ea59612..95f785b 100644 --- a/SafeCampus.WEB/src/views/sysconfig/ability/index.vue +++ b/SafeCampus.WEB/src/views/sysconfig/ability/index.vue @@ -28,7 +28,7 @@
{{ item.name }} {{ item.cameraId[0] }}
- 设置推送人 + 设置推送人
@@ -59,6 +59,8 @@
+ + @@ -67,6 +69,8 @@ import { ref, watch, provide, onMounted, unref, computed, reactive } from "vue"; import TreeFilter from "@/components/TreeFilter/index.vue"; import { ElMessage } from "element-plus"; import { abilityApi, userManageClassManageApi, monitorLIVEApi } from "@/api"; +import { FormOptEnum, SysDictEnum, MenuTypeDictEnum } from "@/enums"; +import userForm from "./components/userForm.vue"; const value = ref(true); onMounted(() => { @@ -116,6 +120,10 @@ function getwarnGroup() { }); }); } +const userFormRef = ref | null>(null); +function pushPerson(opt: FormOptEnum, record: {} | SysOrg.SysOrgInfo = {}) { + userFormRef.value?.onOpen({ opt: opt, record: record, successful: getwarnGroup }); +} // 开关 function stateChange() { let params: string = JSON.stringify(warnGroupList.value);