From c7298c0ad9c728f55618ad4f924f723f7d2d0a38 Mon Sep 17 00:00:00 2001
From: ZZJ <zzjdsg2300@163.com>
Date: 星期三, 26 一月 2022 11:06:15 +0800
Subject: [PATCH] bug修复
---
vue.config.js | 2
src/pages/search/index/Searching.vue | 347 +++++++++------
src/pages/desktop/index/components/DFrame.vue | 12
src/pages/vindicate/views/updateSettings.vue | 315 +++++++------
src/pages/settings/components/AuthorizationSetting.vue | 10
src/pages/settings/views/NetSettings.vue | 157 ++++--
src/pages/systemSettings/index/App.vue | 35
src/pages/settings/index/index.vue | 35 +
src/components/treeMenu/index.vue | 2
src/pages/vindicate/index/App.vue | 7
public/images/settings/白色一级icon/授权管理.png | 0
public/images/settings/黑色一级icon/授权管理.png | 0
src/pages/settings/components/AuthorizationManagement.vue | 10
src/pages/settings/views/Authorization.vue | 94 ++++
src/pages/search/index/App.vue | 286 ++++++------
15 files changed, 782 insertions(+), 530 deletions(-)
diff --git "a/public/images/settings/\347\231\275\350\211\262\344\270\200\347\272\247icon/\346\216\210\346\235\203\347\256\241\347\220\206.png" "b/public/images/settings/\347\231\275\350\211\262\344\270\200\347\272\247icon/\346\216\210\346\235\203\347\256\241\347\220\206.png"
new file mode 100644
index 0000000..e3c4b67
--- /dev/null
+++ "b/public/images/settings/\347\231\275\350\211\262\344\270\200\347\272\247icon/\346\216\210\346\235\203\347\256\241\347\220\206.png"
Binary files differ
diff --git "a/public/images/settings/\351\273\221\350\211\262\344\270\200\347\272\247icon/\346\216\210\346\235\203\347\256\241\347\220\206.png" "b/public/images/settings/\351\273\221\350\211\262\344\270\200\347\272\247icon/\346\216\210\346\235\203\347\256\241\347\220\206.png"
new file mode 100644
index 0000000..a92bebd
--- /dev/null
+++ "b/public/images/settings/\351\273\221\350\211\262\344\270\200\347\272\247icon/\346\216\210\346\235\203\347\256\241\347\220\206.png"
Binary files differ
diff --git a/src/components/treeMenu/index.vue b/src/components/treeMenu/index.vue
index b1ccbab..67c64a7 100644
--- a/src/components/treeMenu/index.vue
+++ b/src/components/treeMenu/index.vue
@@ -459,7 +459,7 @@
}
.tree-menu {
// max-width: 350px;
- overflow-x: hidden;
+ overflow-x: scroll;
overflow-y: hidden;
margin-bottom: 4px;
}
diff --git a/src/pages/desktop/index/components/DFrame.vue b/src/pages/desktop/index/components/DFrame.vue
index 66473d8..0ce7c11 100644
--- a/src/pages/desktop/index/components/DFrame.vue
+++ b/src/pages/desktop/index/components/DFrame.vue
@@ -14,7 +14,9 @@
}"
>
<div class="d-frame-title" v-drag="fullScreen" @click="frameClick">
- <div class="icon iconfont back" @click="back"></div>
+ <div class="icon iconfont back" @click="back" v-if="isShowBack">
+ 
+ </div>
<div class="d-frame-title-operation">
<i
class="icon-minus d-frame-operation-minus"
@@ -81,6 +83,13 @@
props: {
data: Object,
},
+ created() {
+ window.addEventListener("message", (e) => {
+ if (e.data.msg === "showBack") {
+ this.isShowBack = true;
+ }
+ });
+ },
data() {
return {
publicPath: process.env.BASE_URL,
@@ -97,6 +106,7 @@
mouY: 0,
resizeLock: false,
},
+ isShowBack: false,
};
},
watch: {
diff --git a/src/pages/search/index/App.vue b/src/pages/search/index/App.vue
index 9d5ea11..9dbeb7c 100644
--- a/src/pages/search/index/App.vue
+++ b/src/pages/search/index/App.vue
@@ -1,145 +1,141 @@
-<template>
- <div class="column">
- <div class="column-left">
- <div class="resize-bar"></div>
- <div class="resize-line"></div>
- <div class="resize-save">
- <left-nav :appName="'Search'" :height="screenHeight - 40"></left-nav>
- </div>
- </div>
- <div class="column-right">
- <right-side />
- </div>
- <card-window></card-window>
- </div>
-</template>
-
-<script>
-import LeftNav from "@/components/LeftNav";
-// import CameraVideo from "./components/Video.vue";
-import RightSide from "./Searching"
-import CardWindow from "@/components/cardWindow";
-
-export default {
- name: "SearchPage",
- components: {
- LeftNav,
- RightSide,
- CardWindow
- },
- data() {
- return {
- screenHeight: 0,
- }
- },
- created() {
- // this.parseUrl();
-
- },
- mounted() {
- this.screenHeight = document.documentElement.clientHeight - 20;
- window.onresize = () => {
- return (() => {
- this.screenHeight = document.documentElement.clientHeight - 20;
- })();
- };
-
- },
- methods: {
- parseUrl() {
-
- }
- }
-};
-</script>
-
-<style lang="scss" >
-.left-tree-box .local-vedio-area .dev-vedio-list{
- height: calc(100vh - 130px);
-}
-.left-tree-box .el-tabs--border-card .el-tabs__header{
- display: block!important;
- margin-bottom: 10px;
-}
-.column {
- overflow: hidden;
- min-width: 1399px;
- height: 100%;
-}
-.column-left {
- background-color: #fff;
- position: relative;
- float: left;
- height: 100vh;
-}
-.column-right {
- height: 100vh;
- background-color: #eee;
- box-sizing: border-box;
- overflow: hidden;
-}
-.heigher-index {
- position: absolute;
- top: 0;
- z-index: 10;
- width: 100%;
- height: 100%;
-}
-.resize-save {
- position: absolute;
- top: 0;
- right: 5px;
- bottom: 0;
- left: 0;
- padding: 16px;
- padding-top: 8px;
- overflow-x: hidden;
-}
-.resize-bar {
- width: 338px;
- height: inherit;
- resize: horizontal;
- cursor: ew-resize;
- opacity: 0;
- overflow: scroll;
- max-width: 500px; //璁惧畾鏈�澶ф媺浼搁暱搴�
- min-width: 33px; //璁惧畾鏈�灏忓搴�
-}
-/* 鎷栨嫿绾� */
-.resize-line {
- position: absolute;
- right: 0;
- top: 0;
- bottom: 0;
- border-right: 2px solid #efefef;
- border-left: 1px solid #e0e0e0;
- pointer-events: none;
-}
-.resize-bar:hover ~ .resize-line,
-.resize-bar:active ~ .resize-line {
- border-left: 1px dashed skyblue;
-}
-.resize-bar::-webkit-scrollbar {
- width: 200px;
- height: inherit;
-}
-
-/* Firefox鍙湁涓嬮潰涓�灏忓潡鍖哄煙鍙互鎷変几 */
-@supports (-moz-user-select: none) {
- .resize-bar:hover ~ .resize-line,
- .resize-bar:active ~ .resize-line {
- border-left: 1px solid #bbb;
- }
- .resize-bar:hover ~ .resize-line::after,
- .resize-bar:active ~ .resize-line::after {
- content: "";
- position: absolute;
- width: 16px;
- height: 16px;
- bottom: 0;
- right: -8px;
- // background: url(./resize.svg);
- background-size: 100% 100%;
- }
-}
-</style>
+<template>
+ <div class="column">
+ <div class="column-left">
+ <div class="resize-bar"></div>
+ <div class="resize-line"></div>
+ <div class="resize-save">
+ <left-nav :appName="'Search'" :height="screenHeight - 40"></left-nav>
+ </div>
+ </div>
+ <div class="column-right">
+ <right-side />
+ </div>
+ <card-window></card-window>
+ </div>
+</template>
+
+<script>
+import LeftNav from "@/components/LeftNav";
+// import CameraVideo from "./components/Video.vue";
+import RightSide from "./Searching";
+import CardWindow from "@/components/cardWindow";
+
+export default {
+ name: "SearchPage",
+ components: {
+ LeftNav,
+ RightSide,
+ CardWindow,
+ },
+ data() {
+ return {
+ screenHeight: 0,
+ };
+ },
+ created() {
+ // this.parseUrl();
+ },
+ mounted() {
+ this.screenHeight = document.documentElement.clientHeight - 20;
+ window.onresize = () => {
+ return (() => {
+ this.screenHeight = document.documentElement.clientHeight - 20;
+ })();
+ };
+ },
+ methods: {
+ parseUrl() {},
+ },
+};
+</script>
+
+<style lang="scss" >
+.left-tree-box .local-vedio-area .dev-vedio-list {
+ height: calc(100vh - 130px);
+}
+.left-tree-box .el-tabs--border-card .el-tabs__header {
+ display: block !important;
+ margin-bottom: 10px;
+}
+.column {
+ overflow: hidden;
+ min-width: 1399px;
+ height: 100%;
+}
+.column-left {
+ background-color: #fff;
+ position: relative;
+ float: left;
+ height: 100vh;
+}
+.column-right {
+ height: 100vh;
+ background-color: #eee;
+ box-sizing: border-box;
+ overflow: hidden;
+}
+.heigher-index {
+ position: absolute;
+ top: 0;
+ z-index: 10;
+ width: 100%;
+ height: 100%;
+}
+.resize-save {
+ position: absolute;
+ top: 0;
+ right: 5px;
+ bottom: 0;
+ left: 0;
+ padding: 16px;
+ padding-top: 8px;
+ overflow-x: hidden;
+}
+.resize-bar {
+ width: 338px;
+ height: inherit;
+ resize: horizontal;
+ cursor: ew-resize;
+ opacity: 0;
+ overflow: scroll;
+ max-width: 500px; //璁惧畾鏈�澶ф媺浼搁暱搴�
+ min-width: 33px; //璁惧畾鏈�灏忓搴�
+}
+/* 鎷栨嫿绾� */
+.resize-line {
+ position: absolute;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ border-right: 2px solid #efefef;
+ border-left: 1px solid #e0e0e0;
+ pointer-events: none;
+}
+.resize-bar:hover ~ .resize-line,
+.resize-bar:active ~ .resize-line {
+ border-left: 1px dashed skyblue;
+}
+.resize-bar::-webkit-scrollbar {
+ width: 200px;
+ height: inherit;
+}
+
+/* Firefox鍙湁涓嬮潰涓�灏忓潡鍖哄煙鍙互鎷変几 */
+@supports (-moz-user-select: none) {
+ .resize-bar:hover ~ .resize-line,
+ .resize-bar:active ~ .resize-line {
+ border-left: 1px solid #bbb;
+ }
+ .resize-bar:hover ~ .resize-line::after,
+ .resize-bar:active ~ .resize-line::after {
+ content: "";
+ position: absolute;
+ width: 16px;
+ height: 16px;
+ bottom: 0;
+ right: -8px;
+ // background: url(./resize.svg);
+ background-size: 100% 100%;
+ }
+}
+</style>
diff --git a/src/pages/search/index/Searching.vue b/src/pages/search/index/Searching.vue
index 7116695..12de1ad 100644
--- a/src/pages/search/index/Searching.vue
+++ b/src/pages/search/index/Searching.vue
@@ -2,27 +2,42 @@
<div class="searching-box">
<div class="searching-right">
<div class="searching-right-nav">
- <el-breadcrumb separator-class="el-icon-arrow-right" style="display: inline-block;">
+ <el-breadcrumb
+ separator-class="el-icon-arrow-right"
+ style="display: inline-block"
+ >
<el-breadcrumb-item>
<span @click="uploadChange">妫�绱�</span>
</el-breadcrumb-item>
- <el-breadcrumb-item v-if="!VideoPhotoData.uploadType">鍏ㄩ儴</el-breadcrumb-item>
- <el-breadcrumb-item v-if="VideoPhotoData.uploadType">浠ュ浘鎼滃浘</el-breadcrumb-item>
+ <el-breadcrumb-item v-if="!VideoPhotoData.uploadType"
+ >鍏ㄩ儴</el-breadcrumb-item
+ >
+ <el-breadcrumb-item v-if="VideoPhotoData.uploadType"
+ >浠ュ浘鎼滃浘</el-breadcrumb-item
+ >
</el-breadcrumb>
</div>
<div class="searching-right-content">
<div class="top">
- <el-tooltip content="浠ュ浘鎼滃浘" placement="bottom" popper-class="atooltip">
+ <el-tooltip
+ content="浠ュ浘鎼滃浘"
+ placement="bottom"
+ popper-class="atooltip"
+ >
<el-button
@click="showUpload"
type="primary"
icon="el-icon-camera-solid"
size="mini"
circle
- :style="VideoPhotoData.uploadDiaplay ? 'margin-right: 20px;' : 'margin-right: 20px;background-color:#cccccc;border-color:#cccccc'"
+ :style="
+ VideoPhotoData.uploadDiaplay
+ ? 'margin-right: 20px;'
+ : 'margin-right: 20px;background-color:#cccccc;border-color:#cccccc'
+ "
></el-button>
</el-tooltip>
- <p class="p-label" style="width:16%">
+ <p class="p-label" style="width: 16%">
<b>鏍囩锛�</b>
<el-select
v-model="tagValues"
@@ -30,13 +45,13 @@
:disabled="isDisabled"
collapse-tags
size="mini"
- style="width:calc(100% - 40px);min-width: 120px;"
+ style="width: calc(100% - 40px); min-width: 120px"
placeholder="璇烽�夋嫨"
@change="tagChange"
>
<el-option
v-for="item in VideoPhotoData.tabs"
- style="font-size:12px"
+ style="font-size: 12px"
:key="item.key"
:label="item.title"
:value="item.value"
@@ -44,7 +59,7 @@
></el-option>
</el-select>
</p>
- <p class="p-task" style="width:16%">
+ <p class="p-task" style="width: 16%">
<b>鍦烘櫙锛�</b>
<el-select
v-model="taskValues"
@@ -53,7 +68,7 @@
:disabled="typeDisable"
collapse-tags
size="mini"
- style="width:calc(100% - 40px);min-width: 120px;"
+ style="width: calc(100% - 40px); min-width: 120px"
placeholder="璇烽�夋嫨"
>
<!-- <el-option
@@ -66,15 +81,15 @@
></el-option>-->
<el-option
v-for="item in VideoPhotoData.tasks"
- style="font-size:12px"
- :key="item.id+'x'"
+ style="font-size: 12px"
+ :key="item.id + 'x'"
:value="item.id"
- :label="item.isDelete ? item.name+'锛堝凡鍒犻櫎锛�' : item.name"
- :title="item.isDelete ? item.name+'锛堝凡鍒犻櫎锛�' : item.name"
+ :label="item.isDelete ? item.name + '锛堝凡鍒犻櫎锛�' : item.name"
+ :title="item.isDelete ? item.name + '锛堝凡鍒犻櫎锛�' : item.name"
></el-option>
</el-select>
</p>
- <p class="p-level" style="width:18%">
+ <p class="p-level" style="width: 18%">
<b>浜嬩欢绛夌骇锛�</b>
<el-select
v-model="alarmValues"
@@ -83,7 +98,7 @@
:disabled="isDisabled"
collapse-tags
size="mini"
- style="width:calc(100% - 64px);min-width: 120px;"
+ style="width: calc(100% - 64px); min-width: 120px"
placeholder="璇烽�夋嫨"
>
<el-option
@@ -94,7 +109,7 @@
></el-option>
</el-select>
</p>
- <p class="p-date" style="width:19%;vertical-align: top;">
+ <p class="p-date" style="width: 19%; vertical-align: top">
<el-date-picker
size="mini"
v-model="searchTime"
@@ -102,40 +117,57 @@
type="datetimerange"
start-placeholder="寮�濮嬫棩鏈�"
end-placeholder="缁撴潫鏃ユ湡"
- :default-time="['00:00:00','23:59:59']"
- style="width:99%;min-width:200px"
+ :default-time="['00:00:00', '23:59:59']"
+ style="width: 99%; min-width: 200px"
></el-date-picker>
</p>
- <p class="p-input" style="width:19%">
+ <p class="p-input" style="width: 19%">
<el-input
placeholder="璇疯緭鍏ュ唴瀹�"
prefix-icon="el-icon-search"
- style="width: calc(100% - 75px);min-width:100px;margin-left:10px;margin-right: 10px;"
+ style="
+ width: calc(100% - 75px);
+ min-width: 100px;
+ margin-left: 10px;
+ margin-right: 10px;
+ "
v-model="VideoPhotoData.inputValue"
size="mini"
></el-input>
- <el-button type="primary" size="mini" @click="searchingBtn">鎼滅储</el-button>
+ <el-button type="primary" size="mini" @click="searchingBtn"
+ >鎼滅储</el-button
+ >
</p>
<p class="p-clear">
<b class="clear-searching" @click="clearSearch">閲嶇疆</b>
</p>
</div>
- <div ref="mid" style="height:calc(100% - 50px);">
+ <div ref="mid" style="height: calc(100% - 50px)">
<div class="left-selection" v-if="VideoPhotoData.uploadDiaplay">
<upload-img ref="uploadImg" @labelDisabled="disabled"></upload-img>
</div>
<div
id="searchMid"
class="mid"
- :style="{width: VideoPhotoData.uploadDiaplay ? 'calc(100% - 315px)' : '100%'}"
+ :style="{
+ width: VideoPhotoData.uploadDiaplay
+ ? 'calc(100% - 315px)'
+ : '100%',
+ }"
>
<div class="right-section" ref="scrollContain">
<Card
v-for="(item, index) in VideoPhotoData.cards"
- :class="item.activeObject.id === VideoPhotoData.activeCard ? 'my-active-card' : ''"
+ :class="
+ item.activeObject.id === VideoPhotoData.activeCard
+ ? 'my-active-card'
+ : ''
+ "
:key="index + 'u'"
:outHeight="'162px'"
- :outWidth="VideoPhotoData.uploadDiaplay?searchImgCardWidth:cardWidth"
+ :outWidth="
+ VideoPhotoData.uploadDiaplay ? searchImgCardWidth : cardWidth
+ "
:data="item"
:searchTime="searchTimeFormated"
:showType="showType"
@@ -166,7 +198,7 @@
:key="index"
@update:height="resizeHeight"
@update:width="resizeWidth"
- style="background:white; height:475px"
+ style="background: white; height: 475px"
:left="center.x + index * 10"
:top="center.y + index * 10"
:resizable="true"
@@ -186,13 +218,21 @@
<p>榛戝悕鍗� ></p>
</div>
<div class="baseList">
- <el-checkbox-group v-model="VideoPhotoData.selectBlacks" @change="blackAngWhite">
- <div class="base" v-for="(item, index) in VideoPhotoData.blackList" :key="index">
+ <el-checkbox-group
+ v-model="VideoPhotoData.selectBlacks"
+ @change="blackAngWhite"
+ >
+ <div
+ class="base"
+ v-for="(item, index) in VideoPhotoData.blackList"
+ :key="index"
+ >
<el-checkbox
:label="item.value"
:title="item.title"
:disabled="item.disabled"
- >{{item.title}}</el-checkbox>
+ >{{ item.title }}</el-checkbox
+ >
</div>
</el-checkbox-group>
</div>
@@ -202,20 +242,32 @@
<p>鐧藉悕鍗� ></p>
</div>
<div class="baseList">
- <el-checkbox-group v-model="VideoPhotoData.selectWhites" @change="blackAngWhite">
- <div class="base" v-for="(item, index) in VideoPhotoData.whiteList" :key="index">
+ <el-checkbox-group
+ v-model="VideoPhotoData.selectWhites"
+ @change="blackAngWhite"
+ >
+ <div
+ class="base"
+ v-for="(item, index) in VideoPhotoData.whiteList"
+ :key="index"
+ >
<el-checkbox
:label="item.value"
:title="item.title"
:disabled="item.disabled"
- >{{item.title}}</el-checkbox>
+ >{{ item.title }}</el-checkbox
+ >
</div>
</el-checkbox-group>
</div>
</div>
<div class="buttons">
- <el-button type="primary" @click="saveAddBase(item, index)">淇濆瓨</el-button>
- <el-button type="default" @click="closeWindow(index)">鍙栨秷</el-button>
+ <el-button type="primary" @click="saveAddBase(item, index)"
+ >淇濆瓨</el-button
+ >
+ <el-button type="default" @click="closeWindow(index)"
+ >鍙栨秷</el-button
+ >
</div>
</div>
</hsc-window>
@@ -231,9 +283,9 @@
export default {
components: {
Card,
- UploadImg
+ UploadImg,
},
- data () {
+ data() {
return {
cardWidth: "",
center: "",
@@ -248,33 +300,33 @@
taskValues: [],
searchTime: [
this.$moment().format("YYYY-MM-DD 00:00:00"),
- this.$moment().format("YYYY-MM-DD HH:mm:ss")
+ this.$moment().format("YYYY-MM-DD HH:mm:ss"),
],
searchText: "",
currentPage: 1,
};
},
computed: {
- searchTimeFormated(){
- return this.format(this.searchTime)
- }
+ searchTimeFormated() {
+ return this.format(this.searchTime);
+ },
},
- created () {
+ created() {
this.TreeDataPool.readonly = true;
this.TreeDataPool.gbReadonly = true;
this.TreeDataPool.multiple = true;
this.TreeDataPool.clean();
this.TreeDataPool.fetchTreeData();
},
- mounted () {
+ mounted() {
this.$nextTick(() => {
- let scrollContain = this.$refs.scrollContain
- this.VideoPhotoData.scrollContainDom = scrollContain
- let list = this.TreeDataPool.localVedioList.filter(i => {
- return i.progress == 100
- })
- this.TreeDataPool.localVedioList = list
- })
+ let scrollContain = this.$refs.scrollContain;
+ this.VideoPhotoData.scrollContainDom = scrollContain;
+ let list = this.TreeDataPool.localVedioList.filter((i) => {
+ return i.progress == 100;
+ });
+ this.TreeDataPool.localVedioList = list;
+ });
window.addEventListener("resize", this.getHeight);
this.getCenter();
this.getHeight();
@@ -285,12 +337,12 @@
// this.VideoTaskData.tasks[this.VideoTaskData.activeIndex].taskId
// ];
// }
- let start = getUrlKey("start")
- let end = getUrlKey("end")
- if (start&&end) {
- this.searchTime = [start,end]
- this.VideoPhotoData.searchTime = [start,end]
- }else{
+ let start = getUrlKey("start");
+ let end = getUrlKey("end");
+ if (start && end) {
+ this.searchTime = [start, end];
+ this.VideoPhotoData.searchTime = [start, end];
+ } else {
this.searchTime = this.getDateInit();
this.VideoPhotoData.searchTime = this.getDateInit();
}
@@ -301,10 +353,10 @@
this.VideoPhotoData.uploadDiaplay = true;
this.VideoPhotoData.picUrl = getUrlKey("picSmUrl");
this.VideoPhotoData.uploadImg = getUrlKey("picSmUrl");
- this.VideoPhotoData.uploadType = true
- this.VideoPhotoData.compTargetId = getUrlKey("targetId")
- this.VideoPhotoData.compTargetType = getUrlKey("compType")
- this.VideoPhotoData.size = 30
+ this.VideoPhotoData.uploadType = true;
+ this.VideoPhotoData.compTargetId = getUrlKey("targetId");
+ this.VideoPhotoData.compTargetType = getUrlKey("compType");
+ this.VideoPhotoData.size = 30;
this.VideoPhotoData.compareTabs = ["esData"];
this.VideoPhotoData.findPerson2(); // 鏌ユ壘姝や汉
} else {
@@ -318,13 +370,13 @@
this.VideoPhotoData.queryTaskList();
this.VideoPhotoData.queryDictionary();
this.$nextTick(() => {
- bus.$on("changePage", page => {
+ bus.$on("changePage", (page) => {
this.currentPage = page;
this.VideoPhotoData.page = page;
});
});
},
- destroyed () {
+ destroyed() {
window.removeEventListener("resize", this.getHeight);
this.CardList.details = [];
// this.TreeDataPool.treeActiveName = "camera";
@@ -339,13 +391,13 @@
this.VideoPhotoData.selectWhites = [];
},
watch: {
- 'TreeDataPool.treeActiveName' (n, o) {
- if (n && n == 'camera') {
+ "TreeDataPool.treeActiveName"(n, o) {
+ if (n && n == "camera") {
this.VideoPhotoData.treeNodes = [];
this.setLoadSearch(this.VideoPhotoData.querySearchList());
}
},
- "TreeDataPool.showTreeBox" (value) {
+ "TreeDataPool.showTreeBox"(value) {
this.getHeight();
if (this.VideoPhotoData.realSmallPath.length > 0) {
this.VideoPhotoData.findPersonByPage();
@@ -365,38 +417,45 @@
if (newVal !== oldVal) {
this.VideoPhotoData.treeNodes = newVal;
if (this.VideoPhotoData.uploadType) {
- this.VideoPhotoData.findPersonByPage()
+ this.VideoPhotoData.findPersonByPage();
} else {
this.setLoadSearch(this.VideoPhotoData.querySearchList());
-
}
}
},
- deep: true //娣卞害鐩戝惉
+ deep: true, //娣卞害鐩戝惉
},
"DataStackPool.selectedDir": {
- handler (nodes, oldNodes) {
+ handler(nodes, oldNodes) {
if (nodes !== oldNodes && nodes.id != "") {
// this.VideoPhotoData.treeNodes = nodes.map(i=>{return i.id});
this.VideoPhotoData.treeNodes = [nodes.id];
if (this.VideoPhotoData.uploadType) {
- this.VideoPhotoData.findPersonByPage()
+ this.VideoPhotoData.findPersonByPage();
} else {
// this.VideoPhotoData.querySearchList();
this.setLoadSearch(this.VideoPhotoData.querySearchList());
}
}
},
- deep: true
+ deep: true,
},
"VideoPhotoData.activeCard": function (value) {
- let card = this.$refs.scrollContain.getElementsByClassName("my-active-card");
+ let card =
+ this.$refs.scrollContain.getElementsByClassName("my-active-card");
+ console.log(1);
+ console.log(card);
if (card.length > 0) {
let cardHeight = card[0].clientHeight;
let cardTop = card[0].offsetTop;
let scrollTop = this.$refs.scrollContain.scrollTop;
let divHeight = this.$refs.scrollContain.clientHeight;
+ console.log(2);
+ console.log(cardHeight);
+ console.log(cardTop);
+ console.log(scrollTop);
+ console.log(divHeight);
if (
cardTop - cardHeight - scrollTop > divHeight ||
cardTop - cardHeight - scrollTop < 0
@@ -414,17 +473,17 @@
}
},
"VideoPhotoData.selectBlacks": function (value) {
- this.blackAngWhite()
+ this.blackAngWhite();
},
"VideoPhotoData.selectWhites": function (value) {
- this.blackAngWhite()
+ this.blackAngWhite();
},
"VideoPhotoData.uploadDiaplay": function (value) {
this.getHeight();
if (value) {
if (!this.VideoPhotoData.uploadType) {
- let scrollContain = this.$refs.scrollContain
- this.VideoPhotoData.scrollContainDom = scrollContain
+ let scrollContain = this.$refs.scrollContain;
+ this.VideoPhotoData.scrollContainDom = scrollContain;
this.VideoPhotoData.showType = "search";
// this.VideoPhotoData.querySearchList();
//this.setLoadSearch(this.VideoPhotoData.querySearchList());
@@ -437,15 +496,15 @@
this.VideoPhotoData.uploadType = false;
this.VideoPhotoData.showType = "search";
}
- }
+ },
},
methods: {
- isShowUpload () {
+ isShowUpload() {
this.getHeight();
if (this.VideoPhotoData.uploadDiaplay) {
if (!this.VideoPhotoData.uploadType) {
- let scrollContain = this.$refs.scrollContain
- this.VideoPhotoData.scrollContainDom = scrollContain
+ let scrollContain = this.$refs.scrollContain;
+ this.VideoPhotoData.scrollContainDom = scrollContain;
this.VideoPhotoData.showType = "search";
// this.VideoPhotoData.querySearchList();
//this.setLoadSearch(this.VideoPhotoData.querySearchList());
@@ -459,13 +518,13 @@
this.VideoPhotoData.showType = "search";
}
},
- resizeWidth (w) {
+ resizeWidth(w) {
this.defaultWidth = w;
},
- resizeHeight (h) {
+ resizeHeight(h) {
this.defaultHeight = h;
},
- getHeight () {
+ getHeight() {
let w = this.$refs.mid.offsetWidth;
let integer = parseInt(w / 330);
let integerSearchImg = parseInt((w - 300) / 325);
@@ -476,86 +535,90 @@
this.cardWidth = `calc(${100 / integer}% - 20px)`;
this.searchImgCardWidth = `calc(${100 / integerSearchImg}% - 20px)`;
},
- uploadChange () {
+ uploadChange() {
this.VideoPhotoData.uploadDiaplay = false;
- this.VideoPhotoData.clearStatus()
+ this.VideoPhotoData.clearStatus();
},
- blackAngWhite () {
+ blackAngWhite() {
if (this.VideoPhotoData.selectBlacks.length > 0) {
for (let i = 0; i < this.VideoPhotoData.whiteList.length; i++) {
//this.VideoPhotoData.whiteList[i].disabled = true
- this.$set(this.VideoPhotoData.whiteList[i], 'disabled', true)
+ this.$set(this.VideoPhotoData.whiteList[i], "disabled", true);
}
}
if (this.VideoPhotoData.selectBlacks.length == 0) {
for (let i = 0; i < this.VideoPhotoData.whiteList.length; i++) {
//this.VideoPhotoData.whiteList[i].disabled = false
- this.$set(this.VideoPhotoData.whiteList[i], 'disabled', false)
+ this.$set(this.VideoPhotoData.whiteList[i], "disabled", false);
}
}
if (this.VideoPhotoData.selectWhites.length > 0) {
for (let i = 0; i < this.VideoPhotoData.blackList.length; i++) {
- // this.VideoPhotoData.blackList[i].disabled = true
- this.$set(this.VideoPhotoData.blackList[i], 'disabled', true)
+ // this.VideoPhotoData.blackList[i].disabled = true
+ this.$set(this.VideoPhotoData.blackList[i], "disabled", true);
}
}
if (this.VideoPhotoData.selectWhites.length == 0) {
for (let i = 0; i < this.VideoPhotoData.blackList.length; i++) {
- //this.VideoPhotoData.blackList[i].disabled = false
- this.$set(this.VideoPhotoData.blackList[i], 'disabled', false)
+ //this.VideoPhotoData.blackList[i].disabled = false
+ this.$set(this.VideoPhotoData.blackList[i], "disabled", false);
}
}
},
- saveAddBase (item, index) {
- if (this.VideoPhotoData.selectBlacks.length === 0 && this.VideoPhotoData.selectWhites.length === 0) {
+ saveAddBase(item, index) {
+ if (
+ this.VideoPhotoData.selectBlacks.length === 0 &&
+ this.VideoPhotoData.selectWhites.length === 0
+ ) {
this.$notify({
title: "娉ㄦ剰",
message: "璇烽�夋嫨瑕佹坊鍔犵殑搴曞簱",
- type: "warning"
- })
- return
+ type: "warning",
+ });
+ return;
}
- let res = this.VideoPhotoData.addBase(item)
- res.then(data => {
+ let res = this.VideoPhotoData.addBase(item);
+ res.then((data) => {
if (data.success) {
this.$notify({
title: "鎴愬姛",
message: data.data,
- type: "success"
- })
+ type: "success",
+ });
} else {
this.$notify({
title: "澶辫触",
message: data.data,
- type: "error"
- })
+ type: "error",
+ });
}
this.CardList.addBaseList.splice(index, 1);
- this.VideoPhotoData.selectBlacks = []
- this.VideoPhotoData.selectWhites = []
- })
+ this.VideoPhotoData.selectBlacks = [];
+ this.VideoPhotoData.selectWhites = [];
+ });
},
- getDetails (ev, index) {
+ getDetails(ev, index) {
//let obj = this.CardList.datalist[index];
this.CardList.datalist = this.VideoPhotoData.cards;
let obj = this.CardList.datalist[index];
this.CardList.details = Array.from(
new Set([...this.CardList.details, ...[obj]])
);
+ console.log(this.CardList.details);
// this.CardList.details.push(obj);
this.VideoPhotoData.activeCard = obj.activeObject.id;
},
- toAdd (item) {
- this.CardList.addBaseList.push(item)
+ toAdd(item) {
+ this.CardList.addBaseList.push(item);
},
- handleClose (done) {
- this.$confirm('纭鍏抽棴锛�')
- .then(_ => {
+ handleClose(done) {
+ this.$confirm("纭鍏抽棴锛�")
+ .then((_) => {
done();
})
- .catch(_ => { });
+ .catch((_) => {});
},
- showUpload () {
+ showUpload() {
this.VideoPhotoData.uploadDiaplay = !this.VideoPhotoData.uploadDiaplay;
//鍒濆鍖栨暟鎹�
this.VideoPhotoData.clearStatus();
@@ -565,7 +628,7 @@
// }
//this.VideoPhotoData.uploadImg = require("C:/Users/mdesign/Desktop/cvasdv.jpg");
},
- getDateInit () {
+ getDateInit() {
// 瑕佹眰 榛樿涓�涓湀
const end = new Date();
const start = new Date();
@@ -578,16 +641,16 @@
end.setTime(nowDate.getTime() + 3600 * 1000 * 24 - 1);
return [
this.$moment(start).format("YYYY-MM-DD HH:mm:ss"),
- this.$moment(end).format("YYYY-MM-DD HH:mm:ss")
+ this.$moment(end).format("YYYY-MM-DD HH:mm:ss"),
];
},
- format (array) {
+ format(array) {
return [
this.$moment(array[0]).format("YYYY-MM-DD HH:mm:ss"),
- this.$moment(array[1]).format("YYYY-MM-DD HH:mm:ss")
+ this.$moment(array[1]).format("YYYY-MM-DD HH:mm:ss"),
];
},
- searchingBtn () {
+ searchingBtn() {
// let obj = document.getElementById('searchMid');
// let load = this.$loading({
// target:obj,
@@ -597,10 +660,10 @@
this.VideoPhotoData.page = 1;
this.VideoPhotoData.queryTabs = this.tagValues;
//澶勭悊鎼滅储绫诲瀷
- var tempArr = this.taskValues.map(task => task.split(','));
+ var tempArr = this.taskValues.map((task) => task.split(","));
var tasks = [];
- tempArr.forEach(arr => {
- tasks = tasks.concat(arr)
+ tempArr.forEach((arr) => {
+ tasks = tasks.concat(arr);
});
this.VideoPhotoData.queryTasks = tasks;
@@ -619,9 +682,9 @@
this.setLoadSearch(this.VideoPhotoData.findPersonByPage());
}
},
- stringToNum () {
+ stringToNum() {
var arr = [];
- this.alarmValues.forEach(element => {
+ this.alarmValues.forEach((element) => {
if (element == "-1") {
arr.push(-1);
}
@@ -643,7 +706,7 @@
});
return arr;
},
- changePages (page) {
+ changePages(page) {
this.VideoPhotoData.page = page;
if (!this.VideoPhotoData.uploadType) {
this.VideoPhotoData.uploadDiaplay = false;
@@ -654,10 +717,10 @@
this.setLoadSearch(this.VideoPhotoData.findPersonByPage());
}
},
- closeWindow (index) {
+ closeWindow(index) {
this.CardList.addBaseList.splice(index, 1);
},
- handleSizeChange (integer, integerSearchImg) {
+ handleSizeChange(integer, integerSearchImg) {
if (this.VideoPhotoData.uploadDiaplay) {
this.VideoPhotoData.size = integerSearchImg * 10;
//this.VideoPhotoData.findPersonByPage();
@@ -666,7 +729,7 @@
//this.VideoPhotoData.querySearchList();
}
},
- sizeChange (size) {
+ sizeChange(size) {
if (this.VideoPhotoData.uploadType) {
this.VideoPhotoData.size = size;
this.VideoPhotoData.findPersonByPage();
@@ -677,10 +740,10 @@
this.setLoadSearch(this.VideoPhotoData.querySearchList());
}
},
- clearSearch () {
- this.tagValues = []
- this.taskValues = []
- this.alarmValues = []
+ clearSearch() {
+ this.tagValues = [];
+ this.taskValues = [];
+ this.alarmValues = [];
this.VideoPhotoData.queryTabs = [];
this.VideoPhotoData.queryTasks = [];
this.VideoPhotoData.queryAlarmlevel = [];
@@ -695,22 +758,22 @@
this.setLoadSearch(this.VideoPhotoData.findPersonByPage());
}
},
- disabled (data) {
+ disabled(data) {
this.isDisabled = data;
},
- getCenter () {
+ getCenter() {
this.center = {
x: document.documentElement.clientWidth / 2 - 250,
- y: document.documentElement.clientHeight / 2 - 200
+ y: document.documentElement.clientHeight / 2 - 200,
};
},
- setLoadSearch (fn) {
+ setLoadSearch(fn) {
this.AuthData.setLoading("searchMid", this);
- fn.then(_ => {
+ fn.then((_) => {
this.AuthData.closeLoad();
- })
+ });
},
- tagChange (obj) {
+ tagChange(obj) {
if (obj.length > 0) {
this.showType = "compare";
} else {
@@ -720,8 +783,8 @@
this.VideoPhotoData.queryTabs = obj;
this.setLoadSearch(this.VideoPhotoData.querySearchList());
- }
- }
+ },
+ },
};
</script>
@@ -921,7 +984,7 @@
width: 100%;
height: 100%;
.el-loading-spinner-search {
- background: url('/images/search/searchLoading.gif') no-repeat;
+ background: url("/images/search/searchLoading.gif") no-repeat;
}
}
}
diff --git a/src/pages/settings/components/AuthorizationManagement.vue b/src/pages/settings/components/AuthorizationManagement.vue
new file mode 100644
index 0000000..fb78169
--- /dev/null
+++ b/src/pages/settings/components/AuthorizationManagement.vue
@@ -0,0 +1,10 @@
+<template>
+ <div class="AuthorizationManagement">AuthorizationManagement</div>
+</template>
+
+<script>
+export default {};
+</script>
+
+<style>
+</style>
\ No newline at end of file
diff --git a/src/pages/settings/components/AuthorizationSetting.vue b/src/pages/settings/components/AuthorizationSetting.vue
new file mode 100644
index 0000000..2b19384
--- /dev/null
+++ b/src/pages/settings/components/AuthorizationSetting.vue
@@ -0,0 +1,10 @@
+<template>
+ <div class="AuthorizationSetting">AuthorizationSetting</div>
+</template>
+
+<script>
+export default {};
+</script>
+
+<style>
+</style>
\ No newline at end of file
diff --git a/src/pages/settings/index/index.vue b/src/pages/settings/index/index.vue
index 60b4f80..61e1bc0 100644
--- a/src/pages/settings/index/index.vue
+++ b/src/pages/settings/index/index.vue
@@ -605,6 +605,8 @@
style="width: 100%"
ref="view_6"
></deviceInfo>
+ <Authorization v-if="activeIndex == 7" style="width: 100%" ref="view_7">
+ </Authorization>
</div>
<div class="welcome-page" v-else ref="curPage" @mouseup="mouseDownIndex = ''">
<div
@@ -677,6 +679,7 @@
import deviceInfo from "../views/deviceInfo";
import keyboardLanguage from "../views/keyboardLanguage";
import generalSettings from "../views/generalSettings";
+import Authorization from "../views/Authorization";
import { pad0, getUrlKey } from "@/api/utils";
export default {
@@ -689,6 +692,7 @@
keyboardLanguage,
generalSettings,
deviceInfo,
+ Authorization,
},
data() {
var v2 = (rule, value, callback) => {
@@ -829,6 +833,13 @@
blackIcon: "/images/settings/榛戣壊涓�绾con/璁惧淇℃伅.png",
whiteIcon: "/images/settings/鐧借壊涓�绾con/璁惧淇℃伅.png",
},
+ {
+ name: "鎺堟潈绠$悊",
+ icon: "\ue7e9;",
+ imgUrl: "/images/settings/璁惧淇℃伅.png",
+ blackIcon: "/images/settings/榛戣壊涓�绾con/鎺堟潈绠$悊.png",
+ whiteIcon: "/images/settings/鐧借壊涓�绾con/鎺堟潈绠$悊.png",
+ },
],
accountArr: [],
jpgArr: [],
@@ -888,6 +899,13 @@
};
},
created() {
+ window.parent.postMessage(
+ {
+ msg: "showBack",
+ },
+ "*"
+ );
+
let color = localStorage.getItem("--colorCard");
if (color) {
document.documentElement.style.setProperty("--colorCard", `${color}`);
@@ -1479,20 +1497,21 @@
}
},
parseTime() {
- [this.syncYrs, this.syncMonth, this.syncDay] = this.equipmentDate.split(
- "-"
- );
- [this.syncHour, this.syncMin, this.syncSec] = this.equipmentTime.split(
- ":"
- );
+ [this.syncYrs, this.syncMonth, this.syncDay] =
+ this.equipmentDate.split("-");
+ [this.syncHour, this.syncMin, this.syncSec] =
+ this.equipmentTime.split(":");
},
},
computed: {
activeUserRole() {
- if (this.activeAccountItem.sysRoles&&this.activeAccountItem.sysRoles.length) {
+ if (
+ this.activeAccountItem.sysRoles &&
+ this.activeAccountItem.sysRoles.length
+ ) {
return this.activeAccountItem.sysRoles[0].name;
}
- return "鏅�氱敤鎴�"
+ return "鏅�氱敤鎴�";
},
curUserRole() {
const info = JSON.parse(sessionStorage.getItem("userInfo"));
diff --git a/src/pages/settings/views/Authorization.vue b/src/pages/settings/views/Authorization.vue
new file mode 100644
index 0000000..953f07e
--- /dev/null
+++ b/src/pages/settings/views/Authorization.vue
@@ -0,0 +1,94 @@
+<template>
+ <div class="all" ref="curPage">
+ <div class="Authorization">
+ <div class="AuthorizationCenter">
+ <div
+ class="menu-item"
+ :class="activePage == i ? 'menu-item-active' : ''"
+ @click="openRight(i)"
+ v-for="(item, i) in menuArr"
+ :key="i"
+ >
+ <span class="iconfont" :style="`font-size:${item.size}px;`">{{
+ item.icon
+ }}</span>
+ <span class="title">{{ item.name }}</span>
+ </div>
+ </div>
+ <div class="AuthorizationRight"></div>
+ </div>
+ </div>
+</template>
+
+<script>
+export default {
+ data() {
+ return {
+ activePage: 0,
+ menuArr: [
+ { name: "璁惧鎺堟潈閰嶇疆", icon: "\ue7e7", size: 28 },
+ { name: "璁惧鎺堟潈绠$悊", icon: "\ue7e6", size: 28 },
+ ],
+ };
+ },
+ methods: {
+ openRight(i) {
+ this.activePage = i;
+ },
+ },
+};
+</script>
+
+<style scoped lang="scss">
+.Authorization {
+ height: 100%;
+ display: flex;
+ flex-direction: row;
+ flex: 1;
+ flex-basis: auto;
+ box-sizing: border-box;
+ .el-input__inner {
+ height: 24px !important;
+ }
+
+ .AuthorizationCenter {
+ height: 100%;
+ width: 300px;
+ overflow: auto;
+ box-sizing: border-box;
+ flex-shrink: 0;
+ padding: 10px 10px;
+ padding-top: 6px;
+ border-right: 4px solid #f2f2f7;
+ border-top: 4px solid #f2f2f7;
+ border-left: 4px solid #f2f2f7;
+ background-color: #fbfaff;
+ .menu-item {
+ height: 56px;
+ margin-bottom: 4px;
+ border-radius: 8px;
+ line-height: 56px;
+ box-sizing: border-box;
+ font-size: 16px;
+ padding-left: 15px;
+ cursor: pointer;
+ display: flex;
+ .iconfont {
+ margin: 0 17px;
+ font-size: 24px !important;
+ }
+ .title {
+ font-size: 16px;
+ font-weight: 700;
+ }
+ }
+ .menu-item-active {
+ background-color: var(--colorCard) !important;
+ color: white !important;
+ }
+ .menu-item:hover {
+ background-color: #f2f2f7;
+ }
+ }
+}
+</style>
\ No newline at end of file
diff --git a/src/pages/settings/views/NetSettings.vue b/src/pages/settings/views/NetSettings.vue
index 3080795..93686c5 100644
--- a/src/pages/settings/views/NetSettings.vue
+++ b/src/pages/settings/views/NetSettings.vue
@@ -79,7 +79,11 @@
</div>
</div>
</div>
- <div class="wifi-detail" v-if="activePage == 1 && inWifiDetail" ref="ipvHolder">
+ <div
+ class="wifi-detail"
+ v-if="activePage == 1 && inWifiDetail"
+ ref="ipvHolder"
+ >
<div class="title">鏃犵嚎缃戠粶</div>
<div class="btns">
<div class="cancel">鍒犻櫎</div>
@@ -89,11 +93,7 @@
<div class="general-box">
<div class="in-title">閫氱敤</div>
- <el-form
- :model="wifiForm"
- ref="wifiForm"
- class="join-form"
- >
+ <el-form :model="wifiForm" ref="wifiForm" class="join-form">
<el-form-item prop="name">
<div class="p-title">鍚嶇О</div>
<!-- <div class="wifi-name">{{ 12123 }}</div> -->
@@ -116,22 +116,27 @@
</el-form>
</div>
- <switchBar
- :barName="`楂樼骇璁剧疆`"
- :value="isHighClass"
- ></switchBar>
+ <switchBar :barName="`楂樼骇璁剧疆`" :value="isHighClass"></switchBar>
- <div class="general-box fold" :class="{'hidden':IPV4_hid}" >
- <div class="in-title">IPV4
- <span class="icon iconfont icon-fold"
- @click="toggleFold('IPV4_hid')"></span>
+ <div class="general-box fold" :class="{ hidden: IPV4_hid }">
+ <div class="in-title">
+ IPV4
+ <span
+ class="icon iconfont icon-fold"
+ @click="toggleFold('IPV4_hid')"
+ ></span
+ >
</div>
<el-form :model="ipv4Form" :rules="ipv4FormRules" ref="ipv4Form">
<el-form-item>
<div class="p-title">鏂规硶</div>
- <el-select v-model="value" placeholder="璇烽�夋嫨" size="small"
- :popper-append-to-body="false">
+ <el-select
+ v-model="value"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ :popper-append-to-body="false"
+ >
<el-option
v-for="item in options"
:key="item.value"
@@ -179,16 +184,29 @@
</el-form>
</div>
- <div class="general-box fold" :class="{'hidden':IPV6_hid}" ref="ipv6Holder">
- <div class="in-title">IPV6
- <span class="icon iconfont icon-fold"
- @click="toggleFold('IPV6_hid')"></span>
+ <div
+ class="general-box fold"
+ :class="{ hidden: IPV6_hid }"
+ ref="ipv6Holder"
+ >
+ <div class="in-title">
+ IPV6
+ <span
+ class="icon iconfont icon-fold"
+ @click="toggleFold('IPV6_hid')"
+ ></span
+ >
</div>
<el-form :model="ipv6Form" :rules="ipv6FormRules" ref="ipv6Form">
<el-form-item>
<div class="p-title">鏂规硶</div>
- <el-select v-model="value" placeholder="璇烽�夋嫨" size="small" :popper-append-to-body="false">
+ <el-select
+ v-model="value"
+ placeholder="璇烽�夋嫨"
+ size="small"
+ :popper-append-to-body="false"
+ >
<el-option
v-for="item in options"
:key="item.value"
@@ -217,9 +235,17 @@
<i class="el-icon-remove-outline" @click="minusPrefix"></i>
</div>
<div class="ad">
- <i class="el-icon-circle-plus-outline" @click="+(ipv6Form.prefix)++"></i>
+ <i
+ class="el-icon-circle-plus-outline"
+ @click="+ipv6Form.prefix++"
+ ></i>
</div>
- <div class="ad"><i class="el-icon-refresh-left" @click="ipv6Form.prefix=''"></i></div>
+ <div class="ad">
+ <i
+ class="el-icon-refresh-left"
+ @click="ipv6Form.prefix = ''"
+ ></i>
+ </div>
</div>
</el-form-item>
@@ -330,9 +356,9 @@
<div class="ok" @click="saveWire">淇濆瓨</div>
</div>
</div>
- <WifiGateway v-if="activePage == 3"></WifiGateway>
- <LoraGateway v-if="activePage == 4"></LoraGateway>
- <MqttGateway v-if="activePage == 5"></MqttGateway>
+ <WifiGateway v-if="activePage == 3"></WifiGateway>
+ <LoraGateway v-if="activePage == 4"></LoraGateway>
+ <MqttGateway v-if="activePage == 5"></MqttGateway>
</div>
</div>
</div>
@@ -352,9 +378,9 @@
import ipInput from "../components/IPInput";
import switchBar from "../components/switchBar";
-import WifiGateway from '../components/WifiGateway'
-import LoraGateway from '../components/LoraGateway'
-import MqttGateway from '../components/MqttGateway'
+import WifiGateway from "../components/WifiGateway";
+import LoraGateway from "../components/LoraGateway";
+import MqttGateway from "../components/MqttGateway";
export default {
components: {
@@ -362,7 +388,7 @@
switchBar,
WifiGateway,
LoraGateway,
- MqttGateway
+ MqttGateway,
},
data() {
const checkPwd = (rule, value, callback) => {
@@ -433,7 +459,7 @@
],
value: "",
IPV4_hid: false,
- IPV6_hid: false
+ IPV6_hid: false,
};
},
mounted() {
@@ -441,9 +467,9 @@
this.fetchWireList();
},
methods: {
- minusPrefix(){
- debugger
- this.ipv6Form.prefix
+ minusPrefix() {
+ debugger;
+ this.ipv6Form.prefix;
},
switchNetCard(item) {
if (item.active) {
@@ -512,8 +538,8 @@
if (i == 0) {
this.ruleForm.deviceName = "";
this.ruleForm.port = "";
- this.getCurServer()
- }
+ this.getCurServer();
+ }
if (i == 1) {
this.inWifiDetail = false;
}
@@ -575,16 +601,18 @@
});
},
toggleFold(tog) {
- const demo = this.$refs.ipvHolder
- if(!(this.IPV4_hid&&!this.IPV6_hid)){
- setTimeout(() => {
- demo.scrollIntoView({block: "end", inline: "nearest",behavior: 'smooth'})
- }, 300);
- }
- this[tog] = !this[tog]
-
-
- }
+ const demo = this.$refs.ipvHolder;
+ if (!(this.IPV4_hid && !this.IPV6_hid)) {
+ setTimeout(() => {
+ demo.scrollIntoView({
+ block: "end",
+ inline: "nearest",
+ behavior: "smooth",
+ });
+ }, 300);
+ }
+ this[tog] = !this[tog];
+ },
},
computed: {
showStatus() {
@@ -597,7 +625,7 @@
.all {
width: 100%;
}
-.wire{
+.wire {
width: 456px;
margin: 0 auto;
}
@@ -727,10 +755,11 @@
height: 48px;
font-size: 16px;
line-height: 48px;
- color: #4F4F4F;
- font-weight: bold; background: #F2F2F7;
- border-radius: 8px;
- margin-bottom: 4px;
+ color: #4f4f4f;
+ font-weight: bold;
+ background: #f2f2f7;
+ border-radius: 8px;
+ margin-bottom: 4px;
}
.el-form-item.is-required:not(.is-no-asterisk)
> .el-form-item__label:before,
@@ -757,7 +786,7 @@
border: 2px solid #409eff !important;
}
.el-select-dropdown__item {
- color: #4F4F4F;
+ color: #4f4f4f;
height: 32px;
font-size: 12px;
line-height: 32px;
@@ -806,7 +835,7 @@
width: 100%;
}
.el-select .el-input .el-select__caret {
- color: #4F4F4F;
+ color: #4f4f4f;
font-size: 14px;
font-weight: 600;
}
@@ -823,7 +852,7 @@
}
.switch-bar .name {
font-size: 14px;
- color: #4F4F4F;
+ color: #4f4f4f;
font-weight: bold;
}
.wifi-option {
@@ -839,7 +868,7 @@
border-radius: 8px;
.name {
font-size: 14px;
- color: #4F4F4F;
+ color: #4f4f4f;
font-weight: bold;
.icon {
color: #4e94ff;
@@ -877,7 +906,7 @@
padding-bottom: 10px;
margin-bottom: 20px;
&.fold {
- height: 342px;
+ height: 342px;
.icon-fold {
display: inline-block;
font-size: 14px;
@@ -887,10 +916,10 @@
}
}
&.hidden {
- height: 34px;
- .icon-fold {
- transform: rotate(180deg);
- }
+ height: 34px;
+ .icon-fold {
+ transform: rotate(180deg);
+ }
}
.el-form-item {
margin-bottom: 0px;
@@ -900,7 +929,7 @@
padding: 14px 20px;
font-weight: bold;
font-size: 14px;
- color: #4F4F4F;
+ color: #4f4f4f;
}
.ip-input-container {
max-width: none !important;
@@ -966,13 +995,15 @@
font-size: 15px;
font-weight: bold;
font-size: 14px;
- color: #4F4F4F;
+ color: #4f4f4f;
}
.right {
display: flex;
align-items: center;
.el-switch__core {
height: 14px;
+ background-color: var(--colorCard) !important;
+ border-color: var(--colorCard) !important;
}
.el-switch.is-checked .el-switch__core::after {
left: 100%;
@@ -995,7 +1026,7 @@
margin-right: 15px;
}
.good {
- color: #4e94ff;
+ color: var(--colorCard);
font-size: 16px;
}
.bad {
diff --git a/src/pages/systemSettings/index/App.vue b/src/pages/systemSettings/index/App.vue
index 8a8d3e9..d2ecf07 100644
--- a/src/pages/systemSettings/index/App.vue
+++ b/src/pages/systemSettings/index/App.vue
@@ -8,16 +8,17 @@
import BasicSetting from "../components/BasicSetting";
export default {
- name: 'settings',
+ name: "settings",
components: {
- BasicSetting
+ BasicSetting,
},
data() {
return {
activeName: "basic",
buttonAuthority: sessionStorage.getItem("buttonAuthoritys") || [],
- loginName: JSON.parse(sessionStorage.getItem("userInfo")).username || "鐢ㄦ埛鍚�"
- }
+ loginName:
+ JSON.parse(sessionStorage.getItem("userInfo")).username || "鐢ㄦ埛鍚�",
+ };
},
computed: {
isAdmin() {
@@ -29,7 +30,7 @@
return loginName === "superadmin" || loginName === "basic";
}
return false;
- }
+ },
},
methods: {
isShow(authority) {
@@ -43,18 +44,18 @@
},
},
created() {
- if (this.isShow('videoSystem:base')) {
- this.activeName = "basic"
- } else if (this.isShow('videoSystem:permission')) {
- this.activeName = "user"
- } else if (this.isShow('videoSystem:broadcast')) {
- this.activeName = "radio"
- } else if (this.isShow('videoSystem:eventPush')) {
- this.activeName = "event"
- } else if (this.isShow('videoSystem:logManage')) {
- this.activeName = "log"
- } else if (this.isShow('videoSystem:sysManage')) {
- this.activeName = "system"
+ if (this.isShow("videoSystem:base")) {
+ this.activeName = "basic";
+ } else if (this.isShow("videoSystem:permission")) {
+ this.activeName = "user";
+ } else if (this.isShow("videoSystem:broadcast")) {
+ this.activeName = "radio";
+ } else if (this.isShow("videoSystem:eventPush")) {
+ this.activeName = "event";
+ } else if (this.isShow("videoSystem:logManage")) {
+ this.activeName = "log";
+ } else if (this.isShow("videoSystem:sysManage")) {
+ this.activeName = "system";
}
},
};
diff --git a/src/pages/vindicate/index/App.vue b/src/pages/vindicate/index/App.vue
index ee839c1..6d69584 100644
--- a/src/pages/vindicate/index/App.vue
+++ b/src/pages/vindicate/index/App.vue
@@ -157,6 +157,13 @@
};
},
created() {
+ window.parent.postMessage(
+ {
+ msg: "showBack",
+ },
+ "*"
+ );
+
let color = localStorage.getItem("--colorCard");
if (color) {
document.documentElement.style.setProperty("--colorCard", `${color}`);
diff --git a/src/pages/vindicate/views/updateSettings.vue b/src/pages/vindicate/views/updateSettings.vue
index aeb3ad3..26c58a2 100644
--- a/src/pages/vindicate/views/updateSettings.vue
+++ b/src/pages/vindicate/views/updateSettings.vue
@@ -28,26 +28,41 @@
<div class="button-group">
<div class="bottom">
- <div class="top" :class="{ 'toggle':radio2 !== '妫�鏌ユ洿鏂�' }"></div>
- <div class="label-left" :class="{ 'toggle':radio2 == '妫�鏌ユ洿鏂�' }" @click="radio2 = '妫�鏌ユ洿鏂�'">妫�鏌ユ洿鏂�</div>
- <div class="label-right" :class="{ 'toggle':radio2 !== '妫�鏌ユ洿鏂�' }" @click="radio2 = '涓婁紶鏇存柊'">涓婁紶鏇存柊</div>
+ <div class="top" :class="{ toggle: radio2 !== '妫�鏌ユ洿鏂�' }"></div>
+ <div
+ class="label-left"
+ :class="{ toggle: radio2 == '妫�鏌ユ洿鏂�' }"
+ @click="radio2 = '妫�鏌ユ洿鏂�'"
+ >
+ 妫�鏌ユ洿鏂�
+ </div>
+ <div
+ class="label-right"
+ :class="{ toggle: radio2 !== '妫�鏌ユ洿鏂�' }"
+ @click="radio2 = '涓婁紶鏇存柊'"
+ >
+ 涓婁紶鏇存柊
+ </div>
</div>
</div>
<div class="update-center" v-if="radio2 == '妫�鏌ユ洿鏂�'">
- <img v-if="!upgrading&&hasNewVersion||checking"
+ <img
+ v-if="(!upgrading && hasNewVersion) || checking"
class="spin-bg"
src="/images/vindicate/妫�娴嬪姞杞�.png"
:class="upgrading || checking ? 'spin-bg-rot' : ''"
- />
- <img v-if="upgrading&&hasNewVersion"
+ />
+ <img
+ v-if="upgrading && hasNewVersion"
class="spin-bg"
src="/images/vindicate/鍔犺浇.png"
- />
- <img v-if="!checking&&!hasNewVersion"
+ />
+ <img
+ v-if="!checking && !hasNewVersion"
class="spin-bg"
src="/images/vindicate/宸叉槸鏈�鏂扮増鏈�.png"
- />
+ />
<div class="desc" v-if="checking && !upgrading">
姝e湪妫�娴嬬増鏈洿鏂扳�︹��
</div>
@@ -59,14 +74,16 @@
<div class="desc desc-suc" v-if="!checking && !hasNewVersion">
褰撳墠宸茬粡鏄渶鏂扮増鏈�
</div>
-
- <div class="text-desc" v-if="hasNewVersion && !checking&& !upgrading">
- {{verText}}
+ <div
+ class="text-desc"
+ v-if="hasNewVersion && !checking && !upgrading"
+ >
+ {{ verText }}
</div>
<el-button
- v-if="hasNewVersion && !checking&&!upgrading"
+ v-if="hasNewVersion && !checking && !upgrading"
:loading="upgrading"
type="primary"
style="width: 150px"
@@ -76,50 +93,45 @@
>
</div>
-
-
<div class="upload-center" v-if="radio2 == '涓婁紶鏇存柊'">
- <div class="upload-info"><img src="/images/vindicate/閾炬帴 1.png" style="width: 14px;"> 涓婁紶瀹夎杞欢</div>
+ <div class="upload-info">
+ <img src="/images/vindicate/閾炬帴 1.png" style="width: 14px" />
+ 涓婁紶瀹夎杞欢
+ </div>
<div class="upload-top">
-
<div class="upload-container">
- <div class="upload-fail " v-if="upStatus===0">
- <i class="icon iconfont upload-icon">
- 
- </i>
- <p>涓婁紶澶辫触锛岃閲嶆柊涓婁紶銆�</p>
- </div>
-
- <div class="upload-success" v-if="upStatus===1">
- <i class="icon iconfont upload-icon">
- 
- </i>
- <p>涓婁紶鎴愬姛锛岃鐐瑰嚮鏇存柊鎸夐挳寮�濮嬫洿鏂般��</p>
- </div>
-
- <el-upload
- ref="myUpload"
- class="upload-demo"
- drag
- action
- v-show="!shengjiing&&upStatus===''"
- :http-request="uploadPkg"
- :limit="1"
- >
- <i class="el-icon-upload"></i>
- <div
- class="el-upload__text"
- v-loading="upgrading"
- element-loading-text="涓婁紶涓紝璇风◢鍚�"
- element-loading-spinner="el-icon-loading"
- >
- 灏� .zip 鏇存柊鏂囦欢鎷栧埌姝ゅ锛屾垨 <em> 鐐瑰嚮涓婁紶 </em>
+ <div class="upload-fail" v-if="upStatus === 0">
+ <i class="icon iconfont upload-icon">  </i>
+ <p>涓婁紶澶辫触锛岃閲嶆柊涓婁紶銆�</p>
</div>
- <div class="el-upload__tip" slot="tip"></div>
- </el-upload>
+ <div class="upload-success" v-if="upStatus === 1">
+ <i class="icon iconfont upload-icon">  </i>
+ <p>涓婁紶鎴愬姛锛岃鐐瑰嚮鏇存柊鎸夐挳寮�濮嬫洿鏂般��</p>
+ </div>
+
+ <el-upload
+ ref="myUpload"
+ class="upload-demo"
+ drag
+ action
+ v-show="!shengjiing && upStatus === ''"
+ :http-request="uploadPkg"
+ :limit="1"
+ >
+ <i class="el-icon-upload"></i>
+ <div
+ class="el-upload__text"
+ v-loading="upgrading"
+ element-loading-text="涓婁紶涓紝璇风◢鍚�"
+ element-loading-spinner="el-icon-loading"
+ >
+ 灏� .zip 鏇存柊鏂囦欢鎷栧埌姝ゅ锛屾垨 <em> 鐐瑰嚮涓婁紶 </em>
+ </div>
+ <div class="el-upload__tip" slot="tip"></div>
+ </el-upload>
</div>
-
+
<span
class="icon iconfont spin-bg"
:class="shengjiing ? 'spin-bg-rot' : ''"
@@ -198,7 +210,8 @@
activePage: 0,
patchUpdateStatus: "",
probeSum: 0,
- timer: null,verText:"",
+ timer: null,
+ verText: "",
patchFile: {},
fileAdded: false,
curVersionName: "",
@@ -207,7 +220,7 @@
checking: true,
newVersionName: "",
hasNewVersion: false,
- upStatus:'',
+ upStatus: "",
sysSetList: [
{ title: "鑷姩娓呯悊杞欢鍖呯紦瀛�", val: false, name: "sys_auto_clean" },
{ title: "鏇存柊鎻愰啋", val: false, name: "sys_update_notice" },
@@ -227,10 +240,10 @@
},
mounted() {
const isAutoUpdate = getUrlKey("autoUpdate");
- if (isAutoUpdate==1) {
- this.checking = false
- this.upgradeNewVersion()
- }else{
+ if (isAutoUpdate == 1) {
+ this.checking = false;
+ this.upgradeNewVersion();
+ } else {
this.fetchUpgradInfo();
}
this.fetchSettings();
@@ -261,7 +274,7 @@
this.newVersionName = res.data.newVersion;
this.curVersionName = res.data.curVersion;
this.hasNewVersion = res.data.hasNewVersion;
- this.verText=res.data.newVersionInfo
+ this.verText = res.data.newVersionInfo;
if (!this.hasNewVersion) {
this.upgrading = false;
@@ -287,21 +300,23 @@
let param = new FormData();
param.append("archive", params.file);
this.upgrading = true;
- uploadUpgradePkg(param).then((res) => {
- this.upgrading = false;
- this.pkgID = res.data.id;
- this.upStatus = 1
- setTimeout(() => {
- this.upStatus =''
- }, 2000);
- }).catch(()=>{
- this.upgrading = false;
- this.$refs.myUpload.clearFiles()
- this.upStatus = 0
- setTimeout(() => {
- this.upStatus =''
- }, 2000);
- })
+ uploadUpgradePkg(param)
+ .then((res) => {
+ this.upgrading = false;
+ this.pkgID = res.data.id;
+ this.upStatus = 1;
+ setTimeout(() => {
+ this.upStatus = "";
+ }, 2000);
+ })
+ .catch(() => {
+ this.upgrading = false;
+ this.$refs.myUpload.clearFiles();
+ this.upStatus = 0;
+ setTimeout(() => {
+ this.upStatus = "";
+ }, 2000);
+ });
},
upgrade() {
this.shengjiing = true;
@@ -364,14 +379,13 @@
}
});
},
-
},
};
</script>
<style lang="scss">
.all {
width: 100%;
- background-color: #FBFAFF;
+ background-color: #fbfaff;
}
.update-set-content {
height: 100%;
@@ -380,8 +394,8 @@
flex: 1;
flex-basis: auto;
box-sizing: border-box;
- border-top:4px solid rgb(242, 242, 247) ;
- border-left:4px solid rgb(242, 242, 247) ;
+ border-top: 4px solid rgb(242, 242, 247);
+ border-left: 4px solid rgb(242, 242, 247);
.cluster-center {
height: 100%;
width: 300px;
@@ -396,7 +410,7 @@
margin-bottom: 4px;
border-radius: 8px;
line-height: 56px;
- box-sizing: border-box;
+ box-sizing: border-box;
cursor: pointer;
padding: 0 15px;
display: flex;
@@ -412,21 +426,21 @@
}
.menu-text {
font-size: 16px;
- font-weight: 700;
+ font-weight: 700;
}
}
}
- .menu-item-active {
+ .menu-item-active {
background-color: var(--colorCard) !important;
- .iconfont {
- color: #fff !important;
- }
- .menu-text {
- color: #fff;
- }
+ .iconfont {
+ color: #fff !important;
+ }
+ .menu-text {
+ color: #fff;
+ }
}
- .menu-item:hover {
- background-color: #F2F2F7;
+ .menu-item:hover {
+ background-color: #f2f2f7;
}
}
.cluster-right {
@@ -506,7 +520,7 @@
.bottom {
position: relative;
height: 100%;
- background: #F2F2F7;
+ background: #f2f2f7;
border-radius: 20px;
cursor: pointer;
.top {
@@ -515,9 +529,9 @@
left: 0;
width: 84px;
height: 28px;
- background: #4E94FF;
+ background: var(--colorCard);
border-radius: 20px;
- transition: all .2s linear;
+ transition: all 0.2s linear;
&.toggle {
left: 84px;
}
@@ -533,9 +547,9 @@
line-height: 28px;
font-weight: 700;
color: #333333;
- &.toggle {
- color: #fff;
- }
+ &.toggle {
+ color: #fff;
+ }
}
.label-right {
position: absolute;
@@ -549,8 +563,8 @@
font-weight: 700;
color: #333333;
&.toggle {
- color: #fff;
- }
+ color: #fff;
+ }
}
}
}
@@ -564,10 +578,9 @@
}
.spin-bg {
-
- width: 60px;
+ width: 60px;
margin-top: 60px;
- margin-bottom:15px ;
+ margin-bottom: 15px;
}
.spin-bg-rot {
animation: spin 0.8s linear infinite;
@@ -595,25 +608,25 @@
background: var(--colorCard) !important;
border: none !important;
&:hover {
- color: white !important;
+ color: white !important;
}
}
- .text-desc{
+ .text-desc {
width: 90%;
height: 150px;
margin-top: 20px;
- background-color: #F2F2F7;
+ background-color: #f2f2f7;
padding: 20px 30px;
color: #333;
text-align: left;
font-size: 12px;
- border-radius:8px ;
+ border-radius: 8px;
}
}
.upload-center {
- margin-top:44px ;
+ margin-top: 44px;
.upload-info {
- margin-bottom:20px ;
+ margin-bottom: 20px;
text-align: left;
font-weight: bold;
font-size: 14px;
@@ -626,16 +639,16 @@
background-color: #fff;
border-radius: 8px;
- .upload-fail .iconfont{
+ .upload-fail .iconfont {
color: rgb(254, 109, 104);
}
- .upload-success .iconfont{
+ .upload-success .iconfont {
color: rgb(78, 148, 255);
}
-
-
- .upload-success,.upload-fail {
+
+ .upload-success,
+ .upload-fail {
position: absolute;
z-index: 1;
width: 100%;
@@ -654,7 +667,7 @@
.upload-icon {
display: block;
margin-top: 32px;
- margin-bottom:42px ;
+ margin-bottom: 42px;
font-size: 50px;
}
}
@@ -682,8 +695,8 @@
background: var(--colorCard) !important;
border: none !important;
&:hover {
- color: white !important;
- }
+ color: white !important;
+ }
}
.el-button--small {
font-size: 14px;
@@ -697,25 +710,25 @@
flex-direction: column;
.el-upload {
- width: 340px !important;
- height: 117.87px !important;
- margin: 28px auto;
- .el-upload-dragger {
- width: 100% !important;
- height: 100% !important;
- i {
- display: none !important;
+ width: 340px !important;
+ height: 117.87px !important;
+ margin: 28px auto;
+ .el-upload-dragger {
+ width: 100% !important;
+ height: 100% !important;
+ i {
+ display: none !important;
+ }
+ .el-upload__text {
+ color: #828282 !important;
+ margin-top: 52px !important;
+ font-size: 14px !important;
+ }
+ .el-loading-text {
+ font-size: 14px !important;
+ color: #333333 !important;
+ }
}
- .el-upload__text {
- color: #828282 !important;
- margin-top: 52px !important;
- font-size: 14px !important;
- }
- .el-loading-text {
- font-size: 14px !important;
- color: #333333 !important;
- }
- }
}
.el-upload.el-upload--text .el-upload-dragger:hover {
@@ -730,13 +743,13 @@
width: 150px;
height: 40px;
margin-top: 158px;
- margin-bottom:25px ;
+ margin-bottom: 25px;
background: var(--colorCard) !important;
border: none !important;
border-radius: 25px !important;
&:hover {
- color: white !important;
- }
+ color: white !important;
+ }
}
}
.up-text {
@@ -766,11 +779,11 @@
display: flex;
align-items: center;
height: 50px;
- background-color: #F2F2F7;
+ background-color: #f2f2f7;
justify-content: space-between;
border-radius: 12px;
margin-bottom: 4px;
- padding-left:20px ;
+ padding-left: 20px;
.name {
font-size: 14px;
font-weight: 700;
@@ -780,10 +793,10 @@
text-align: left;
padding: 17px 0 17px 25px;
font-size: 16px;
- color:#333;
+ color: #333;
font-weight: 700;
}
- .el-switch{
+ .el-switch {
width: 40px;
height: 14px;
margin-right: 17px;
@@ -798,14 +811,14 @@
width: 12px !important;
height: 12px !important;
}
- }
+ }
- .is-checked .el-switch__core{
- background-color: var(--colorCard) !important;
- border: 1px solid var(--colorCard) !important;
- &::after {
- margin-left: 16px
- }
+ .is-checked .el-switch__core {
+ background-color: var(--colorCard) !important;
+ border: 1px solid var(--colorCard) !important;
+ &::after {
+ margin-left: 16px;
+ }
}
}
@@ -818,14 +831,12 @@
line-height: 40px;
font-size: 14px;
margin-top: 20px;
- background: var(--colorCard) !important;
- border: none !important;
- &:hover {
- color: white !important;
- }
+ background: var(--colorCard) !important;
+ border: none !important;
+ &:hover {
+ color: white !important;
+ }
}
}
-
}
-
</style>
diff --git a/vue.config.js b/vue.config.js
index 29b52cf..d194a06 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -93,7 +93,7 @@
},
"/data/api-v/app/findAllApp": {
// target: '/',
- target: "http://localhost:8081/",
+ target: "http://localhost:8080/",
changeOrigin: true,
pathRewrite: {
"^/data/api-v/app/findAllApp": "apps.json",
--
Gitblit v1.8.0