diff --git a/package-lock.json b/package-lock.json index dcd1602..eb53ca0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13844,6 +13844,49 @@ "webpack-merge": "^5.7.3", "webpack-virtual-modules": "^0.4.2", "whatwg-fetch": "^3.6.2" + }, + "dependencies": { + "@vue/vue-loader-v15": { + "version": "npm:vue-loader@15.10.1", + "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-15.10.1.tgz", + "integrity": "sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==", + "dev": true, + "requires": { + "@vue/component-compiler-utils": "^3.1.0", + "hash-sum": "^1.0.2", + "loader-utils": "^1.1.0", + "vue-hot-reload-api": "^2.3.0", + "vue-style-loader": "^4.1.0" + }, + "dependencies": { + "hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", + "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", + "dev": true + } + } + }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } } }, "@vue/cli-shared-utils": { @@ -14008,47 +14051,6 @@ } } }, - "@vue/vue-loader-v15": { - "version": "npm:vue-loader@15.10.1", - "resolved": "https://registry.npmmirror.com/vue-loader/-/vue-loader-15.10.1.tgz", - "integrity": "sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==", - "dev": true, - "requires": { - "@vue/component-compiler-utils": "^3.1.0", - "hash-sum": "^1.0.2", - "loader-utils": "^1.1.0", - "vue-hot-reload-api": "^2.3.0", - "vue-style-loader": "^4.1.0" - }, - "dependencies": { - "hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", - "dev": true - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, "@vue/web-component-wrapper": { "version": "1.3.0", "resolved": "https://registry.npmmirror.com/@vue/web-component-wrapper/-/web-component-wrapper-1.3.0.tgz", @@ -15567,7 +15569,7 @@ }, "dom7": { "version": "2.1.5", - "resolved": "https://registry.npmmirror.com/dom7/-/dom7-2.1.5.tgz", + "resolved": "https://registry.npmjs.org/dom7/-/dom7-2.1.5.tgz", "integrity": "sha512-xnhwVgyOh3eD++/XGtH+5qBwYTgCm0aW91GFgPJ3XG+jlsRLyJivnbP0QmUBFhI+Oaz9FV0s7cxgXHezwOEBYA==", "dev": true, "requires": { @@ -15576,7 +15578,7 @@ "dependencies": { "ssr-window": { "version": "2.0.0", - "resolved": "https://registry.npmmirror.com/ssr-window/-/ssr-window-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-2.0.0.tgz", "integrity": "sha512-NXzN+/HPObKAx191H3zKlYomE5WrVIkoCB5IaSdvKokxTpjBdWfr0RaP+1Z5KOfDT0ZVz+2tdtiBkhsEQ9p+0A==", "dev": true } @@ -19406,7 +19408,7 @@ }, "ssr-window": { "version": "1.0.1", - "resolved": "https://registry.npmmirror.com/ssr-window/-/ssr-window-1.0.1.tgz", + "resolved": "https://registry.npmjs.org/ssr-window/-/ssr-window-1.0.1.tgz", "integrity": "sha512-dgFqB+f00LJTEgb6UXhx0h+SrG50LJvti2yMKMqAgzfUmUXZrLSv2fjULF7AWGwK25EXu8+smLR3jYsJQChPsg==", "dev": true }, diff --git a/src/App.vue b/src/App.vue index 22b276c..0aa4650 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,5 +1,5 @@ diff --git a/src/assets/css/theme.less b/src/assets/css/theme.less index 0a3f412..ab3dff2 100644 --- a/src/assets/css/theme.less +++ b/src/assets/css/theme.less @@ -22,8 +22,8 @@ .el-menu-item:not(.is-disabled):focus, .el-menu-item:not(.is-disabled):hover { color: #20a0ff; - background-color: @color-white; - border-bottom: 2px solid @color-white; + background-color: #f2f2f2; + border-bottom: 2px solid #f2f2f2; i { color: #20a0ff !important; @@ -33,8 +33,8 @@ .el-submenu:focus .el-submenu__title, .el-submenu:hover .el-submenu__title { color: #20a0ff !important; - background-color: @color-white; - border-bottom: 2px solid @color-white; + background-color: #f2f2f2; + border-bottom: 2px solid #f2f2f2; i { color: #20a0ff !important; @@ -42,9 +42,9 @@ } } .el-menu--horizontal > .el-menu-item.is-active { - border-bottom: 2px solid #fff; - color: #20a0ff; - background-color: #fff; + border-bottom: 2px solid #fff !important; + color: #20a0ff !important; + background-color: #fff !important; i { color: #20a0ff !important; } diff --git a/src/assets/img/nopic.jpg b/src/assets/img/nopic.jpg index df8a44e..bbacbe5 100644 Binary files a/src/assets/img/nopic.jpg and b/src/assets/img/nopic.jpg differ diff --git a/src/assets/img/nopic1.jpg b/src/assets/img/nopic1.jpg new file mode 100644 index 0000000..df8a44e Binary files /dev/null and b/src/assets/img/nopic1.jpg differ diff --git a/src/components/common/Header.vue b/src/components/common/Header.vue index b3d7c76..e9b61e3 100644 --- a/src/components/common/Header.vue +++ b/src/components/common/Header.vue @@ -4,15 +4,6 @@
- - - -
@@ -38,7 +29,6 @@
diff --git a/src/components/common/Home.vue b/src/components/common/Home.vue index 3c9ea41..0c1d3ea 100644 --- a/src/components/common/Home.vue +++ b/src/components/common/Home.vue @@ -1,16 +1,14 @@ \ No newline at end of file + diff --git a/src/views/pictureRotation/index.vue b/src/views/pictureRotation/index.vue index f2aaa9c..83d3630 100644 --- a/src/views/pictureRotation/index.vue +++ b/src/views/pictureRotation/index.vue @@ -1,221 +1,368 @@ \ No newline at end of file + diff --git a/src/views/realTimeMonitor/index.vue b/src/views/realTimeMonitor/index.vue index 0d198fa..d2b9903 100644 --- a/src/views/realTimeMonitor/index.vue +++ b/src/views/realTimeMonitor/index.vue @@ -55,6 +55,7 @@ v-model="channelValue" placeholder="请选择" @change="changeChannelId" + multiple >
- +

操作项

时间表设置 - 手动拍照 获取GPS位置 + + 装置信息 + + + GPS开关 + + + 开启GPS + 关闭GPS + + + 声光报警 装置复位历史图片 - - - 装置信息 + +
- + @@ -127,13 +128,14 @@ import { getdyTreeListJoggle, getChannelByTermidJoggle, getTerminalPhotoListJoggle, + getTermGPSJoggle, + setTermGPSJoggle, + getLatestPhotoJoggle, } from "@/utils/api/index"; import carouselChart from "../components/carouselChart.vue"; - import setschedule from "./components/setschedule.vue"; import deviceUpgrade from "./components/deviceUpgrade.vue"; import pictureTags from "./components/pictureTags.vue"; - export default { components: { carouselChart, @@ -152,15 +154,27 @@ export default { label: "name", }, currentNodekey: "", //默认选中的节点树, - channelId: "", //通道id + cmdid: "", //装置id, + id: "", //通道装置id channelList: "", //通道数据 channelOption: [], //通道分类 - channelValue: "", + channelValue: [], terminalPhoto: [], //获取拍照装置当前数据 dateValue: "", //日期 nopicPath: require("@/assets/img/nopic.jpg"), loadingBg: true, loading: true, + GPSValue: "", + GpsOption: [ + { + value: "1", + label: "开启", + }, + { + value: "0", + label: "关闭", + }, + ], }; }, watch: {}, @@ -169,7 +183,6 @@ export default { created() { this.getLineTreeList(); this.getDateTime(); - console.log(this.dateValue); }, methods: { //获取当前时间 @@ -178,7 +191,6 @@ export default { }, //选择时间 changedate() { - console.log(this.dateValue); console.log(this.channelList); this.getTerminalPhotoList( this.channelList[0].channelid, @@ -197,12 +209,14 @@ export default { if (this.lineTreeData[0].list[0].list.length > 0) { this.currentNodekey = this.lineTreeData[0].list[0].list[0].id; //第一个数据 console.log(this.currentNodekey); + this.cmdid = this.lineTreeData[0].list[0].list[0].cmdid; + console.log(this.cmdid); this.$nextTick(() => { this.$refs.tree.setCurrentKey(this.currentNodekey); //一定要加这个选中了否则样式没有出来 console.log(this.currentNodekey); - this.channelId = this.currentNodekey; - console.log(this.channelId); - this.getChannelList(this.channelId); //获取通道id接口 + this.id = this.currentNodekey; + console.log(this.id); + this.getChannelList(this.id); //获取通道id接口 }); } this.loadingBg = false; @@ -228,11 +242,11 @@ export default { console.log(res); this.channelList = res.data.list; console.log(this.channelList); - this.getTerminalPhotoList( - this.channelList[0].channelid, - this.dateValue, - this.channelList[0].termId - ); //获取图片列表是传当前设备的 id 和termid + // this.getTerminalPhotoList( + // this.channelList[0].channelid, + // this.dateValue, + // this.channelList[0].termId + // ); //获取图片列表是传当前设备的 id 和termid this.channelOption = []; this.channelList.forEach((item) => { this.channelOption.push({ @@ -299,20 +313,78 @@ export default { }); }, //装置升级 - handleUpGrade() { - this.$refs.deviceupgrade_ref.display(); + // handleUpGrade() { + // this.$refs.deviceupgrade_ref.display(); + // }, + //切换gps开启关闭 + changeGPS(val) { + console.log(val); + setTermGPSJoggle({ gpsstatus: val, termid: this.channelId }) + .then((res) => { + console.log(res); + if (val == 0) { + this.$message("关闭GPS"); + } else { + this.$message({ + message: "成功开启GPS", + type: "success", + }); + } + }) + .catch((err) => { + console.log(err); //代码错误、请求失败捕获 + }); + }, + handleCommand(command) { + switch (command) { + case "open": //开启 + this.changeGPS(1); + break; + case "close": //关闭 + this.changeGPS(0); + break; + } }, //获取GPS位置 handleShowGPS() { - this.$alert("这是一段内容", "标题名称", { - confirmButtonText: "确定", - callback: (action) => { - this.$message({ - type: "info", - message: `action: ${action}`, - }); - }, - }); + getTermGPSJoggle({ termId: this.channelId }) + .then((res) => { + console.log(res); + this.$alert( + "

" + + `${res.data.longitude}` + + "

" + + `${res.data.latitude}` + + "

" + + `${res.data.radius}` + + "

", + "GPS位置", + { + dangerouslyUseHTMLString: true, + customClass: "messageGps", + } + ); + }) + .catch((err) => { + console.log(err); //代码错误、请求失败捕获 + }); + }, + //手动拍照 + handleShowPic() { + console.log(this.channelId); + console.log(this.cmdid); + getLatestPhotoJoggle({ + captureType: 0, + channel: this.channelId, + cmdid: this.cmdid, + preset: 255, + }) + .then((res) => { + console.log(res); + }) + .catch((err) => { + console.log(err); //代码错误、请求失败捕获 + }); }, //图片绘制 handlePanel() { @@ -347,11 +419,6 @@ export default { overflow: auto; padding: 16px 0px; .el-tree { - .custom-tree-node { - .iconfont { - // color: #666; - } - } .el-tree-node__content { height: 40px; font-size: 12px; @@ -419,4 +486,18 @@ export default { } } } +.messageGps { + .el-message-box__message { + p { + line-height: 32px; + font-size: 16px; + label { + margin-right: 4px; + } + span { + color: #333; + } + } + } +} diff --git a/src/views/realTimeSearch/index.vue b/src/views/realTimeSearch/index.vue new file mode 100644 index 0000000..3f2f879 --- /dev/null +++ b/src/views/realTimeSearch/index.vue @@ -0,0 +1,17 @@ + + + + diff --git a/src/views/stritl/index copy.vue b/src/views/stritl/index copy.vue new file mode 100644 index 0000000..433303a --- /dev/null +++ b/src/views/stritl/index copy.vue @@ -0,0 +1,502 @@ + + + + + diff --git a/src/views/stritl/index.vue b/src/views/stritl/index.vue index 433303a..f79e003 100644 --- a/src/views/stritl/index.vue +++ b/src/views/stritl/index.vue @@ -1,502 +1,13 @@ - + diff --git a/src/views/system/userManagement.vue b/src/views/system/userManagement.vue new file mode 100644 index 0000000..5f26a13 --- /dev/null +++ b/src/views/system/userManagement.vue @@ -0,0 +1,13 @@ + + + + +