颜色修改

master
fanluyan 2 years ago
parent fde176b539
commit 53eecb8c88

@ -1,17 +1,16 @@
<template>
<div id="app" class="blueStyle">
<router-view> </router-view>
</div>
<div id="app" class="orangeStyle">
<router-view> </router-view>
</div>
</template>
<script>
export default {
name: 'App',
data() {
return {};
},
mounted() {}
name: "App",
data() {
return {};
},
mounted() {},
};
</script>
<style lang="less">
</style>
<style lang="less"></style>

@ -1,260 +1,276 @@
//蓝色主题
.blueStyle {
.header {
background: #20a0ff;
}
.el-menu {
background: #20a0ff;
i {
color: @color-white !important;
}
.header {
background: #20a0ff;
}
.el-menu-item {
color: @color-white;
}
.el-menu {
background: #20a0ff;
.el-menu-item.is-active {
color: @color-white;
}
i {
color: @color-white !important;
}
.el-submenu .el-submenu__title {
color: @color-white;
}
.el-menu-item {
color: @color-white;
}
.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;
.el-menu-item.is-active {
color: @color-white;
}
i {
color: #20a0ff !important;
}
}
.el-submenu .el-submenu__title {
color: @color-white;
}
.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;
.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;
i {
color: #20a0ff !important;
}
}
i {
color: #20a0ff !important;
}
}
.el-submenu.is-active .el-submenu__title {
color: @color-white;
}
.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;
i {
color: #20a0ff !important;
}
}
.tags-li.active {
border: 1px solid #20a0ff;
background-color: #20a0ff;
.el-submenu.is-active .el-submenu__title {
color: @color-white;
}
}
.tags-li.active {
border: 1px solid #20a0ff;
background-color: #20a0ff;
}
}
//红色主题
.redStyle {
.header {
background: #EE320C;
}
.header {
background: #ee320c;
}
.el-menu {
background: #EE320C;
.el-menu {
background: #ee320c;
i {
color: @color-white !important;
}
.el-menu-item {
color: @color-white;
}
.el-menu-item.is-active {
color: @color-white;
}
.el-submenu .el-submenu__title {
color: @color-white;
}
.el-menu-item:not(.is-disabled):focus,
.el-menu-item:not(.is-disabled):hover {
color: #EE320C;
background-color: @color-white;
border-bottom: 2px solid @color-white;
i {
color: @color-white !important;
}
i {
color: #EE320C !important;
}
}
.el-menu-item {
color: @color-white;
}
.el-submenu:focus .el-submenu__title,
.el-submenu:hover .el-submenu__title {
color: #EE320C !important;
background-color: @color-white;
border-bottom: 2px solid @color-white;
.el-menu-item.is-active {
color: @color-white;
}
i {
color: #EE320C !important;
}
}
.el-submenu .el-submenu__title {
color: @color-white;
}
.el-submenu.is-active .el-submenu__title {
color: @color-white;
}
.el-menu-item:not(.is-disabled):focus,
.el-menu-item:not(.is-disabled):hover {
color: #ee320c;
background-color: @color-white;
border-bottom: 2px solid @color-white;
i {
color: #ee320c !important;
}
}
.sidebar .el-menu--horizontal .el-menu-item.is-active i {
color: #EE320C;
}
.el-submenu:focus .el-submenu__title,
.el-submenu:hover .el-submenu__title {
color: #ee320c !important;
background-color: @color-white;
border-bottom: 2px solid @color-white;
.sidebar .el-menu--horizontal .el-submenu.is-active .el-submenu__title>i:first-child {
color: #EE320C;
i {
color: #ee320c !important;
}
}
.tags-li.active {
border: 1px solid #EE320C;
background-color: #EE320C;
.el-submenu.is-active .el-submenu__title {
color: @color-white;
}
}
.sidebar .el-menu--horizontal .el-menu-item.is-active i {
color: #ee320c;
}
.sidebar
.el-menu--horizontal
.el-submenu.is-active
.el-submenu__title
> i:first-child {
color: #ee320c;
}
.tags-li.active {
border: 1px solid #ee320c;
background-color: #ee320c;
}
}
//绿色主题
.greenStyle {
.header {
background: #25EE28;
}
.el-menu {
background: #25EE28;
i {
color: @color-white !important;
}
.el-menu-item {
color: @color-white;
}
.el-menu-item.is-active {
color: @color-white;
}
.header {
background: #00a096;
}
.el-submenu .el-submenu__title {
color: @color-white;
}
.el-menu {
background: #00a096;
.el-menu-item:not(.is-disabled):focus,
.el-menu-item:not(.is-disabled):hover {
color: #25EE28;
background-color: @color-white;
border-bottom: 2px solid @color-white;
i {
color: @color-white !important;
}
i {
color: #25EE28 !important;
}
}
.el-menu-item {
color: @color-white;
}
.el-submenu:focus .el-submenu__title,
.el-submenu:hover .el-submenu__title {
color: #25EE28 !important;
background-color: @color-white;
border-bottom: 2px solid @color-white;
.el-menu-item.is-active {
color: @color-white;
}
i {
color: #25EE28 !important;
}
}
.el-submenu .el-submenu__title {
color: @color-white;
}
.el-submenu.is-active .el-submenu__title {
color: @color-white;
}
.el-menu-item:not(.is-disabled):focus,
.el-menu-item:not(.is-disabled):hover {
color: #00a096;
background-color: @color-white;
border-bottom: 2px solid @color-white;
i {
color: #00a096 !important;
}
}
.sidebar .el-menu--horizontal .el-menu-item.is-active i {
color: #25EE28;
}
.el-submenu:focus .el-submenu__title,
.el-submenu:hover .el-submenu__title {
color: #00a096 !important;
background-color: @color-white;
border-bottom: 2px solid @color-white;
.sidebar .el-menu--horizontal .el-submenu.is-active .el-submenu__title>i:first-child {
color: #25EE28;
i {
color: #00a096 !important;
}
}
.tags-li.active {
border: 1px solid #25EE28;
background-color: #25EE28;
.el-submenu.is-active .el-submenu__title {
color: @color-white;
}
}
.sidebar .el-menu--horizontal .el-menu-item.is-active i {
color: #00a096;
}
.sidebar
.el-menu--horizontal
.el-submenu.is-active
.el-submenu__title
> i:first-child {
color: #00a096;
}
.tags-li.active {
border: 1px solid #00a096;
background-color: #00a096;
}
}
//橙色主题
.orangeStyle {
.header {
background: #f08200;
.header {
background: #f08200;
}
.el-menu {
background: #f08200;
i {
color: @color-white !important;
}
.el-menu {
background: #f08200;
i {
color: @color-white !important;
}
.el-menu-item {
color: @color-white;
}
.el-menu-item.is-active {
color: @color-white;
}
.el-submenu .el-submenu__title {
color: @color-white;
}
.el-menu-item:not(.is-disabled):focus,
.el-menu-item:not(.is-disabled):hover {
color: #f08200;
background-color: @color-white;
border-bottom: 2px solid @color-white;
i {
color: #f08200 !important;
}
}
.el-submenu:focus .el-submenu__title,
.el-submenu:hover .el-submenu__title {
color: #f08200 !important;
background-color: @color-white;
border-bottom: 2px solid @color-white;
i {
color: #f08200 !important;
}
}
.el-submenu.is-active .el-submenu__title {
color: @color-white;
}
.el-menu-item {
color: @color-white;
}
.sidebar .el-menu--horizontal .el-menu-item.is-active i {
color: #f08200;
.el-menu-item.is-active {
color: @color-white;
}
.sidebar .el-menu--horizontal .el-submenu.is-active .el-submenu__title>i:first-child {
color: #f08200;
.el-submenu .el-submenu__title {
color: @color-white;
}
.tags-li.active {
border: 1px solid #f08200;
background-color: #f08200;
.el-menu-item:not(.is-disabled):focus,
.el-menu-item:not(.is-disabled):hover {
color: #f08200;
background-color: @color-white;
border-bottom: 2px solid @color-white;
i {
color: #f08200 !important;
}
}
}
.el-submenu:focus .el-submenu__title,
.el-submenu:hover .el-submenu__title {
color: #f08200 !important;
background-color: @color-white;
border-bottom: 2px solid @color-white;
i {
color: #f08200 !important;
}
}
.el-submenu.is-active .el-submenu__title {
color: @color-white;
}
}
.sidebar .el-menu--horizontal .el-menu-item.is-active i {
color: #f08200;
}
.sidebar
.el-menu--horizontal
.el-submenu.is-active
.el-submenu__title
> i:first-child {
color: #f08200;
}
.sideBar {
.el-tree--highlight-current
.el-tree-node.is-current
> .el-tree-node__content {
// 设置颜色
color: #fff;
background: #f08200 !important;
}
}
.gallery-thumbs .swiper-slide-active {
border: 3px solid #f08200 !important;
}
.tags-li.active {
border: 1px solid #f08200;
background-color: #f08200;
}
}

@ -69,7 +69,7 @@ export default {
label: "红色",
},
{
value: "#25EE28",
value: "#00a096",
label: "绿色",
},
{
@ -110,7 +110,8 @@ export default {
app.classList.remove("blueStyle", "greenStyle", "orangeStyle");
app.classList.add("redStyle");
} else if (colorTheme.label === "绿色") {
colorTheme.value = "#25EE28";
colorTheme.value = "#00a096";
app.classList.remove("blueStyle", "redStyle", "orangeStyle");
app.classList.add("greenStyle");
} else if (colorTheme.label === "橙色") {
colorTheme.value = "#f08200";
@ -148,37 +149,10 @@ export default {
psdDialogClose() {
this.dialogFormPsd = false;
},
//
// handleFullScreen() {
// let element = document.documentElement;
// if (this.fullscreen) {
// if (document.exitFullscreen) {
// document.exitFullscreen();
// } else if (document.webkitCancelFullScreen) {
// document.webkitCancelFullScreen();
// } else if (document.mozCancelFullScreen) {
// document.mozCancelFullScreen();
// } else if (document.msExitFullscreen) {
// document.msExitFullscreen();
// }
// } else {
// if (element.requestFullscreen) {
// element.requestFullscreen();
// } else if (element.webkitRequestFullScreen) {
// element.webkitRequestFullScreen();
// } else if (element.mozRequestFullScreen) {
// element.mozRequestFullScreen();
// } else if (element.msRequestFullscreen) {
// // IE11
// element.msRequestFullscreen();
// }
// }
// this.fullscreen = !this.fullscreen;
// },
},
created() {
this.colorValue = this.colorList[0].label;
this.colorValue = this.colorList[3].label;
this.changeTheme(this.colorList[3].value);
},
mounted() {},
};

@ -56,44 +56,49 @@ export default {
items: [
// {
// icon: 'el-icon-s-home',
// index: 'stritl',
// title: ''
// icon: "el-icon-s-home",
// index: "stritl",
// title: "",
// },
{
icon: "el-icon-camera",
index: "realTimeMonitor",
title: "实时监控",
},
{
icon: "el-icon-setting",
index: "devicePhotoSchedule",
title: "拍照时间表设置",
},
// {
// icon: 'el-icon-film',
// index: 'pictureRotation',
// title: ''
// icon: "el-icon-film",
// index: "pictureRotation",
// title: "",
// },
// {
// icon: 'el-icon-video-camera',
// index: '3',
// title: '',
// subs: [
// {
// index: 'videoMonitor',
// title: ''
// },
// {
// index: 'videoHistory',
// title: ''
// }
// ]
// }
// icon: "el-icon-video-camera",
// index: "3",
// title: "",
// subs: [
// {
// index: "videoMonitor",
// title: "",
// },
// {
// index: "videoHistory",
// title: "",
// },
// ],
// },
// {
// icon: 'el-icon-warning-outline',
// index: 'dashboard',
// title: ''
// icon: "el-icon-warning-outline",
// index: "dashboard",
// title: "",
// },
// {
// icon: 'el-icon-bell',
// index: 'photoAlarm',
// title: ''
// icon: "el-icon-bell",
// index: "photoAlarm",
// title: "",
// },
// {
// icon: 'el-icon-setting',

@ -27,6 +27,10 @@ import "./assets/css/global.less"; //全局定义颜色
import md5 from "js-md5";
Vue.prototype.$md5 = md5;
import moment from "moment"; // 导入文件
// 注册全局 moment
Vue.prototype.$moment = moment;
Vue.config.productionTip = false;
new Vue({

@ -1,464 +0,0 @@
const photoVideo = [
{
"fileId": "2382c462-5850-4cc9-8413-8eb20a9c104e",
"fileName": "shxy2023013100001_20230302100015_2_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302100015_2_255.jpg",
"captureTime": "2023-03-02 10:00:15",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "1",
"orientationName": "大号侧",
"monitorPointId": "9455c6a5-1c03-840a-490f-3d585e316fa1",
"saveTime": "2023-03-02 10:00:25.000099",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "6eca3e84-7988-4c83-894a-0d2fb5157e33",
"fileName": "shxy2023013100001_20230302100007_1_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302100007_1_255.jpg",
"captureTime": "2023-03-02 10:00:07",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "2",
"orientationName": "小号侧",
"monitorPointId": "12bf611b-ef23-6eca-dc61-2147baf24ecf",
"saveTime": "2023-03-02 10:00:18.000247",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "c9eb0ed1-731f-4543-bb87-3f67d7778796",
"fileName": "shxy2023013100001_20230302090018_2_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302090018_2_255.jpg",
"captureTime": "2023-03-02 09:00:18",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "1",
"orientationName": "大号侧",
"monitorPointId": "9455c6a5-1c03-840a-490f-3d585e316fa1",
"saveTime": "2023-03-02 09:00:28.000053",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "63457b50-aa5e-4558-8849-f3576e13a6cb",
"fileName": "shxy2023013100001_20230302090010_1_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302090010_1_255.jpg",
"captureTime": "2023-03-02 09:00:10",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "2",
"orientationName": "小号侧",
"monitorPointId": "12bf611b-ef23-6eca-dc61-2147baf24ecf",
"saveTime": "2023-03-02 09:00:21.000113",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "3fa69fb6-332d-4935-814d-6fd9a9e03b1c",
"fileName": "shxy2023013100001_20230302080016_2_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302080016_2_255.jpg",
"captureTime": "2023-03-02 08:00:16",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "1",
"orientationName": "大号侧",
"monitorPointId": "9455c6a5-1c03-840a-490f-3d585e316fa1",
"saveTime": "2023-03-02 08:00:26.000759",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "67634860-cd95-482f-857b-3d1190e37b05",
"fileName": "shxy2023013100001_20230302080008_1_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302080008_1_255.jpg",
"captureTime": "2023-03-02 08:00:08",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "2",
"orientationName": "小号侧",
"monitorPointId": "12bf611b-ef23-6eca-dc61-2147baf24ecf",
"saveTime": "2023-03-02 08:00:19.000241",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "f2cd8e33-4f97-43a7-b5b2-569bd6bfe9c1",
"fileName": "shxy2023013100001_20230302070016_2_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302070016_2_255.jpg",
"captureTime": "2023-03-02 07:00:16",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "1",
"orientationName": "大号侧",
"monitorPointId": "9455c6a5-1c03-840a-490f-3d585e316fa1",
"saveTime": "2023-03-02 07:00:26.000512",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "3efade4a-6a35-40c3-b3f5-454feab69bea",
"fileName": "shxy2023013100001_20230302070007_1_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302070007_1_255.jpg",
"captureTime": "2023-03-02 07:00:07",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "2",
"orientationName": "小号侧",
"monitorPointId": "12bf611b-ef23-6eca-dc61-2147baf24ecf",
"saveTime": "2023-03-02 07:00:18.000115",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "a112b9bb-fd47-4e90-8747-01319930f171",
"fileName": "shxy2023013100001_20230302060018_2_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302060018_2_255.jpg",
"captureTime": "2023-03-02 06:00:18",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "1",
"orientationName": "大号侧",
"monitorPointId": "9455c6a5-1c03-840a-490f-3d585e316fa1",
"saveTime": "2023-03-02 06:00:28.000832",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
},
{
"fileId": "6a1567fa-6a21-4d4f-b0b8-49a9ea633649",
"fileName": "shxy2023013100001_20230302060009_1_255.jpg",
"filePath": "/local/shxy2023013100001/202303/shxy2023013100001_20230302060009_1_255.jpg",
"captureTime": "2023-03-02 06:00:09",
"fileSize": null,
"fileType": 0,
"companyId": "f7d966d1-f3d1-4802-946d-ad93e1ee1b9b",
"companyName": null,
"lineId": "8cee6df6-46c7-4f6d-abfa-b2cfecdcf31f",
"lineName": null,
"towerId": "f0b2d5c3-500f-4107-81ff-501757a02064",
"towerName": null,
"orientation": "2",
"orientationName": "小号侧",
"monitorPointId": "12bf611b-ef23-6eca-dc61-2147baf24ecf",
"saveTime": "2023-03-02 06:00:21.000806",
"uploadTime": null,
"analyzeTime": null,
"status": 1,
"discernStatus": null,
"uploadSpeed": 0,
"collectConfigId": null,
"tfsTag": null,
"tfsPicName": null,
"coverPicName": "",
"camera": null,
"meid": null,
"temperature": null,
"voltage": null,
"dbmLevel": null,
"energy": null,
"netType": null,
"picGrade": null,
"channel": null,
"deviceId": "466470e9-d35e-4667-9963-f78163830fbc",
"picOriginType": null,
"hisflag": null,
"timeConsuming": null,
"markAlarmType": null,
"dangerLevel": null,
"isMark": null,
"presettingNum": null,
"presettingName": null,
"alarmFilePath": ""
}
]
export default photoVideo

@ -6,7 +6,7 @@ Vue.use(VueRouter);
const routes = [
{
path: "/",
redirect: "/lineInformation",
redirect: "/realTimeMonitor",
},
{
path: "/",
@ -65,6 +65,14 @@ const routes = [
),
meta: { title: "视频回放", icon: "el-icon-video-camera" },
},
{
path: "/devicePhotoSchedule",
component: () =>
import(
/* webpackChunkName: "tabs" */ "../views/devicePhotoSchedule/index.vue"
),
meta: { title: "拍照时间表设置", icon: "el-icon-setting" },
},
{
path: "/photoAlarm",
component: () =>
@ -168,7 +176,7 @@ const routes = [
];
const router = new VueRouter({
mode: "history",
mode: "hash",
base: process.env.BASE_URL,
routes,
});

File diff suppressed because it is too large Load Diff

@ -140,6 +140,16 @@ export function getChannelListJoggle(data) {
});
}
//拍照时间表设置
//1.获取任务规则列表接口
export function getScheduleRulelListJoggle(data) {
return request({
url: "/test/getScheduleRulelList",
method: "post",
data,
});
}
//线路信息管理接口数据
//1.线路列表信息
export function getLineListJoggle(data) {

@ -1,36 +1,36 @@
import axios from "axios";
import { Loading } from "element-ui"; //项目已经全局引入element的话可以不单独引入
let loading; //定义loading变量
function startLoading() {
//使用Element loading-start 方法
loading = Loading.service({
lock: true,
text: "加载中……",
background: "rgba(255, 255, 255, 0.7)",
});
}
function endLoading() {
//使用Element loading-close 方法
loading.close();
}
// import { Loading } from "element-ui"; //项目已经全局引入element的话可以不单独引入
// let loading; //定义loading变量
// function startLoading() {
// //使用Element loading-start 方法
// loading = Loading.service({
// lock: true,
// text: "加载中……",
// background: "rgba(255, 255, 255, 0.7)",
// });
// }
// function endLoading() {
// //使用Element loading-close 方法
// loading.close();
// }
//那么 showFullScreenLoading() tryHideFullScreenLoading() 要干的事儿就是将同一时刻的请求合并。
//声明一个变量 needLoadingRequestCount每次调用showFullScreenLoading方法 needLoadingRequestCount + 1。
//调用tryHideFullScreenLoading()方法needLoadingRequestCount - 1。needLoadingRequestCount为 0 时,结束 loading。
let needLoadingRequestCount = 0;
export function showFullScreenLoading() {
if (needLoadingRequestCount === 0) {
startLoading();
}
needLoadingRequestCount++;
}
// let needLoadingRequestCount = 0;
// export function showFullScreenLoading() {
// if (needLoadingRequestCount === 0) {
// startLoading();
// }
// needLoadingRequestCount++;
// }
export function tryHideFullScreenLoading() {
if (needLoadingRequestCount <= 0) return;
needLoadingRequestCount--;
if (needLoadingRequestCount === 0) {
endLoading();
}
}
// export function tryHideFullScreenLoading() {
// if (needLoadingRequestCount <= 0) return;
// needLoadingRequestCount--;
// if (needLoadingRequestCount === 0) {
// endLoading();
// }
// }
const service = axios.create({
// process.env.NODE_ENV === 'development' 来判断是否开发环境
@ -43,7 +43,7 @@ const service = axios.create({
service.interceptors.request.use(
(config) => {
showFullScreenLoading();
//showFullScreenLoading();
return config;
},
(error) => {
@ -55,7 +55,7 @@ service.interceptors.request.use(
service.interceptors.response.use(
(response) => {
if (response.status === 200) {
tryHideFullScreenLoading();
// tryHideFullScreenLoading();
return response.data;
} else {
Promise.reject();

@ -1,39 +1,41 @@
<template>
<div class="login-wrap">
<div class="ms-login">
<div class="ms-title">
<img src="../assets/img/logo.png" alt="欣影" />
<h3>可视化智能管控系统</h3>
</div>
<el-form
:model="userInfo"
:rules="rules"
ref="loginForm"
label-width="0px"
class="ms-content"
size="medium"
>
<el-form-item prop="username">
<el-input v-model="userInfo.username" placeholder="用户名">
<el-button slot="prepend" icon="el-icon-user"></el-button>
</el-input>
</el-form-item>
<el-form-item prop="password">
<el-input
type="password"
placeholder="密码"
show-password
v-model="userInfo.password"
@keyup.enter.native="submitForm()"
>
<el-button slot="prepend" icon="el-icon-lock"></el-button>
</el-input>
</el-form-item>
<div class="login-btn">
<el-button type="primary" @click="submitForm()"></el-button>
<div class="loginFilter">
<div class="ms-login">
<div class="ms-title">
<img src="../assets/img/logo.png" alt="欣影" />
<h3>可视化智能管控系统</h3>
</div>
<!-- <p class="login-tips">Tips : 用户名和密码随便填</p> -->
</el-form>
<el-form
:model="userInfo"
:rules="rules"
ref="loginForm"
label-width="0px"
class="ms-content"
size="medium"
>
<el-form-item prop="username">
<el-input v-model="userInfo.username" placeholder="用户名">
<el-button slot="prepend" icon="el-icon-user"></el-button>
</el-input>
</el-form-item>
<el-form-item prop="password">
<el-input
type="password"
placeholder="密码"
show-password
v-model="userInfo.password"
@keyup.enter.native="submitForm()"
>
<el-button slot="prepend" icon="el-icon-lock"></el-button>
</el-input>
</el-form-item>
<div class="login-btn">
<el-button type="primary" @click="submitForm()"></el-button>
</div>
<!-- <p class="login-tips">Tips : 用户名和密码随便填</p> -->
</el-form>
</div>
</div>
</div>
</template>
@ -91,55 +93,66 @@ export default {
height: 100%;
background: url(../assets/img/loginbg.jpeg) no-repeat center center;
background-size: cover;
.ms-login {
position: absolute;
width: 420px;
height: 454px;
left: 50%;
top: 50%;
transform: translate(-50%;-50%);
border-radius: 5px;
background: url(../assets/img/loginBackImage.8b77ab2c.png) no-repeat;
// -webkit-backdrop-filter: blur(5px);
// backdrop-filter: blur(15px);
overflow: hidden;
background-size: 100%;
.ms-title {
text-align: center;
border-bottom: 1px solid @border-color-base;
padding: 40px 16px;
backdrop-filter: blur(15px);
-webkit-backdrop-filter: blur(5px);
overflow: hidden;
.loginFilter {
height: 100%;
width: 100%;
filter: drop-shadow(0px 20px 10px rgba(0, 0, 0, 0.5));
display: flex;
justify-content: center;
align-items: center;
.ms-login {
position: absolute;
width: 420px;
height: 454px;
left: 50%;
top: 50%;
transform: translate(-50%;-50%);
border-radius: 5px;
background: url(../assets/img/loginBackImage.8b77ab2c.png) no-repeat;
// -webkit-backdrop-filter: blur(5px);
// backdrop-filter: blur(15px);
overflow: hidden;
background-size: 100%;
.ms-title {
text-align: center;
border-bottom: 1px solid @border-color-base;
padding: 40px 16px;
img {
margin-bottom: 8px;
width: 160px;
}
h3 {
font-size: 30px;
background: linear-gradient(0deg, #86b7ff, #4293fd 99.46289%);
background-clip: text;
-webkit-text-fill-color: transparent;
// font-weight: normal;
}
}
.ms-content {
padding: 40px 40px;
.el-form-item {
margin-bottom: 30px;
img {
margin-bottom: 8px;
width: 160px;
}
h3 {
font-size: 30px;
background: linear-gradient(0deg, #86b7ff, #4293fd 99.46289%);
background-clip: text;
-webkit-text-fill-color: transparent;
// font-weight: normal;
}
}
.login-btn {
text-align: center;
button {
width: 100%;
height: 36px;
margin-bottom: 10px;
.ms-content {
padding: 40px 40px;
.el-form-item {
margin-bottom: 30px;
}
.login-btn {
text-align: center;
button {
width: 100%;
height: 36px;
margin-bottom: 10px;
}
}
}
// .login-tips {
// font-size: 12px;
// line-height: 30px;
// color: @color-white;
// }
}
// .login-tips {
// font-size: 12px;
// line-height: 30px;
// color: @color-white;
// }
}
}
</style>

@ -6,11 +6,7 @@
:options="swiperOptionTop"
ref="swiperTop"
>
<swiper-slide
class="slide-1"
v-for="item in terminalPhoto"
:key="item.id"
>
<swiper-slide class="slide-1" v-for="item in bigImg" :key="item.id">
<img :src="item.path" style="width: 100%; height: 100%" alt="" />
</swiper-slide>
<div
@ -30,21 +26,22 @@
>
<swiper-slide
class="slide"
style="width: 30%; height: 100%"
v-for="(item, index) in terminalPhoto"
v-for="(item, index) in bigImg"
:key="item.id"
>
<img style="width: 100%; height: 100%" :src="item.path" alt="" />
<p class="timeInfo">{{ item.photoTime }}</p>
<p class="timeInfo">
{{ $moment(item.photoTime).format("YYYY-MM-DD HH:mm:ss") }}
</p>
</swiper-slide>
<div
<!-- <div
class="swiper-button-next swiper-button-white"
slot="button-next"
></div>
<div
class="swiper-button-prev swiper-button-white"
slot="button-prev"
></div>
></div> -->
</swiper>
</div>
</template>
@ -69,32 +66,32 @@ export default {
data() {
return {
//
// bigImg: [
// {
// url: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/210509/XYIGQ10C221000080_21050918190300_1_255.jpg",
// id: 0,
// },
// {
// url: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323100012_1_255_res.jpg",
// id: 1,
// },
// {
// url: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323090012_1_255_res.jpg",
// id: 2,
// },
// {
// url: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323080011_1_255_res.jpg",
// id: 3,
// },
// {
// url: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323070012_1_255_res.jpg",
// id: 4,
// },
// {
// url: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323060012_1_255_res.jpg",
// id: 5,
// },
// ],
bigImg: [
{
path: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/210509/XYIGQ10C221000080_21050918190300_1_255.jpg",
id: 0,
},
{
path: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323100012_1_255_res.jpg",
id: 1,
},
{
path: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323090012_1_255_res.jpg",
id: 2,
},
{
path: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323080011_1_255_res.jpg",
id: 3,
},
{
path: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323070012_1_255_res.jpg",
id: 4,
},
{
path: "http://180.166.218.222:8104/media/local/XYIGQ10C221000080/202303/XYIGQ10C221000080_20230323060012_1_255_res.jpg",
id: 5,
},
],
swiperOptionTop: {
zoom: true,
loop: true,
@ -102,9 +99,10 @@ export default {
spaceBetween: 10,
observer: true, //swiperswiper
observeParents: true, //swiperswiper
// autoplay: { //
// autoplay: {
// //
// delay: 2000,
// disableOnInteraction: false
// disableOnInteraction: false,
// },
navigation: {
nextEl: ".swiper-button-next",
@ -136,6 +134,9 @@ export default {
display: flex;
flex-direction: column;
height: 100%;
.slide {
width: 20%;
}
.gallery-top {
// height: 80% !important;
height: 80% !important;
@ -148,6 +149,7 @@ export default {
width: 100%;
margin-left: 2px;
background-color: #f0f0f8;
.swiper-button-next {
right: 0px;
}
@ -167,6 +169,7 @@ export default {
.swiper-slide {
background-size: cover;
background-position: center;
//border: 3px solid transparent;
}
.gallery-thumbs .swiper-slide {
@ -174,6 +177,9 @@ export default {
// height: 80px;
// opacity: 0.4;
}
.slide {
border: 3px solid transparent;
}
.gallery-thumbs .swiper-slide-active {
border: 3px solid @color-primary;
}

@ -0,0 +1,152 @@
<template>
<el-dialog
class="adddeviceDialog"
:title="deviceDialogTitle"
:visible.sync="deviceDialog"
width="420px"
>
<el-form
label-position="left"
label-width="92px"
ref="formdeviceInfo"
:rules="rules"
:model="deviceForm"
>
<el-form-item label="单位:" prop="bsManufacturer">
<el-input
v-model="deviceForm.bsManufacturer"
autocomplete="off"
></el-input>
</el-form-item>
<el-form-item label="DY等级" prop="dyLevel">
<el-input
v-model.number="deviceForm.dyLevel"
autocomplete="off"
></el-input>
</el-form-item>
<el-form-item label="线路名称:" prop="name">
<el-input v-model="deviceForm.name" autocomplete="off"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="closeDialog(0)"> </el-button>
<el-button type="primary" @click="submitForm()"> </el-button>
</div>
</el-dialog>
</template>
<script>
import { adddeviceJoggle, updatedeviceJoggle } from "@/utils/api/index";
export default {
props: {
deviceDialog: {
type: Boolean,
},
deviceDialogTitle: {
type: String,
default: "新增",
},
formItem: {
type: Object,
default: function () {
return {};
},
},
},
data() {
return {
deviceForm: {},
rules: {
bsManufacturer: [
{ required: true, message: "请输入公司名称", trigger: "blur" },
],
dyLevel: [
{ required: true, message: "请选择DY等级", trigger: "blur" },
{ type: "number", message: "DY等级数字值" },
],
name: [
{
required: true,
message: "请输入线路名称",
trigger: "blur",
},
],
},
//
formArr: [],
};
},
methods: {
//
submitForm() {
this.$refs.formdeviceInfo.validate((valid) => {
if (valid) {
let formObj = {
bsManufacturer: this.deviceForm.bsManufacturer,
dyLevel: this.deviceForm.dyLevel,
name: this.deviceForm.name,
};
this.formArr.push(formObj);
console.log(this.formArr);
//
if (this.deviceDialogTitle == "新增") {
adddeviceJoggle({ list: this.formArr })
.then((res) => {
console.log(res);
this.$emit("deviceDialogClose", 1); //
this.$message.success("添加成功");
})
.catch((err) => {
console.log(err); //
this.$message.error("添加失败");
});
} else if (this.deviceDialogTitle == "修改") {
let changeformObj = {
bsManufacturer: this.deviceForm.bsManufacturer,
dyLevel: this.deviceForm.dyLevel,
name: this.deviceForm.name,
id: this.deviceForm.id,
};
updatedeviceJoggle(changeformObj)
.then((res) => {
console.log(res);
this.$emit("deviceDialogClose", 1); //
this.$message.success("修改成功");
})
.catch((err) => {
console.log(err); //
this.$message.error("修改失败");
});
}
} else {
console.log("error submit!!");
return false;
}
});
},
//
closeDialog(flag) {
this.$refs.formdeviceInfo.resetFields();
this.$emit("deviceDialogClose", flag);
},
},
mounted() {
console.log("打印传过来的对象", this.formItem);
console.log("打印传过来的对象", this.formItem.bsIdentifier);
this.deviceForm = JSON.parse(JSON.stringify(this.formItem));
},
watch: {
formItem: {
handler(newVal, oldVal) {
//
this.$nextTick(() => {
this.deviceForm = JSON.parse(JSON.stringify(this.formItem));
});
},
immediate: true,
deep: true,
},
},
};
</script>

@ -0,0 +1,228 @@
<template>
<div class="deviceInformation">
<div class="deviceBtnGroup">
<el-button type="primary" @click="handleAdddevice()"></el-button>
<el-button type="primary" @click="handleResive()"></el-button>
<!-- <el-button type="primary">批量添加</el-button> -->
<el-button type="primary" @click="handleDelete()"></el-button>
<!-- <el-button type="primary">查询</el-button> -->
</div>
<!-- <div class="searchForm">
<el-form :indevice="true" :model="formIndevice" class="demo-form-indevice">
<el-form-item label="单位:">
<el-select v-model="formIndevice.region" placeholder="活动区域">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-form-item>
<el-form-item label="DY等级:">
<el-select v-model="formIndevice.region" placeholder="活动区域">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-form-item>
<el-form-item label="XL名称:">
<el-input v-model="formIndevice.user" placeholder="审批人"></el-input>
</el-form-item>
<el-form-item label="是否为采集">
<el-select v-model="formIndevice.region" placeholder="活动区域">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-form-item>
<el-form-item label="PMS编号:">
<el-input v-model="formIndevice.user" placeholder="审批人"></el-input>
</el-form-item>
</el-form>
</div> -->
<div class="deviceTable">
<el-table
ref="multipleTable"
:data="deviceTableData"
tooltip-effect="dark"
style="width: 100%"
height="calc(100% - 40px)"
border
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
>
<el-table-column type="index" width="55"> </el-table-column>
<el-table-column type="selection" width="55"> </el-table-column>
<el-table-column label="单位" show-overflow-tooltip>
<template slot-scope="scope">{{ scope.row.name }}</template>
</el-table-column>
<el-table-column label="时间表类型" show-overflow-tooltip>
<template>时间表类型</template>
</el-table-column>
<el-table-column
prop="startTime"
label="开始时间"
show-overflow-tooltip
>
</el-table-column>
<el-table-column prop="endTime" label="结束时间" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="span" label="间隔(分)" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="remark" label="备注" show-overflow-tooltip>
</el-table-column>
</el-table>
</div>
<!-- 新增线路 -->
<adddeviceDialog
:deviceDialog="deviceDialog"
:deviceDialogTitle="deviceDialogTitle"
:formItem="formdeviceInfo"
@deviceDialogClose="deviceDialogClose"
></adddeviceDialog>
</div>
</template>
<script>
import {
getScheduleRulelListJoggle,
deletedeviceJoggle,
} from "@/utils/api/index";
import adddeviceDialog from "./components/adddeviceDialog.vue";
export default {
components: {
adddeviceDialog,
},
data() {
return {
formIndevice: {
user: "",
region: "",
},
deviceDialogTitle: "", //
deviceDialog: false,
formdeviceInfo: {}, //
deviceTableData: [],
multipleSelection: [], //
//
deleteArr: [],
};
},
methods: {
//线
deviceList() {
getScheduleRulelListJoggle()
.then((res) => {
console.log(res);
this.deviceTableData = res.data.list;
})
.catch((err) => {
console.log(err); //
});
},
//
handleRowClick(row, column, event) {
this.$refs.multipleTable.toggleRowSelection(row);
// console.log(column, row, event);
},
//
handleSelectionChange(val) {
this.multipleSelection = val;
},
//
handleAdddevice() {
this.deviceDialog = true;
this.deviceDialogTitle = "新增";
},
//handleResive 线
handleResive() {
if (this.multipleSelection.length !== 1) {
this.$message({
showClose: true,
message: "请选择要操作的记录最多只能选择一条!",
type: "warning",
});
} else {
console.log(this.multipleSelection);
this.deviceDialogTitle = "修改";
this.formdeviceInfo = Object.assign({}, this.multipleSelection[0]);
this.deviceDialog = true;
}
},
//
deviceDialogClose(flag) {
if (flag) {
//
this.deviceList();
}
this.deviceDialog = false;
},
//
handleDelete() {
if (this.multipleSelection.length == 0) {
this.$message({
showClose: true,
message: "请选择要操作的记录!",
type: "warning",
});
} else {
console.log(this.multipleSelection);
for (let i in this.multipleSelection) {
console.log(i);
this.deleteArr.push({
id: this.multipleSelection[i].id,
});
}
console.log(this.deleteArr);
this.$confirm("确定要删除记录吗,同时删除关联关系?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
//
deletedeviceJoggle({ list: this.deleteArr }).then((res) => {
console.log(res);
this.deviceList(); //
});
this.$message({
type: "success",
message: "删除成功!",
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
}
},
},
created() {
this.deviceList();
},
};
</script>
<style lang="less">
.deviceInformation {
width: 100%;
height: 100%;
background: @color-white;
.deviceBtnGroup {
padding: 16px 8px;
}
.searchForm {
padding: 0px 8px;
.el-form {
.el-form-item {
margin-bottom: 0px;
}
}
}
.deviceTable {
padding: 16px 8px 0 8px;
height: calc(100% - 80px);
//background: #fcc;
}
}
</style>

@ -15,6 +15,16 @@
@node-click="handleNodeClick"
:current-node-key="currentNodekey"
>
<span class="custom-tree-node" slot-scope="{ node, data }">
<span v-if="data.list" class="el-icon-folder"> </span>
<span
v-else
class="el-icon-document"
style="margin-right: 3px"
></span>
<span>{{ node.label }}</span>
</span>
</el-tree>
</div>
<!-- <router-view></router-view> -->
@ -24,11 +34,6 @@
<!-- 带参数的中心内容右侧参数区 -->
<div class="picSetBox">
<div class="swiperBox">
<!-- {{ terminalPhoto }}
<div class="pic" v-for="item in terminalPhoto">
<img :src="item.path" style="width: 100%; height: 100%" alt="" />
</div> -->
<carouselChart :terminalPhoto="terminalPhoto"></carouselChart>
</div>
<div class="parameterArea">
@ -149,7 +154,7 @@ export default {
getTerminalPhotoListJoggle({
channelid: id,
pageindex: 1,
pagesize: 1,
pagesize: 100,
terminalid: termId,
})
.then((res) => {
@ -185,12 +190,6 @@ export default {
</script>
<style lang="less">
.el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content {
//
color: #fff;
background: #2d8cf0 !important;
}
.monitor-container {
display: flex;
height: 100%;
@ -206,6 +205,13 @@ export default {
height: 40px;
}
}
.el-tree--highlight-current
.el-tree-node.is-current
> .el-tree-node__content {
//
color: #fff;
background: #2d8cf0;
}
}
.picSetBox {
display: flex;

@ -1,185 +1,191 @@
<template>
<div class="picture" v-if="photoData">
<div class="picTop">
<h3>{{ photoData.text }}</h3>
<div class="total">
<span>监拍设备:14 监拍点:14 视频:0 测温:0 微气象:0 </span>
</div>
</div>
<div class="picmain">
<div class="photosPic">
<div class="topTitle">
<h4>{{ photoData.children[0].text }};大号侧</h4>
<div class="iconList">
<i class="el-icon-video-camera" title="主副机"></i>
<i class="el-icon-video-camera" title="夜视"></i>
<i class="el-icon-video-camera" title="云台"></i>
<i class="el-icon-video-camera" title="T基+通道"></i>
<i class="el-icon-video-camera" title="声光告警"></i>
<i class="el-icon-video-camera" title="测温"></i>
<i class="el-icon-video-camera" title="微气象"></i>
</div>
</div>
<ul class="picShow">
<li v-for="(item, index) in lagrePic.slice(0, 4)" :key="index" @click="picShow(index)">
<img :src="'http://180.166.218.222:8104/media/' + item.filePath" />
<span class="timeShow">{{ item.captureTime }}</span>
</li>
</ul>
</div>
<div class="photosPic">
<div class="topTitle">
<h4>{{ photoData.children[0].text }};小号测</h4>
<div class="iconList">
<i class="el-icon-video-camera" title="主副机"></i>
<i class="el-icon-video-camera" title="夜视"></i>
<i class="el-icon-video-camera" title="云台"></i>
<i class="el-icon-video-camera" title="T基+通道"></i>
<i class="el-icon-video-camera" title="声光告警"></i>
<i class="el-icon-video-camera" title="测温"></i>
<i class="el-icon-video-camera" title="微气象"></i>
</div>
</div>
<ul class="picShow">
<li v-for="(item, index) in smallPic.slice(0, 4)" :key="index" @click="picShow(index)">
<img :src="'http://180.166.218.222:8104/media/' + item.filePath" />
<span class="timeShow">{{ item.captureTime }}</span>
</li>
</ul>
</div>
<div class="picture" v-if="photoData">
<div class="picTop">
<h3>{{ photoData.text }}</h3>
<div class="total">
<span>监拍设备:14 监拍点:14 视频:0 测温:0 微气象:0 </span>
</div>
</div>
<div class="picmain">
<div class="photosPic">
<div class="topTitle">
<h4>{{ photoData.children[0].text }};大号侧</h4>
<div class="iconList">
<i class="el-icon-video-camera" title="主副机"></i>
<i class="el-icon-video-camera" title="夜视"></i>
<i class="el-icon-video-camera" title="云台"></i>
<i class="el-icon-video-camera" title="T基+通道"></i>
<i class="el-icon-video-camera" title="声光告警"></i>
<i class="el-icon-video-camera" title="测温"></i>
<i class="el-icon-video-camera" title="微气象"></i>
</div>
</div>
<div class="page">
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage4"
:page-size="100"
layout="prev, pager, next, jumper,total"
:total="400"
>
</el-pagination>
<ul class="picShow">
<li
v-for="(item, index) in lagrePic.slice(0, 4)"
:key="index"
@click="picShow(index)"
>
<img :src="'http://180.166.218.222:8104/media/' + item.filePath" />
<span class="timeShow">{{ item.captureTime }}</span>
</li>
</ul>
</div>
<div class="photosPic">
<div class="topTitle">
<h4>{{ photoData.children[0].text }};小号测</h4>
<div class="iconList">
<i class="el-icon-video-camera" title="主副机"></i>
<i class="el-icon-video-camera" title="夜视"></i>
<i class="el-icon-video-camera" title="云台"></i>
<i class="el-icon-video-camera" title="T基+通道"></i>
<i class="el-icon-video-camera" title="声光告警"></i>
<i class="el-icon-video-camera" title="测温"></i>
<i class="el-icon-video-camera" title="微气象"></i>
</div>
</div>
<ul class="picShow">
<li
v-for="(item, index) in smallPic.slice(0, 4)"
:key="index"
@click="picShow(index)"
>
<img :src="'http://180.166.218.222:8104/media/' + item.filePath" />
<span class="timeShow">{{ item.captureTime }}</span>
</li>
</ul>
</div>
</div>
<div class="page">
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage4"
:page-size="100"
layout="prev, pager, next, jumper,total"
:total="400"
>
</el-pagination>
</div>
</div>
</template>
<script>
import photo from '../../photo';
export default {
props: ['photoData'],
data() {
return {
dataPhoto: '',
lagrePic: [],
smallPic: [],
currentPage4: 4
};
props: ["photoData"],
data() {
return {
dataPhoto: "",
lagrePic: [],
smallPic: [],
currentPage4: 4,
};
},
mounted: function () {
this.getPhoto();
},
methods: {
handleSizeChange(val) {
console.log(`每页 ${val}`);
},
mounted: function () {
this.getPhoto();
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
},
methods: {
handleSizeChange(val) {
console.log(`每页 ${val}`);
},
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
},
getPhoto() {
console.log(photo);
//this.dataPhoto = photo;
photo.forEach((item) => {
console.log(item);
if (item.orientation === '1') {
this.lagrePic.push(item);
} else {
this.smallPic.push(item);
}
});
},
picShow(index) {
console.log(index);
getPhoto() {
console.log(photo);
//this.dataPhoto = photo;
photo.forEach((item) => {
console.log(item);
if (item.orientation === "1") {
this.lagrePic.push(item);
} else {
this.smallPic.push(item);
}
}
});
},
picShow(index) {
console.log(index);
},
},
};
</script>
<style lang="less" >
<style lang="less">
.picture {
flex: 1;
padding: 16px;
width: 100%;
.picTop {
flex: 1;
padding: 16px;
width: 100%;
.picTop {
display: flex;
justify-content: space-between;
align-items: baseline;
h3 {
font-size: 24px;
line-height: 30px;
color: @color-text-regular;
}
.total span {
color: @color-text-secondary;
font-size: 14px;
line-height: 30px;
}
}
.picmain {
border: 1px solid @border-color-base;
.photosPic {
padding-bottom: 12px;
border-bottom: 1px solid @border-color-base;
&:last-child {
border-bottom: 0px solid @border-color-base;
}
.topTitle {
display: flex;
justify-content: space-between;
align-items: baseline;
h3 {
font-size: 24px;
line-height: 30px;
color: @color-text-regular;
align-items: center;
h4 {
padding: 0 10px;
display: inline-block;
line-height: 45px;
color: @color-text-regular;
font-size: 16px;
font-weight: bold;
}
.total span {
.iconList {
i {
color: @color-text-secondary;
font-size: 14px;
line-height: 30px;
margin-right: 12px;
font-size: 28px;
}
}
}
.picmain {
border: 1px solid @border-color-base;
.photosPic {
padding-bottom: 12px;
border-bottom: 1px solid @border-color-base;
&:last-child {
border-bottom: 0px solid @border-color-base;
}
.topTitle {
display: flex;
justify-content: space-between;
align-items: center;
h4 {
padding: 0 10px;
display: inline-block;
line-height: 45px;
color: @color-text-regular;
font-size: 16px;
font-weight: bold;
}
.iconList {
i {
color: @color-text-secondary;
margin-right: 12px;
font-size: 28px;
}
}
}
.picShow {
display: flex;
padding-left: 6px;
justify-content: space-between;
}
.picShow {
display: flex;
padding-left: 6px;
justify-content: space-between;
li {
display: inline-block;
position: relative;
width: 24.5%;
img {
width: 100%;
height: 100%;
}
.timeShow {
position: absolute;
top: 0;
left: 0;
background: @color-primary;
display: inline-block;
color: @color-white;
font-size: 14px;
padding: 4px;
}
}
}
li {
display: inline-block;
position: relative;
width: 24.5%;
img {
width: 100%;
height: 100%;
}
.timeShow {
position: absolute;
top: 0;
left: 0;
background: @color-primary;
display: inline-block;
color: @color-white;
font-size: 14px;
padding: 4px;
}
}
}
}
.page {
margin-top: 16px;
}
}
.page {
margin-top: 16px;
}
}
</style>
</style>

@ -1,8 +1,10 @@
const { defineConfig } = require("@vue/cli-service");
const path = require("path");
module.exports = defineConfig({
publicPath: "/",
assetsDir: "static",
productionSourceMap: false, // 生产环境是否要生成 sourceMap
publicPath: process.env.PUBLIC_PATH ? process.env.PUBLIC_PATH : "./", // 部署应用包时的基本 URL
outputDir: "dist", // 打包时输出的文件目录
assetsDir: "static", // 放置静态文件夹目录
transpileDependencies: true,
lintOnSave: false,
pluginOptions: {
@ -14,17 +16,16 @@ module.exports = defineConfig({
],
},
},
devServer: {
proxy: {
"/api": {
[process.env.VUE_APP_BASE_API]: {
//表示拦截以/api开头的请求路径
//target: 'http://localhost:1234', //本地nodejs服务器
target: "http://47.96.238.157:8093", //公司项目服务器环境
//target: 'http://180.166.218.222:7200',
changOrigin: true, //是否开启跨域
pathRewrite: {
"^/api": "", //重写api把api变成空字符因为我们真正请求的路径是没有api的
["^" + process.env.VUE_APP_BASE_API]: "", //重写api把api变成空字符因为我们真正请求的路径是没有api的
},
},
},

Loading…
Cancel
Save