From 93a26507f76156fa65aead1515c430688c089e1d Mon Sep 17 00:00:00 2001 From: hanbaoshan <hanbaoshan@aiotlink.com> Date: 星期一, 22 二月 2021 15:49:01 +0800 Subject: [PATCH] 新版目录树样式调试及状态更新调试;朔黄批量导入列表调试;视频检索页面添加处理参数,添加标注接口添加参数;分页器展示优化,默认检索时间调整;转储设备接口调试 --- vue.config.js | 2 src/pages/cameraAccess/index/App.vue | 2 src/components/giantTree/zTree/ztree_v3/jquery.ztree.all.js | 2 src/components/giantTree/zTree/ztree.vue | 4 src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue | 43 ++++++++-- src/pages/cameraAccess/components/CameraInfo.vue | 12 ++ src/pages/shuohuangMonitorAnalyze/components/transferDeviceManage.vue | 136 +++++++++++++++++++++++++-------- src/pages/shuohuangMonitorAnalyze/components/memberManage.vue | 10 +- src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue | 1 src/api/shuohuang.ts | 5 + src/components/giantTree/index.vue | 23 +++++ 11 files changed, 189 insertions(+), 51 deletions(-) diff --git a/src/api/shuohuang.ts b/src/api/shuohuang.ts index ac54af1..7b111d0 100644 --- a/src/api/shuohuang.ts +++ b/src/api/shuohuang.ts @@ -144,4 +144,9 @@ export const getDeviceList = ()=>request({ url:'/data/api-c/device/getlst', method: 'get' +}) +export const getDeviceInfoById = (query:any) => request({ + url:'/data/api-c/slot/getlst', + method: 'get', + params: query }) \ No newline at end of file diff --git a/src/components/giantTree/index.vue b/src/components/giantTree/index.vue index 09e5bdc..52a101a 100644 --- a/src/components/giantTree/index.vue +++ b/src/components/giantTree/index.vue @@ -82,7 +82,9 @@ { required: true, message: "璇疯緭鍏ヨ妭鐐瑰悕绉�", trigger: "change" }, { min: 2, max: 10, message: "闀垮害鍦�2鍒�10涓瓧", trigger: "change" } ] - } + }, + evt: {}, + treeId: '', }; }, created() { @@ -241,6 +243,12 @@ this.showDialog = true; }, itemClick(evt, treeId, treeNode) { + debugger + //let itemClickArgs = {evt,treeId}; + this.evt = evt; + this.treeId = treeId; + console.log(evt,treeId) + // sessionStorage.setItem('itemClickArgs',JSON.stringify(itemClickArgs)) this.TreeDataPool.selectedNode = treeNode; this.TreeDataPool.treeType = this.treeName; @@ -253,6 +261,19 @@ this.TreeDataPool.updateZTreeCheckNodes([treeNode]); }, + // itemClick(treeNode) { + // this.TreeDataPool.selectedNode = treeNode; + // this.TreeDataPool.treeType = this.treeName; + + // // 澶氶�� + // if (this.TreeDataPool.multiple) { + // // 鍗曞嚮鏌愪竴涓妭鐐规枃瀛楁椂 鍙栨秷鎵�鏈夊嬀閫夌姸鎬� 鐒跺悗閫変腑鑷韩 + // this.ztreeObj.checkAllNodes(false); + // this.ztreeObj.checkNode(treeNode, true, false, false); + // } + + // this.TreeDataPool.updateZTreeCheckNodes([treeNode]); + // }, itemCheck(evt, treeId, treeNode) { this.TreeDataPool.selectedNode = treeNode; this.TreeDataPool.treeType = this.treeName; diff --git a/src/components/giantTree/zTree/ztree.vue b/src/components/giantTree/zTree/ztree.vue index fc3ba3a..f6f79e0 100644 --- a/src/components/giantTree/zTree/ztree.vue +++ b/src/components/giantTree/zTree/ztree.vue @@ -38,6 +38,7 @@ list: [], ztreeSetting: { view: { + showLine: true, showIcon: true, // default to hide icon addHoverDom: this.addHoverDom, removeHoverDom: this.removeHoverDom @@ -265,7 +266,7 @@ .ztree * { padding: 0; margin: 0; - font-size: 13px; + font-size: 14px; font-family: Verdana, Arial, Helvetica, AppleGothic, sans-serif; } .ztree { @@ -381,6 +382,7 @@ background-attachment: scroll; /* background-image: url("./img/zTreeStandard.png"); */ /* *background-image: url("./img/zTreeStandard.gif"); */ + background-image: url(data:image/png;base64,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); *background-image: url(data:image/gif;base64,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); } diff --git a/src/components/giantTree/zTree/ztree_v3/jquery.ztree.all.js b/src/components/giantTree/zTree/ztree_v3/jquery.ztree.all.js index b191ff7..3b74a68 100644 --- a/src/components/giantTree/zTree/ztree_v3/jquery.ztree.all.js +++ b/src/components/giantTree/zTree/ztree_v3/jquery.ztree.all.js @@ -841,6 +841,7 @@ return true; }, onClickNode: function (event, node) { + debugger var setting = data.getSetting(event.data.treeId), clickFlag = ((setting.view.autoCancelSelected && (event.ctrlKey || event.metaKey)) && data.isSelectedNode(setting, node)) ? 0 : (setting.view.autoCancelSelected && (event.ctrlKey || event.metaKey) && setting.view.selectedMulti) ? 2 : 1; if (tools.apply(setting.callback.beforeClick, [setting.treeId, node, clickFlag], true) == false) return true; @@ -1674,6 +1675,7 @@ } }, selectNode: function (setting, node, addFlag) { + debugger if (!addFlag) { view.cancelPreSelectedNode(setting, null, node); } diff --git a/src/pages/cameraAccess/components/CameraInfo.vue b/src/pages/cameraAccess/components/CameraInfo.vue index 58eee53..72cec9a 100644 --- a/src/pages/cameraAccess/components/CameraInfo.vue +++ b/src/pages/cameraAccess/components/CameraInfo.vue @@ -382,10 +382,11 @@ this.form.sensors = list this.form.resolution_width = Number(this.form.resolution.split("*")[0]) this.form.resolution_height = Number(this.form.resolution.split("*")[1]) - + let _this = this; // 鏇存柊 if (this.form.id !== "") { this.form.areaid = this.TreeDataPool.getParent(this.form.id, this.isGb28182); + console.log(this.TreeDataPool.selectedNode) updateCameraInfo(this.form).then(rsp => { if (rsp.success) { this.$notify({ @@ -393,6 +394,15 @@ message: "鎽勫儚鏈轰俊鎭慨鏀规垚鍔燂紒" }); this.TreeDataPool.fetchTreeData(); + console.log(this.TreeDataPool.selectedNode) + //_this.$root.$children[0].$refs['leftTree'].$refs.tree.ztreeObj.checkNode(_this.TreeDataPool.selectedNode, true, false, false); + //閫変腑淇敼鍚庣殑鑺傜偣 + let {evt,treeId} = _this.$root.$children[0].$refs['leftTree'].$refs.tree; + console.log(evt,treeId) + // this.$nextTick(()=>{ + _this.$root.$children[0].$refs['leftTree'].$refs.tree.itemClick(evt,treeId,_this.TreeDataPool.selectedNode) + // }) + } else { this.selectCamera(this.TreeDataPool.selectedNode); this.$notify({ diff --git a/src/pages/cameraAccess/index/App.vue b/src/pages/cameraAccess/index/App.vue index e843f32..d18f4ca 100644 --- a/src/pages/cameraAccess/index/App.vue +++ b/src/pages/cameraAccess/index/App.vue @@ -4,7 +4,7 @@ <div class="resize-bar"></div> <div class="resize-line"></div> <div class="resize-save"> - <left-nav :appName="app" :height="screenHeight"></left-nav> + <left-nav :appName="app" :height="screenHeight" ref="leftTree"></left-nav> </div> </div> <div class="column-right"> diff --git a/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue b/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue index 2111a3e..bfe6e92 100644 --- a/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue +++ b/src/pages/shuohuangMonitorAnalyze/components/memberManage.vue @@ -221,9 +221,9 @@ </div> <el-table class="thbg" :data="batchImportTableData" fit> <el-table-column type="index" label="搴忓彿"></el-table-column> - <el-table-column prop="filename" label="鏂囦欢鍚嶇О"></el-table-column> - <el-table-column prop="time" label="涓婁紶鏃堕棿"></el-table-column> - <el-table-column prop="state" label="鐘舵��"></el-table-column> + <el-table-column prop="Name" label="鏂囦欢鍚嶇О"></el-table-column> + <el-table-column prop="UploadTime" label="涓婁紶鏃堕棿"></el-table-column> + <el-table-column prop="Status" label="鐘舵��"></el-table-column> </el-table> </div> </el-dialog> @@ -411,6 +411,7 @@ this.$refs['directoryInput'].click(); }, importDirectory () { + let _this = this; //this.$refs['directoryInput'].files //鏂囦欢澶筸ap let formData = new FormData; for (var file in this.$refs['directoryInput'].files) { @@ -420,7 +421,8 @@ uploadDirectory(formData).then(res => { debugger - + _this.batchImportTableData = res.data; + _this.renderMemberTable(); }) }, diff --git a/src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue b/src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue index 10c1de4..2d8b3dd 100644 --- a/src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue +++ b/src/pages/shuohuangMonitorAnalyze/components/searchForVideoAnalyze.vue @@ -124,10 +124,10 @@ </el-select> </div> <div> - <el-select v-model="settle" size="mini"> + <el-select v-model="IsOperate" size="mini" @change="filterSearchData"> <el-option value label="鍏ㄩ儴"></el-option> - <el-option value="1" label="鏈鐞�"></el-option> - <el-option value="2" label="宸插鐞�"></el-option> + <el-option value="0" label="鏈鐞�"></el-option> + <el-option value="1" label="宸插鐞�"></el-option> </el-select> </div> </div> @@ -187,6 +187,7 @@ </el-col> </el-row> <el-pagination + class="pagination-center" background @size-change="handleTabSizeChange" @current-change="handleCurrentChange" @@ -216,6 +217,7 @@ </el-table-column> </el-table> <el-pagination + class="pagination-center" @size-change="handleTableSizeChange" @current-change="handleCurrentChange" :current-page.sync="curTablePage" @@ -256,7 +258,8 @@ CLIP: 'http://', keyword: '', IsFollow: '', - searchTime: [this.$moment(new Date().getTime() - 3600 * 1000 * 24 * 5).format("YYYY-MM-DD HH:mm:ss"), this.$moment(new Date()).format("YYYY-MM-DD HH:mm:ss")], + //searchTime: [this.$moment(new Date().getTime() - 3600 * 1000 * 24 * 5).format("YYYY-MM-DD HH:mm:ss"), this.$moment(new Date()).format("YYYY-MM-DD HH:mm:ss")], + searchTime: [new Date(2020,0,1,0,0,0),new Date(2020,11,31,23,59,59)], curTabPage: 1, curTablePage: 1, tabPageSize: 8, @@ -310,6 +313,7 @@ showAdvance: true, fixedOneLineHeight: 40, settle: '', + IsOperate: '', showType: 'menu', tableData: [ { name: 'SS4B115_06_B鑺備簩绔徃鏈哄_20201115_091500.mp4', size: '17.66M', updateTime: '2020-11-04 15:41', createTime: '2020-11-04 15:41' }, @@ -363,10 +367,11 @@ KeyWord: this.keyword, StartDate: this.searchTime[0], EndDate: this.searchTime[1], - PageIndex: this.showType == 'list' ? this.curTablePage : this.showType == 'list', + PageIndex: this.showType == 'list' ? this.curTablePage : this.curTabPage, PageSize: this.showType == 'list' ? this.tablePageSize : this.tabPageSize, IsDetail: this.showType == 'list', - IsFollow: isFollow + IsFollow: isFollow, + IsOperate: this.IsOperate }; let filterQuerys = []; this.checkedConfigs.forEach(config => { @@ -401,7 +406,8 @@ PageIndex: this.showType == 'list' ? this.curTablePage : this.showType == 'list', PageSize: this.showType == 'list' ? this.tablePageSize : this.tabPageSize, IsDetail: this.showType == 'list', - IsFollow: this.IsFollow + IsFollow: this.IsFollow, + IsOperate: this.IsOperate, }; this.optionalConfigs = []; this.highLevelConfigs = []; @@ -422,6 +428,12 @@ obj.id = config.Node[key] return obj }); + // config.data = config.Node.map((item) => { + // let obj = {}; + // obj.name = item[0]; + // obj.id = item[1]; + // return obj; + // }); config.id = config.ID; config.title = config.NameZn; config.data.forEach(item => { @@ -744,11 +756,20 @@ border-radius: 5px; height: 350px; .video-wrap { - background: aliceblue; border-radius: 3px; + width: 100%; + padding-top: 56.25%; + height: 0; + position: relative; img { + position: absolute; + top: 0; width: 100%; - border-radius: 3px; + height: 100%; + object-fit: contain; + // width: 100%; + // max-height: 200px; + // border-radius: 3px; } } .video-info { @@ -801,6 +822,10 @@ cursor: pointer; } } + .pagination-center{ + text-align: center; + margin: 10px auto; + } } .dialog-video { z-index: 2096 !important; diff --git a/src/pages/shuohuangMonitorAnalyze/components/transferDeviceManage.vue b/src/pages/shuohuangMonitorAnalyze/components/transferDeviceManage.vue index 5429e2b..8921ac0 100644 --- a/src/pages/shuohuangMonitorAnalyze/components/transferDeviceManage.vue +++ b/src/pages/shuohuangMonitorAnalyze/components/transferDeviceManage.vue @@ -1,19 +1,22 @@ <template> <div class="transfer-device-manage"> <div class="header-with-tab"> - <el-tabs v-model="actTab" @tab-click="checkTab" > - <el-tab-pane name="dev1" v-for="tab in devices" :key="tab"> + <el-tabs v-model="actTab" @tab-click="checkTab"> + <el-tab-pane :name="tab.ID" v-for="tab in devices" :key="tab.ID"> <div slot="label" class="label-slot"> <span>{{tab.Name}}</span> - <span class="capsule" :class="{'online':tab.Status==0,'offline':tab.Status==1}">{{tab.Status==0?"鍦ㄧ嚎":"绂荤嚎"}}</span> + <span + class="capsule" + :class="{'online':tab.Status==0,'offline':tab.Status==1}" + >{{tab.Status==0?"鍦ㄧ嚎":"绂荤嚎"}}</span> </div> </el-tab-pane> - <el-tab-pane name="dev2"> + <!-- <el-tab-pane name="dev2"> <div slot="label" class="label-slot"> <span>杞偍璁惧2</span> <span class="capsule offline">绂荤嚎</span> </div> - </el-tab-pane> + </el-tab-pane>--> </el-tabs> <div class="btn-add-dev" @click="showAddDevice"> <i class="el-icon-circle-plus"></i> @@ -31,10 +34,10 @@ :key="indicator.id" > <div class="title"> - <span class="dot"></span> + <span class="dot" :class="{'kx':indicator.id=='kx','dx':indicator.id=='dx','ccgz':indicator.id=='ccgz'}"></span> <span class="word">{{indicator.title}}</span> </div> - <div class="indicator-val">{{indicator.val}}</div> + <div class="indicator-val">{{indicator.slots.length}}</div> </div> </div> <div class="table-area"> @@ -44,7 +47,7 @@ <div> <el-input v-model="deviceAddr" size="small"></el-input> </div> - </div> --> + </div>--> <div> <label>璁惧鐘舵��:</label> <div> @@ -58,8 +61,18 @@ </div> </div> <el-table class="thbg" :data="tableData" fit> - <el-table-column prop="name" label="杞偍璁惧鍚嶇О"></el-table-column> - <el-table-column prop="state" label="璁惧鐘舵��"></el-table-column> + <el-table-column type="index" width="100" label="搴忓彿"></el-table-column> + <el-table-column prop="Name" label="鎻掓Ы鍚嶇О"></el-table-column> + <el-table-column prop="Status" label="鐘舵��"> + <template slot-scope="scope"> + <div> + <span v-if="scope.row.Status==0">绌洪棽涓�</span> + <span v-if="scope.row.Status==1">璇诲啓涓�</span> + <span v-if="scope.row.Status==2">鎻掓Ы鏁呴殰</span> + </div> + </template> + </el-table-column> + <!-- <el-table-column prop="state" label="璁惧鐘舵��"></el-table-column> <el-table-column prop="pic" label="鐜板満鍥剧墖"></el-table-column> <el-table-column prop="addr" label="璁惧鍦板潃"></el-table-column> <el-table-column prop="tel" label="鎶ヤ慨鐢佃瘽"></el-table-column> @@ -69,12 +82,16 @@ <span @click="checkSlot(scope.row)">鏌ョ湅鎻掓Ы</span> </div> </template> - </el-table-column> + </el-table-column>--> </el-table> </div> - <el-dialog :visible="visibleOfialogAddDev"> + <el-dialog + :visible="visibleOfialogAddDev" + title="娣诲姞璁惧" + class="dialog-addDev" + @close="visibleOfialogAddDev = false" + > <div> - <p slot="title">娣诲姞璁惧</p> <div class="flex-box"> <label>璁惧鍚嶇О锛�</label> <el-input v-model="Name"></el-input> @@ -92,53 +109,81 @@ </div> </template> <script> -import {addDevice,getDeviceList} from '@/api/shuohuang'; +import { addDevice, getDeviceList, getDeviceInfoById } from '@/api/shuohuang'; export default { data () { return { actTab: 'dev1', devices: [], - generalIndicators: [{ id: 'gz', title: '鏈夋晠闅滆澶�', val: 156 }, { id: 'zc', title: '姝e父璁惧', val: 5000 }, { id: 'dx', title: '璇诲啓涓�', val: 56 }, { id: 'kx', title: '绌洪棽涓�', val: 2000 }, { id: 'ccgz', title: '鎻掓Ы鏁呴殰', val: 1000 }], + generalIndicators: [{ id: 'dx', title: '璇诲啓涓�', slots: [] }, { id: 'kx', title: '绌洪棽涓�', slots: [] }, { id: 'ccgz', title: '鎻掓Ы鏁呴殰', slots: [] }], deviceAddr: '', deviceState: '', tableData: [], visibleOfialogAddDev: false, - Name:'', - IP:'', + Name: '', + IP: '', } }, - mounted(){ + mounted () { this.findDeviceList(); }, methods: { - findDeviceList (){ - getDeviceList().then(res=>{ - debugger - //_this.devices = + findDeviceList () { + let _this = this; + getDeviceList().then(res => { + _this.devices = res.data; + _this.actTab = _this.devices[0].ID; + _this.findDeviceIfo() }) }, - toAddDevice(){ + findDeviceIfo () { + let _this = this; + getDeviceInfoById({ DeviceID: this.actTab }).then(res => { + debugger + _this.tableData = res.data; + //缁熻褰撳墠鎻掓Ы鐘舵�� + let dx = _this.generalIndicators.find(indicator => indicator.id == 'dx'); + let kx = _this.generalIndicators.find(indicator => indicator.id == 'kx'); + let ccgz = _this.generalIndicators.find(indicator => indicator.id == 'ccgz'); + dx.slots = []; + kx.slots = []; + ccgz.slots = []; + res.data.forEach(slot => { + if (slot.Status == 0) { + kx.slots.push(slot) + } + if (slot.Status == 1) { + dx.slots.push(slot) + } + if (slot.Status == 2) { + ccgz.slots.push(slot) + } + }) + //_this.generalIndicators + }) + }, + toAddDevice () { let _this = this; let params = { Name: this.Name, IP: this.IP } - addDevice(params).then(res=>{ - if(res.success){ + addDevice(params).then(res => { + if (res.success) { this.$notify({ - type:'success', + type: 'success', message: res.msg }) _this.visibleOfialogAddDev = true; } }) }, - showAddDevice(){ + showAddDevice () { this.visibleOfialogAddDev = true; }, checkTab (tab, event) { - + this.findDeviceIfo(); }, checkSlot (row) { @@ -150,7 +195,7 @@ <style lang="scss"> .transfer-device-manage { padding: 20px; - .el-tabs__item{ + .el-tabs__item { height: 45px; line-height: 45px; } @@ -167,17 +212,17 @@ .capsule { width: 42px; height: 20px; - margin-left: 10px; + margin-left: 10px; line-height: 20px; text-align: center; border-radius: 20px; font-size: 12px; font-weight: normal; color: #fff; - &.online{ + &.online { background: #00a854; } - &.offline{ + &.offline { background: #f04134; } } @@ -223,7 +268,13 @@ height: 10px; margin-right: 5px; border-radius: 50%; - background: rgb(94, 14, 243); + background: #01a854; + &.kx { + background: #0f77d1; + } + &.ccgz { + background: #f04235; + } } } .indicator-val { @@ -241,5 +292,24 @@ } } } + .dialog-addDev { + .el-dialog { + width: 600px; + } + .flex-box { + align-items: center; + margin-bottom: 10px; + label { + width: 90px; + text-align: left; + } + .el-input { + width: 500px; + } + } + .btns { + padding: 10px 0; + } + } } </style> \ No newline at end of file diff --git a/src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue b/src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue index 5cba441..87a6943 100644 --- a/src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue +++ b/src/pages/shuohuangMonitorAnalyze/components/videoAnalyze.vue @@ -316,6 +316,7 @@ let query = { ID: this.selectedLabelId, ParentID: this.isCheckAllVideo ? tempArr.join(',') : this.curVideo.ID + '', + ParentUniqID:this.curVideo.UniqeID+ '', Time: Math.round(this.setLabelTime) + '', Codes: this.labelCheckedList.join(','), Desc: desc.join('锛�') diff --git a/vue.config.js b/vue.config.js index e619261..c5faf7a 100644 --- a/vue.config.js +++ b/vue.config.js @@ -87,7 +87,7 @@ } }, "/api-c": { - target: 'http://192.168.20.113:8004', + target: 'http://192.168.20.10:8004', changeOrigin: true }, "/api-v": { -- Gitblit v1.8.0