From e6ef621e46829469f5003855481474e7146b7c2b Mon Sep 17 00:00:00 2001 From: zhoulexin Date: Mon, 22 Jun 2026 10:40:45 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E4=BC=98=E5=8C=96=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/attendance.js | 10 + src/components/SideMenu.vue | 11 +- src/router/index.js | 6 - src/views/behavior/index.vue | 2 +- src/views/bigscreen/index.vue | 12 +- src/views/bigscreen/roomDetail.vue | 528 +++++++++++++++++- .../dashboard/components/AttendanceDetail.vue | 65 ++- .../dashboard/components/ClassRanking.vue | 2 +- src/views/dashboard/index.vue | 4 +- src/views/info/building.vue | 12 +- src/views/info/class.vue | 2 +- src/views/settings/device.vue | 148 ----- src/views/settings/permissions.vue | 3 +- src/views/settings/rules.vue | 1 + 14 files changed, 610 insertions(+), 196 deletions(-) delete mode 100644 src/views/settings/device.vue diff --git a/src/api/attendance.js b/src/api/attendance.js index 56bbdfb..ad3a9c2 100644 --- a/src/api/attendance.js +++ b/src/api/attendance.js @@ -9,3 +9,13 @@ export const getRecordPage = (params) => { export const getDetailPage = (params) => { return request.get('/attendance/detail/page', { params }) } + +/** 获取教室当前考勤数据 */ +export const getCurrentAttendance = (id, currentTime) => { + return request.get(`/classroom/${id}/current-attendance`, { params: { currentTime } }) +} + +/** 更新考勤详情状态 */ +export const updateDetailStatus = (id, attStatus) => { + return request.put(`/attendance/detail/${id}`, { attStatus }) +} diff --git a/src/components/SideMenu.vue b/src/components/SideMenu.vue index 1baa61c..89e0e57 100644 --- a/src/components/SideMenu.vue +++ b/src/components/SideMenu.vue @@ -74,10 +74,6 @@ 系统设置 - - - 设备管理 - 考勤规则设置 @@ -108,7 +104,12 @@ import { useAppStore } from '@/stores/app' const route = useRoute() const appStore = useAppStore() -const activeMenu = computed(() => route.path) +const activeMenu = computed(() => { + const path = route.path + // 大屏详情页 /bigscreen/room/:id 也高亮"数据展示大屏" + if (path.startsWith('/bigscreen')) return '/bigscreen' + return path +}) diff --git a/src/views/dashboard/components/AttendanceDetail.vue b/src/views/dashboard/components/AttendanceDetail.vue index 02e4bcc..296bf22 100644 --- a/src/views/dashboard/components/AttendanceDetail.vue +++ b/src/views/dashboard/components/AttendanceDetail.vue @@ -3,7 +3,7 @@ :model-value="props.modelValue" @update:model-value="emit('update:modelValue', $event)" :title="`${props.detailData.courseName} - 考勤详情`" - width="1010px" + width="1030px" destroy-on-close >
@@ -41,11 +41,35 @@ {{ (row.faceSimilarity * 100).toFixed(1) }}% - + @@ -70,9 +94,9 @@ diff --git a/src/views/settings/permissions.vue b/src/views/settings/permissions.vue index 695afac..54efea4 100644 --- a/src/views/settings/permissions.vue +++ b/src/views/settings/permissions.vue @@ -76,12 +76,13 @@