diff --git a/src/api/index.ts b/src/api/index.ts index fae5aaf..c6da9c8 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -27,7 +27,8 @@ } const request = axios.create({ - baseURL: config.baseUrl, + // baseURL: config.baseUrl, + baseURL: window.localStorage.getItem('baseURL')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/api/index.ts b/src/api/index.ts index fae5aaf..c6da9c8 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -27,7 +27,8 @@ } const request = axios.create({ - baseURL: config.baseUrl, + // baseURL: config.baseUrl, + baseURL: window.localStorage.getItem('baseURL')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/api/indexMedia.ts b/src/api/indexMedia.ts index 259299e..8b9ecba 100644 --- a/src/api/indexMedia.ts +++ b/src/api/indexMedia.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -29,7 +29,8 @@ } const request = axios.create({ - baseURL: config.mediaBaseUrl, + // baseURL: config.mediaBaseUrl, + baseURL: window.localStorage.getItem('mediaBaseUrl')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/api/index.ts b/src/api/index.ts index fae5aaf..c6da9c8 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -27,7 +27,8 @@ } const request = axios.create({ - baseURL: config.baseUrl, + // baseURL: config.baseUrl, + baseURL: window.localStorage.getItem('baseURL')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/api/indexMedia.ts b/src/api/indexMedia.ts index 259299e..8b9ecba 100644 --- a/src/api/indexMedia.ts +++ b/src/api/indexMedia.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -29,7 +29,8 @@ } const request = axios.create({ - baseURL: config.mediaBaseUrl, + // baseURL: config.mediaBaseUrl, + baseURL: window.localStorage.getItem('mediaBaseUrl')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/main.ts b/src/main.ts index 7b17097..ee3d074 100644 --- a/src/main.ts +++ b/src/main.ts @@ -51,6 +51,8 @@ maxZoom: result.data.maxZoom, zoom: result.data.zoom, } + window.localStorage.setItem('baseURL', result.data.baseUrl) + window.localStorage.setItem('mediaBaseUrl', result.data.mediaBaseUrl) app.mount('#app') }).catch((error) => { console.error(`get baseConfig error...${error}`) diff --git a/src/api/index.ts b/src/api/index.ts index fae5aaf..c6da9c8 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -27,7 +27,8 @@ } const request = axios.create({ - baseURL: config.baseUrl, + // baseURL: config.baseUrl, + baseURL: window.localStorage.getItem('baseURL')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/api/indexMedia.ts b/src/api/indexMedia.ts index 259299e..8b9ecba 100644 --- a/src/api/indexMedia.ts +++ b/src/api/indexMedia.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -29,7 +29,8 @@ } const request = axios.create({ - baseURL: config.mediaBaseUrl, + // baseURL: config.mediaBaseUrl, + baseURL: window.localStorage.getItem('mediaBaseUrl')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/main.ts b/src/main.ts index 7b17097..ee3d074 100644 --- a/src/main.ts +++ b/src/main.ts @@ -51,6 +51,8 @@ maxZoom: result.data.maxZoom, zoom: result.data.zoom, } + window.localStorage.setItem('baseURL', result.data.baseUrl) + window.localStorage.setItem('mediaBaseUrl', result.data.mediaBaseUrl) app.mount('#app') }).catch((error) => { console.error(`get baseConfig error...${error}`) diff --git a/src/router/modules/home.ts b/src/router/modules/home.ts index 33e0ae7..d3fb988 100644 --- a/src/router/modules/home.ts +++ b/src/router/modules/home.ts @@ -57,9 +57,8 @@ { path: 'page', name: 'page', - // component: () => import('@/views/ycjg/ssjk/index-noPlugin.vue'), // 商海康大华 - // component: () => import('@/views/ycjg/ssjk/index-streaming.vue'), // 商流媒体-dtt - component: () => import('@/views/ycjg/ssjk/index-media.vue'), // 商流媒体 + component: () => import('@/views/ycjg/ssjk/index-noPlugin.vue'), // 商海康大华 + // component: () => import('@/views/ycjg/ssjk/index-media.vue'), // 商流媒体 // component: () => import('@/views/ycjg/ssjk/index.vue'), // 国 meta: { title: '实时监控', diff --git a/src/api/index.ts b/src/api/index.ts index fae5aaf..c6da9c8 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -27,7 +27,8 @@ } const request = axios.create({ - baseURL: config.baseUrl, + // baseURL: config.baseUrl, + baseURL: window.localStorage.getItem('baseURL')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/api/indexMedia.ts b/src/api/indexMedia.ts index 259299e..8b9ecba 100644 --- a/src/api/indexMedia.ts +++ b/src/api/indexMedia.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -29,7 +29,8 @@ } const request = axios.create({ - baseURL: config.mediaBaseUrl, + // baseURL: config.mediaBaseUrl, + baseURL: window.localStorage.getItem('mediaBaseUrl')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/main.ts b/src/main.ts index 7b17097..ee3d074 100644 --- a/src/main.ts +++ b/src/main.ts @@ -51,6 +51,8 @@ maxZoom: result.data.maxZoom, zoom: result.data.zoom, } + window.localStorage.setItem('baseURL', result.data.baseUrl) + window.localStorage.setItem('mediaBaseUrl', result.data.mediaBaseUrl) app.mount('#app') }).catch((error) => { console.error(`get baseConfig error...${error}`) diff --git a/src/router/modules/home.ts b/src/router/modules/home.ts index 33e0ae7..d3fb988 100644 --- a/src/router/modules/home.ts +++ b/src/router/modules/home.ts @@ -57,9 +57,8 @@ { path: 'page', name: 'page', - // component: () => import('@/views/ycjg/ssjk/index-noPlugin.vue'), // 商海康大华 - // component: () => import('@/views/ycjg/ssjk/index-streaming.vue'), // 商流媒体-dtt - component: () => import('@/views/ycjg/ssjk/index-media.vue'), // 商流媒体 + component: () => import('@/views/ycjg/ssjk/index-noPlugin.vue'), // 商海康大华 + // component: () => import('@/views/ycjg/ssjk/index-media.vue'), // 商流媒体 // component: () => import('@/views/ycjg/ssjk/index.vue'), // 国 meta: { title: '实时监控', diff --git a/src/views/ycjg/ssjk/control-noPlugin.vue b/src/views/ycjg/ssjk/control-noPlugin.vue index 7cd843f..480d611 100644 --- a/src/views/ycjg/ssjk/control-noPlugin.vue +++ b/src/views/ycjg/ssjk/control-noPlugin.vue @@ -197,7 +197,11 @@ verticalSpeed: '30', zoomSpeed: '30', } - ptzControl(deviceData.value.nvrIndexCode, deviceData.value.cameraIndexCode, params).then(() => {}) + ptzControl(deviceData.value.nvrIndexCode, deviceData.value.cameraIndexCode, params).then((res) => { + if (res.code === 500) { + ElMessage.error(res.msg) + } + }) } // 上下左右 diff --git a/src/api/index.ts b/src/api/index.ts index fae5aaf..c6da9c8 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -27,7 +27,8 @@ } const request = axios.create({ - baseURL: config.baseUrl, + // baseURL: config.baseUrl, + baseURL: window.localStorage.getItem('baseURL')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/api/indexMedia.ts b/src/api/indexMedia.ts index 259299e..8b9ecba 100644 --- a/src/api/indexMedia.ts +++ b/src/api/indexMedia.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -29,7 +29,8 @@ } const request = axios.create({ - baseURL: config.mediaBaseUrl, + // baseURL: config.mediaBaseUrl, + baseURL: window.localStorage.getItem('mediaBaseUrl')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/main.ts b/src/main.ts index 7b17097..ee3d074 100644 --- a/src/main.ts +++ b/src/main.ts @@ -51,6 +51,8 @@ maxZoom: result.data.maxZoom, zoom: result.data.zoom, } + window.localStorage.setItem('baseURL', result.data.baseUrl) + window.localStorage.setItem('mediaBaseUrl', result.data.mediaBaseUrl) app.mount('#app') }).catch((error) => { console.error(`get baseConfig error...${error}`) diff --git a/src/router/modules/home.ts b/src/router/modules/home.ts index 33e0ae7..d3fb988 100644 --- a/src/router/modules/home.ts +++ b/src/router/modules/home.ts @@ -57,9 +57,8 @@ { path: 'page', name: 'page', - // component: () => import('@/views/ycjg/ssjk/index-noPlugin.vue'), // 商海康大华 - // component: () => import('@/views/ycjg/ssjk/index-streaming.vue'), // 商流媒体-dtt - component: () => import('@/views/ycjg/ssjk/index-media.vue'), // 商流媒体 + component: () => import('@/views/ycjg/ssjk/index-noPlugin.vue'), // 商海康大华 + // component: () => import('@/views/ycjg/ssjk/index-media.vue'), // 商流媒体 // component: () => import('@/views/ycjg/ssjk/index.vue'), // 国 meta: { title: '实时监控', diff --git a/src/views/ycjg/ssjk/control-noPlugin.vue b/src/views/ycjg/ssjk/control-noPlugin.vue index 7cd843f..480d611 100644 --- a/src/views/ycjg/ssjk/control-noPlugin.vue +++ b/src/views/ycjg/ssjk/control-noPlugin.vue @@ -197,7 +197,11 @@ verticalSpeed: '30', zoomSpeed: '30', } - ptzControl(deviceData.value.nvrIndexCode, deviceData.value.cameraIndexCode, params).then(() => {}) + ptzControl(deviceData.value.nvrIndexCode, deviceData.value.cameraIndexCode, params).then((res) => { + if (res.code === 500) { + ElMessage.error(res.msg) + } + }) } // 上下左右 diff --git a/src/views/ycjg/ssjk/index-media.vue b/src/views/ycjg/ssjk/index-media.vue index 787d685..8bc6452 100644 --- a/src/views/ycjg/ssjk/index-media.vue +++ b/src/views/ycjg/ssjk/index-media.vue @@ -42,6 +42,10 @@ const currentCameras = [{}, {}, {}, {}] as any function handleNodeClick(data: any, node: any, self: any) { + if (data.device.deviceStatusName === '离线') { + ElMessage.warning(`设备 ${data.device.monitorName} 离线`) + return false + } const now = new Date().getTime() if (now - treeClickCount < 300) { // 双击事件的判断,300毫秒内重复点击 console.log('Double click on:', data) diff --git a/src/api/index.ts b/src/api/index.ts index fae5aaf..c6da9c8 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -27,7 +27,8 @@ } const request = axios.create({ - baseURL: config.baseUrl, + // baseURL: config.baseUrl, + baseURL: window.localStorage.getItem('baseURL')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/api/indexMedia.ts b/src/api/indexMedia.ts index 259299e..8b9ecba 100644 --- a/src/api/indexMedia.ts +++ b/src/api/indexMedia.ts @@ -1,7 +1,7 @@ import axios from 'axios' // import qs from 'qs' import { ElLoading, ElMessage } from 'element-plus' -import config from '../../public/config/config.json' +// import config from '../../public/config/config.json' import router from '@/router/index' import useUserStore from '@/store/modules/user' @@ -29,7 +29,8 @@ } const request = axios.create({ - baseURL: config.mediaBaseUrl, + // baseURL: config.mediaBaseUrl, + baseURL: window.localStorage.getItem('mediaBaseUrl')!, // baseURL: import.meta.env.DEV && import.meta.env.VITE_OPEN_PROXY === 'true' ? '/proxy/' : import.meta.env.VITE_APP_API_BASEURL, timeout: 1000 * 60, responseType: 'json', diff --git a/src/main.ts b/src/main.ts index 7b17097..ee3d074 100644 --- a/src/main.ts +++ b/src/main.ts @@ -51,6 +51,8 @@ maxZoom: result.data.maxZoom, zoom: result.data.zoom, } + window.localStorage.setItem('baseURL', result.data.baseUrl) + window.localStorage.setItem('mediaBaseUrl', result.data.mediaBaseUrl) app.mount('#app') }).catch((error) => { console.error(`get baseConfig error...${error}`) diff --git a/src/router/modules/home.ts b/src/router/modules/home.ts index 33e0ae7..d3fb988 100644 --- a/src/router/modules/home.ts +++ b/src/router/modules/home.ts @@ -57,9 +57,8 @@ { path: 'page', name: 'page', - // component: () => import('@/views/ycjg/ssjk/index-noPlugin.vue'), // 商海康大华 - // component: () => import('@/views/ycjg/ssjk/index-streaming.vue'), // 商流媒体-dtt - component: () => import('@/views/ycjg/ssjk/index-media.vue'), // 商流媒体 + component: () => import('@/views/ycjg/ssjk/index-noPlugin.vue'), // 商海康大华 + // component: () => import('@/views/ycjg/ssjk/index-media.vue'), // 商流媒体 // component: () => import('@/views/ycjg/ssjk/index.vue'), // 国 meta: { title: '实时监控', diff --git a/src/views/ycjg/ssjk/control-noPlugin.vue b/src/views/ycjg/ssjk/control-noPlugin.vue index 7cd843f..480d611 100644 --- a/src/views/ycjg/ssjk/control-noPlugin.vue +++ b/src/views/ycjg/ssjk/control-noPlugin.vue @@ -197,7 +197,11 @@ verticalSpeed: '30', zoomSpeed: '30', } - ptzControl(deviceData.value.nvrIndexCode, deviceData.value.cameraIndexCode, params).then(() => {}) + ptzControl(deviceData.value.nvrIndexCode, deviceData.value.cameraIndexCode, params).then((res) => { + if (res.code === 500) { + ElMessage.error(res.msg) + } + }) } // 上下左右 diff --git a/src/views/ycjg/ssjk/index-media.vue b/src/views/ycjg/ssjk/index-media.vue index 787d685..8bc6452 100644 --- a/src/views/ycjg/ssjk/index-media.vue +++ b/src/views/ycjg/ssjk/index-media.vue @@ -42,6 +42,10 @@ const currentCameras = [{}, {}, {}, {}] as any function handleNodeClick(data: any, node: any, self: any) { + if (data.device.deviceStatusName === '离线') { + ElMessage.warning(`设备 ${data.device.monitorName} 离线`) + return false + } const now = new Date().getTime() if (now - treeClickCount < 300) { // 双击事件的判断,300毫秒内重复点击 console.log('Double click on:', data) diff --git a/src/views/ycjg/ssjk/index-noPlugin.vue b/src/views/ycjg/ssjk/index-noPlugin.vue index 58338f5..399c2b2 100644 --- a/src/views/ycjg/ssjk/index-noPlugin.vue +++ b/src/views/ycjg/ssjk/index-noPlugin.vue @@ -2,11 +2,11 @@ import type { Ref } from 'vue' import { getCurrentInstance, nextTick, reactive, ref } from 'vue' import { ElMessage, ElMessageBox } from 'element-plus' +import { debounce } from 'lodash-es' import { videoTree } from '@/api/ycjg/aqbb' -import {initPlugin, login, logout, preview, stop} from "@/utils/HKVideo" -import { loginDH } from "@/utils/DHVideo" -import { log } from "@/utils/log" -import {debounce} from "lodash-es"; +import { initPlugin, login, logout, preview, stop } from '@/utils/HKVideo' +import { loginDH } from '@/utils/DHVideo' +import { log } from '@/utils/log' const router = useRouter() const treeRef: any = ref(null) @@ -76,6 +76,10 @@ } function handleNodeClick(data: any, node: any, self: any) { + if (data.device.deviceStatusName === '离线') { + ElMessage.warning(`设备 ${data.device.monitorName} 离线`) + return false + } const now = new Date().getTime() if (now - treeClickCount < 300) { // 双击事件的判断,300毫秒内重复点击 if (data.children.length !== 0) { // 点击父亲 @@ -154,6 +158,19 @@ treeRef.value.filter(newVal) }) +function solveData(data: any) { + data.forEach((item: any) => { + if (item.device) { + item.name = `${item.name} (${item.device.deviceStatusName})` + console.log('修改后的name', item.name) + } + if (item.children && item.children.length) { + solveData(item.children) + } + }) + return data +} + onBeforeUnmount(() => { unwatch() currentCameras.forEach((item: any, index: any) => { @@ -168,6 +185,9 @@ videoTree().then((response) => { if (response.code === 200) { data.value = response.data + console.log('获取树的列表', data.value) + data.value = solveData(data.value) + console.log('修改后树的列表', data.value) } }) setTimeout(() => { @@ -178,41 +198,50 @@