朔黄首页任务分析列表填充假数据,视频检索页列表收藏功能修复;摄像机目录树修改摄像机信息节点选中错位bug修复
| | |
| | | default: 0 |
| | | } |
| | | }, |
| | | data() { |
| | | data () { |
| | | return { |
| | | hoverNodeId: "", |
| | | showDialog: false, |
| | |
| | | { min: 2, max: 10, message: "长度在2到10个字", trigger: "change" } |
| | | ] |
| | | }, |
| | | curNodeTid: '', |
| | | }; |
| | | }, |
| | | created() { |
| | | created () { |
| | | // console.log(this.height, '树高度') |
| | | this.TreeDataPool.zTree = true; |
| | | |
| | |
| | | }, |
| | | methods: { |
| | | handleCreated: function (ztreeObj) { |
| | | let _this = this; |
| | | this.ztreeObj = ztreeObj; |
| | | debugger |
| | | // console.log("handleCreated") |
| | | // onCreated 中操作ztreeObj对象展开第一个节点 |
| | | // ztreeObj.expandNode(ztreeObj.getNodes()[0], true); |
| | |
| | | if (this.TreeDataPool.selectedNode.id) { |
| | | // 取消所有多选的节点,仅保留当前单选的节点 |
| | | this.TreeDataPool.selectedNodes = [this.TreeDataPool.selectedNode.id] |
| | | |
| | | let node = this.ztreeObj.getNodeByTId(this.TreeDataPool.selectedNode.tId) |
| | | this.curNodeTid = this.TreeDataPool.selectedNode.tId; |
| | | //摄像机信息更新信息后,如果节点位置有变tId就不准了,this.TreeDataPool.selectedNode此时还是旧的信息 |
| | | console.log('selecBode',this.TreeDataPool.selectedNode) |
| | | console.log('selectedNode.tId',this.TreeDataPool.selectedNode.tId,) |
| | | let ztreeNodes = ztreeObj.getNodes(); |
| | | //var curNodeTid = ''; |
| | | console.log(ztreeNodes) |
| | | _this.findTidByIdFromArr(ztreeNodes); |
| | | console.log('curNodeTid', _this.curNodeTid) |
| | | this.TreeDataPool.selectedNode.tId = _this.curNodeTid; |
| | | let node = this.ztreeObj.getNodeByTId(this.TreeDataPool.selectedNode.tId) |
| | | console.log('selecBode', this.TreeDataPool.selectedNode) |
| | | console.log('selectedNode.tId', this.TreeDataPool.selectedNode.tId) |
| | | // 多选时, 选中单选单击的节点 |
| | | if (this.TreeDataPool.multiple) { |
| | | this.ztreeObj.checkAllNodes(false); |
| | |
| | | this.ztreeObj.selectNode(node, false, true) |
| | | } |
| | | }, |
| | | onDblClick(evt, treeId, item) { |
| | | |
| | | findTidByIdFromArr (arr) { |
| | | let len = arr.length; |
| | | let _this = this; |
| | | for (var i = 0; i < len; i++) { |
| | | if (arr[i].id == this.TreeDataPool.selectedNode.id) { |
| | | _this.curNodeTid = arr[i].tId; |
| | | break; |
| | | } |
| | | if(arr[i].children){ |
| | | this.findTidByIdFromArr(arr[i].children); |
| | | } |
| | | } |
| | | |
| | | }, |
| | | onDblClick (evt, treeId, item) { |
| | | if (item.type !== "4" || this.app !== "Camera") { |
| | | return; |
| | | } |
| | |
| | | this.TreeDataPool.activeVideoIndex = nullVideoIndex; |
| | | } |
| | | }, |
| | | addCamera(node) { |
| | | addCamera (node) { |
| | | this.$emit("addDevice", node); |
| | | }, |
| | | importCameras(node) { |
| | | importCameras (node) { |
| | | this.$emit("import", node); |
| | | }, |
| | | addNode(node) { |
| | | addNode (node) { |
| | | this.dialogForm = { |
| | | text: "", |
| | | method: "add", |
| | |
| | | }; |
| | | this.showDialogBox(event); |
| | | }, |
| | | editNode(node) { |
| | | editNode (node) { |
| | | this.dialogForm = { |
| | | text: node.name, |
| | | method: "edit", |
| | |
| | | }; |
| | | this.showDialogBox(event); |
| | | }, |
| | | delNode(node) { |
| | | delNode (node) { |
| | | this.TreeDataPool.del(node.id); |
| | | }, |
| | | submitForm() { |
| | | submitForm () { |
| | | // 提交新增或者编辑区域节点表单 |
| | | this.$refs.dialogForm.validate(valid => { |
| | | if (valid) { |
| | |
| | | }); |
| | | this.hideDialogBox(); |
| | | }, |
| | | hideDialogBox() { |
| | | hideDialogBox () { |
| | | this.showDialog = false; |
| | | this.dialogForm = { text: "" }; |
| | | }, |
| | | showDialogBox(event) { |
| | | showDialogBox (event) { |
| | | let { clientX = 0, offsetY = 0 } = event; |
| | | // this.clientX = clientX - 120; |
| | | this.clientX = 50; |
| | | this.clientY = offsetY; |
| | | this.showDialog = true; |
| | | }, |
| | | itemClick(evt, treeId, treeNode) { |
| | | console.log(evt,treeId) |
| | | itemClick (evt, treeId, treeNode) { |
| | | console.log(evt, treeId) |
| | | |
| | | this.TreeDataPool.selectedNode = treeNode; |
| | | this.TreeDataPool.treeType = this.treeName; |
| | |
| | | |
| | | // this.TreeDataPool.updateZTreeCheckNodes([treeNode]); |
| | | // }, |
| | | itemCheck(evt, treeId, treeNode) { |
| | | itemCheck (evt, treeId, treeNode) { |
| | | this.TreeDataPool.selectedNode = treeNode; |
| | | this.TreeDataPool.treeType = this.treeName; |
| | | |
| | |
| | | this.TreeDataPool.updateZTreeCheckNodes(checkedNodes); |
| | | }, |
| | | //展开 |
| | | itemExpand(e, id, node) { |
| | | itemExpand (e, id, node) { |
| | | this.TreeDataPool.foldNodeList[node.id] = true |
| | | }, |
| | | // 折叠 |
| | | itemCollapse(e, id, node) { |
| | | itemCollapse (e, id, node) { |
| | | delete this.TreeDataPool.foldNodeList[node.id] |
| | | }, |
| | | dropNode(node, item, draggedItem, e) { |
| | | dropNode (node, item, draggedItem, e) { |
| | | // console.log('dropNode', node, item, draggedItem); |
| | | this.TreeDataPool.dropNode(draggedItem.id, item.id) |
| | | } |
| | |
| | | <el-table-column prop="rwl" label="任务量"></el-table-column> |
| | | <el-table-column prop="fxl" label="分析量"></el-table-column> |
| | | <el-table-column prop="pdwgl" label="判定违规量"></el-table-column> |
| | | <el-table-column prop="wgl" label="判定违规率"></el-table-column> |
| | | <el-table-column prop="pdwglv" label="判定违规率"></el-table-column> |
| | | <el-table-column prop="wcl" label="完成率"></el-table-column> |
| | | </el-table> |
| | | </div> |
| | | |
| | | <div class="flex-end"> |
| | | <el-pagination |
| | | <!-- <el-pagination |
| | | @size-change="handleTableSizeChange" |
| | | @current-change="renderIrregularMenTable" |
| | | :current-page.sync="PageIndex" |
| | |
| | | :page-sizes="pageSizes" |
| | | layout="total,sizes, prev, pager, next" |
| | | :total="tableTotal" |
| | | ></el-pagination> --> |
| | | <el-pagination |
| | | @size-change="handleTableSizeChange" |
| | | @current-change="renderIrregularMenTable" |
| | | :current-page.sync="PageIndex" |
| | | :page-size="PageSize" |
| | | :page-sizes="pageSizes" |
| | | layout="total,sizes, prev, pager, next" |
| | | :total="taskAnalyzeCaseTableData.length" |
| | | ></el-pagination> |
| | | </div> |
| | | </div> |
| | |
| | | ] |
| | | }) |
| | | } |
| | | tempArr.forEach(node=>{ |
| | | tempArr.forEach(node => { |
| | | //if(node.children.length) |
| | | |
| | | |
| | | }) |
| | | this.jsTreeNodes = tempArr |
| | | }, |
| | | data () { |
| | | return { |
| | | //actCardTab: 'dataStatistic', |
| | | actCardTab: 'taskStatistic', |
| | | actCardTab: 'dataStatistic', |
| | | hidDangerTab: 'hidDanderStatistic', |
| | | optionsOfWeekAnalyze: { |
| | | animation: false, |
| | |
| | | } |
| | | ] |
| | | }, |
| | | taskAnalyzeCaseTableData: [], |
| | | taskAnalyzeCaseTableData: [ |
| | | { name: '李斯', rwl: 233, fxl: 214, pdwgl: 1354, pdwglv: '7%', wcl: '30%' }, |
| | | { name: '王五', rwl: 263, fxl: 234, pdwgl: 64, pdwglv: '8%', wcl: '100%' }, |
| | | { name: '天天', rwl: 213, fxl: 204, pdwgl: 654, pdwglv: '78%', wcl: '100%' }, |
| | | { name: '赵丽', rwl: 233, fxl: 204, pdwgl: 454, pdwglv: '79%', wcl: '100%' }, |
| | | { name: '王冕', rwl: 253, fxl: 244, pdwgl: 454, pdwglv: '87%', wcl: '100%' }], |
| | | jsTreeNodes: [], |
| | | } |
| | | }, |
| | |
| | | </div> |
| | | </div> |
| | | <div class="content" v-show="showType == 'menu'"> |
| | | <el-row :gutter="20" :align="bottom"> |
| | | <el-row :gutter="20" > |
| | | <el-col :xs="8" :sm="6" :md="6" :lg="6" v-for="data in tabData" :key="data.id"> |
| | | <div class="card"> |
| | | <div class="video-wrap" @click="checkVideoDetail(data)"> |
| | |
| | | >{{ scope.row.VideoName }}</div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column label="大小" prop="VideoSize" sortable></el-table-column> |
| | | <el-table-column label="修改日期" prop="VideoUpdateDate" sortable></el-table-column> |
| | | <el-table-column label="创建日期" prop="VideoCreateDate" sortable></el-table-column> |
| | | |
| | | <el-table-column label="操作"> |
| | | <template slot-scope="scope"> |
| | | <div class="operation"> |
| | | <i class="el-icon-star-off" @click="toggleFollow(scope.row)"></i> |
| | | <div class="star" @click="toggleFollow(scope.row)"> |
| | | <i class="iconfont" :class="[scope.row.IsFollow ? 'follow' : '', 'iconguanzhu']"></i> |
| | | </div> |
| | | <!-- <i class="el-icon-star-off" @click="toggleFollow(scope.row)"></i> --> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | curTabPage: 1, |
| | | curTablePage: 1, |
| | | tabPageSize: 8, |
| | | pageSizes: [2, 8, 12, 24], |
| | | pageSizes: [ 8, 12, 24], |
| | | tabTotal: 0, |
| | | tablePageSize: 8, |
| | | tableTotal: 0, |
| | |
| | | this.eventDialogVisible = true; |
| | | this.curEventDetail = label; |
| | | let _this = this; |
| | | getEventVideo({Event:label.Event,LkgID:label.ParentID}).then(res=>{ |
| | | getEventVideo({ Event: label.Event, LkgID: label.ParentID }).then(res => { |
| | | _this.eventVideoArr = res.data; |
| | | _this.curEvName = label.Event; |
| | | }) |
| | |
| | | } |
| | | .operation { |
| | | cursor: pointer; |
| | | .star{ |
| | | color: #ccc; |
| | | } |
| | | .follow{ |
| | | color: #409eff; |
| | | } |
| | | } |
| | | } |
| | | .pagination-center { |