diff --git a/SafeCampus.WEB/src/api/modules/screen/index.ts b/SafeCampus.WEB/src/api/modules/screen/index.ts index 1038cf9..77bd090 100644 --- a/SafeCampus.WEB/src/api/modules/screen/index.ts +++ b/SafeCampus.WEB/src/api/modules/screen/index.ts @@ -23,31 +23,31 @@ const http = moduleRequest("/large/screen/"); const screenApi = { /** 获取大屏首页数据 */ getHomeData(params: any={}) { - return http.get("getHomeData", params); + return http.get("getHomeData", params,{loading:false}); }, /** 获取大屏学生归寝数据 */ getStudentReturnBed(params: any={}) { - return http.get("getStudentReturnBed", params); + return http.get("getStudentReturnBed", params,{loading:false}); }, /** 获取大屏智慧课堂数据 */ getSmartClassroom(params: any={}) { - return http.get("getSmartClassroom", params); + return http.get("getSmartClassroom", params,{loading:false}); }, /** 获取宿舍楼 */ getNoPageList(params: any={}) { - return http.get("getNoPageList", params); + return http.get("getNoPageList", params,{loading:false}); }, /** 获取班级列表 */ getPersonSetNoPageList(params: any={}) { - return http.get("getPersonSetNoPageList", params); + return http.get("getPersonSetNoPageList", params,{loading:false}); }, /** 获取单页详情 */ detail(params: any) { - return http.get("getStartVideoLive", params); + return http.get("getStartVideoLive", params,{loading:false}); }, /** 获取单页详情 */ stopUrl(params: any) { - return http.get("getStopVideoLive", params); + return http.get("getStopVideoLive", params,{loading:false}); }, }; diff --git a/SafeCampus.WEB/src/views/screen/classroom.vue b/SafeCampus.WEB/src/views/screen/classroom.vue index 94a0094..0ccaaa3 100644 --- a/SafeCampus.WEB/src/views/screen/classroom.vue +++ b/SafeCampus.WEB/src/views/screen/classroom.vue @@ -34,18 +34,18 @@
- +
- +
- +
- +
@@ -63,17 +63,15 @@ const screenData = ref({}); const classInfo = ref({}); const ready = ref(false); const classRoom = ref({}); -const alarmList = ref([]); -const rollCall = ref([]); -const statisti = ref({ - labale: [], - value: [] -}); +const stuEnterListRef = ref(null); +const classStatisticsRef = ref(null); +const classNoticeRef = ref(null); +const classAnalysisRef = ref(null); const getClassRoomInfo = obj => { - classInfo.value = obj; + if (obj) classInfo.value = obj; + if (!timer) refresh(getClassRoomInfo, 60000); // 归寝人数信息 - ready.value = false; - screenApi.getSmartClassroom({ personSetId: obj.value }).then(res => { + return screenApi.getSmartClassroom({ personSetId: classInfo.value.value }).then(res => { if (res.code == 200) { screenData.value = res.data; classRoom.value = screenData.value.classRoom; @@ -84,10 +82,6 @@ const getClassRoomInfo = obj => { classRoom.value.isClassing = true; } showRts(classRoom.value.cameraId); - classInfo.value = screenData.value.classInfo; - alarmList.value = screenData.value.alarmList; - rollCall.value = screenData.value.rollCall; - statisti.value = screenData.value.statisti; console.log(res.data); ready.value = true; nextTick(() => { @@ -96,6 +90,17 @@ const getClassRoomInfo = obj => { } }); }; +// 定时刷新 +var timer = ""; +const refresh = (fn = () => {}, time = 5000) => { + timer = setInterval(async () => { + await fn(); + stuEnterListRef.value.init(); + classStatisticsRef.value.init(); + classNoticeRef.value.init(); + classAnalysisRef.value.init(); + }, time); +}; // 监控 const streamId = ref(""); const videoToken = ref(""); @@ -128,6 +133,7 @@ const stopUrl = () => { }; onUnmounted(() => { stopUrl(); + timer && clearInterval(timer); }); \ No newline at end of file diff --git a/SafeCampus.WEB/src/views/screen/component/classroom/classNotice.vue b/SafeCampus.WEB/src/views/screen/component/classroom/classNotice.vue index 83f6a5a..e10cff8 100644 --- a/SafeCampus.WEB/src/views/screen/component/classroom/classNotice.vue +++ b/SafeCampus.WEB/src/views/screen/component/classroom/classNotice.vue @@ -30,7 +30,13 @@ const props = defineProps({ }); const alarmList = ref([]); onMounted(() => { + init(); +}); +const init = () => { alarmList.value = props.screenData.alarmList || []; +}; +defineExpose({ + init }); \ No newline at end of file diff --git a/SafeCampus.WEB/src/views/screen/component/classroom/stuEnterList.vue b/SafeCampus.WEB/src/views/screen/component/classroom/stuEnterList.vue index 653aea8..f136e30 100644 --- a/SafeCampus.WEB/src/views/screen/component/classroom/stuEnterList.vue +++ b/SafeCampus.WEB/src/views/screen/component/classroom/stuEnterList.vue @@ -37,11 +37,17 @@ const props = defineProps({ }); const studentList = ref([]); onMounted(() => { + init(); +}); +const init = () => { studentList.value = props.screenData.studentList; studentList.value = studentList.value.map(e => { e.faceUrl = e.faces.length ? e.faces[0].faceUrl : ""; return e; }); +}; +defineExpose({ + init });