diff --git a/web/public/webconfig.js b/web/public/webconfig.js index bdd0efe..1657524 100644 --- a/web/public/webconfig.js +++ b/web/public/webconfig.js @@ -3,7 +3,7 @@ window.webConfig = { "VITEAPPBASEWEB": "https://edu.mmhyvision.com/vision", "webApiBaseApp": "https://edu.mmhyvision.com/parent", "mapUrl":"http://192.168.1.208", - + "WebSocketUrl":"ws://192.168.1.208:8087", "title": "文档与数据管理系统", "bgImg": "beijing.jpg", "loginLogo": "uplogo.png", diff --git a/web/src/store/modules/user.ts b/web/src/store/modules/user.ts index 2064c9d..8ddfc9e 100644 --- a/web/src/store/modules/user.ts +++ b/web/src/store/modules/user.ts @@ -18,6 +18,7 @@ export const useUserStore = defineStore('user', () => { const perms = ref>([]); // 用户权限编码集合 → 判断按钮权限 const badgeval = ref('') const webApiBaseUrl: any = process.env.NODE_ENV == 'development' ? import.meta.env.VITE_APP_BASE_API : window.webConfig.webApiBaseUrl + const WebSocketUrl:any = window.webConfig.WebSocketUrl const webApiBaseHttp: any = process.env.NODE_ENV == 'development' ? import.meta.env.VITE_APP_BASE_WEB : window.webConfig.VITEAPPBASEWEB const mapUrl: any = window.webConfig.mapUrl const webApiBaseApp: any = window.webConfig.webApiBaseApp @@ -117,6 +118,7 @@ export const useUserStore = defineStore('user', () => { resetToken, badgeval, webApiBaseUrl, + WebSocketUrl, mapUrl, webApiBaseHttp, webApiBaseApp, diff --git a/web/src/views/special/document/index.vue b/web/src/views/special/document/index.vue index dd07cfd..b6d17d3 100644 --- a/web/src/views/special/document/index.vue +++ b/web/src/views/special/document/index.vue @@ -5,14 +5,15 @@ export default { @@ -784,10 +807,12 @@ function tonstatus(){
- {{ buttonmsg + {{ buttonmsg1 }} + {{ buttonmsg }} - {{buttonmsg1}} +
@@ -855,12 +880,13 @@ function tonstatus(){ - + - +
@@ -870,8 +896,8 @@ function tonstatus(){ - + @@ -900,12 +926,13 @@ function tonstatus(){ - + - + - + - + - + diff --git a/web/src/views/testdata/datamanagement/index.vue b/web/src/views/testdata/datamanagement/index.vue index 5525d2c..18b3fc6 100644 --- a/web/src/views/testdata/datamanagement/index.vue +++ b/web/src/views/testdata/datamanagement/index.vue @@ -50,9 +50,13 @@ const { openRow } = useFileData(); const userStore = useUserStore(); onMounted(() => { getProject() + }); onUnmounted(() => { closeSSE() + if (ws1 != null) { + ws1.close() + } }) //拖动条 const vMove = { @@ -72,8 +76,25 @@ const vMove = { }; } } -//左侧树的选择框 const projectId = ref() +let ws1 +function setupWebSocket() { + ws1.onopen = () => { + console.log('websocket连接成功') + }; + ws1.onerror = (error) => { + }; + ws1.onmessage = (e) => { + console.log('websocket接收到消息',e) + tonstatus() + } + ws1.onclose = () => { + + }; + +} +//左侧树的选择框 + const projectArr = ref([]) const taskName = ref('') //获取所有项目 @@ -82,6 +103,8 @@ function getProject() { projectArr.value = res.data projectId.value = projectArr.value[0].id taskName.value = projectArr.value[0].taskName + ws1 = new WebSocket(userStore.WebSocketUrl + '/websocket/' + 'taskId' + projectId.value ) + setupWebSocket() gettreedata() tonstatus() }) @@ -97,7 +120,7 @@ const buttonmsg = ref('扫描试验数据') function tonstatus() { //sao obtaintestData({ id: projectId.value }).then((res: any) => { - if (res.msg == '1') { + if (res.data.status == '1') { tonloading.value = false buttonmsg.value = '扫描试验数据' } else { diff --git a/web/src/views/testdata/fileSynchronization/index.vue b/web/src/views/testdata/fileSynchronization/index.vue index 809987a..d2e1efd 100644 --- a/web/src/views/testdata/fileSynchronization/index.vue +++ b/web/src/views/testdata/fileSynchronization/index.vue @@ -8,6 +8,7 @@ export default { import { ref, onMounted, nextTick, defineAsyncComponent, onBeforeUnmount } from "vue"; import { Search } from '@element-plus/icons-vue' import { ElMessageBox, ElMessage } from "element-plus"; +import { useUserStore } from '@/store/modules/user'; import { tstaskList, getTsNodesTree, tsFilesPage, deleteTsFilesByIds } from "@/api/datamanagement"; import { listLocalAndBackup, compare, compareLocalList, automaticFileBackupByIds, compareMd5List, compareMinioList, compareLocal, compareMd5, compareMinio, uploadToBackup, downloadToLocal, deleteTsFilesById, automaticFileBackup, obtainUrl, listBackupTree, listLocalTree,automaticFileBackupData } from "@/api/fileSynchronization"; import { debounce } from 'lodash-es'; @@ -25,6 +26,23 @@ import MarkdownViewerDialogAsyncLoading from "@/components/file/preview/Markdown const { dialogVideoVisible, dialogTextVisible, dialogPdfVisible, dialogOfficeVisible, dialog3dVisible } = useFilePreview(); const { openRow } = useFileData(); +const userStore = useUserStore(); +let ws1 = new WebSocket(userStore.WebSocketUrl + '/websocket/' + 'backups' ) +function setupWebSocket() { + ws1.onopen = () => { + console.log('websocket连接成功') + }; + ws1.onerror = (error) => { + }; + ws1.onmessage = (e) => { + console.log('websocket接收到消息',e) + tonstatus() + } + ws1.onclose = () => { + + }; + +} //左侧树的选择框 const projectId = ref() @@ -871,6 +889,7 @@ function bfclick(type: any) { } onMounted(() => { getProject() + setupWebSocket() }); // 组件卸载时取消防抖(可选) // onBeforeUnmount(() => {