| | |
| | | <div class="searching-box" @click="showDownBox = false"> |
| | | <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" |
| | |
| | | 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> |
| | | |
| | | <div class="btnArea"> |
| | | <div class="button light" @click.stop="showDownBox = !showDownBox"> |
| | | <span class="iconfont"></span> |
| | | 导出数据 |
| | | </div> |
| | | |
| | | <div class="downBox" v-if="showDownBox"> |
| | | <div class="downItem">导出全部数据</div> |
| | | <div class="downItem">导出筛选数据</div> |
| | | </div> |
| | | </div> |
| | | |
| | | <p class="p-clear"> |
| | | <b class="clear-searching" @click="clearSearch">重置</b> |
| | | </p> |
| | | <el-tooltip |
| | | <!-- <el-tooltip |
| | | class="item" |
| | | effect="dark" |
| | | content="配置存储路径" |
| | |
| | | <span @click="showSetBox = true" class="iconfont setIcon" |
| | | ></span |
| | | > |
| | | </el-tooltip> |
| | | </el-tooltip> --> |
| | | <p class="p-clear"> |
| | | <download-excel |
| | | class="export-excel-wrapper" |
| | | :data="VideoPhotoData.cards" |
| | | :fields="json_fields" |
| | | :name="'视频分析报警统计' + searchTimeFormated + '.xls'" |
| | | > |
| | | <!-- 上面可以自定义自己的样式,还可以引用其他组件button --> |
| | | <!-- <el-button type="primary" size="small">导出EXCEL</el-button> --> |
| | | <!-- <div class="btnArea"> |
| | | <div class="button light"> |
| | | <span class="iconfont"></span> |
| | | 导出数据 |
| | | </div> |
| | | </div> --> |
| | | <b class="clear-searching"> <span class="iconfont"></span> 导出数据</b> |
| | | </download-excel> |
| | | </p> |
| | | </div> |
| | | <div ref="mid" style="height: calc(100% - 50px)"> |
| | | <div class="left-selection" v-if="VideoPhotoData.uploadDiaplay"> |
| | |
| | | id="searchMid" |
| | | class="mid" |
| | | :style="{ |
| | | width: VideoPhotoData.uploadDiaplay |
| | | ? 'calc(100% - 315px)' |
| | | : '100%', |
| | | 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" |
| | |
| | | <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 |
| | | :label="item.value" |
| | | :title="item.title" |
| | | :disabled="item.disabled" |
| | | >{{ item.title }}</el-checkbox |
| | | > |
| | | <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> |
| | | </div> |
| | | </el-checkbox-group> |
| | | </div> |
| | |
| | | <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 |
| | | :label="item.value" |
| | | :title="item.title" |
| | | :disabled="item.disabled" |
| | | >{{ item.title }}</el-checkbox |
| | | > |
| | | <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> |
| | | </div> |
| | | </el-checkbox-group> |
| | | </div> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import Card from "./components/Card"; |
| | | import UploadImg from "./components/UploadImg"; |
| | | import bus from "@/main"; |
| | | import { getUrlKey } from "@/api/utils.ts"; |
| | | import SetBox from "@/views/search/components/SetBox"; |
| | | import Card from "./components/Card" |
| | | import UploadImg from "./components/UploadImg" |
| | | import bus from "@/main" |
| | | import { getUrlKey } from "@/api/utils.ts" |
| | | import SetBox from "@/views/search/components/SetBox" |
| | | export default { |
| | | name: "RightSide", |
| | | components: { |
| | | Card, |
| | | UploadImg, |
| | | SetBox, |
| | | SetBox |
| | | }, |
| | | data() { |
| | | return { |
| | |
| | | alarmValues: [], |
| | | taskValues: [], |
| | | showDownBox: false, |
| | | searchTime: [ |
| | | this.$moment().format("YYYY-MM-DD 00:00:00"), |
| | | this.$moment().format("YYYY-MM-DD HH:mm:ss"), |
| | | ], |
| | | searchTime: [this.$moment().format("YYYY-MM-DD 00:00:00"), this.$moment().format("YYYY-MM-DD HH:mm:ss")], |
| | | searchText: "", |
| | | currentPage: 1, |
| | | showSetBox: false, |
| | | }; |
| | | json_fields: { |
| | | // 部门: "", |
| | | // 告警标记: "", |
| | | // 整改描述: "", |
| | | 摄像机ID: "activeObject.cameraId", |
| | | 摄像机名称: "activeObject.cameraName", |
| | | 摄像机地址: "activeObject.cameraAddr", |
| | | 场景ID: "activeObject.taskId", |
| | | 场景名称: "activeObject.taskName", |
| | | 事件等级: { |
| | | field: "activeObject.alarmRules", |
| | | //自定义回调函数 |
| | | callback: (value) => { |
| | | return value.length ? value[0].alarmLevel : "" |
| | | } |
| | | }, |
| | | 设备ID: "activeObject.analyServerId", |
| | | 设备IP: "activeObject.analyServerIp", |
| | | 设备名称: "activeObject.analyServerName", |
| | | 抓拍时间: "activeObject.picDate", |
| | | 更新时间: "activeObject.likeDate", |
| | | 抓拍全景图地址: "activeObject.picMaxUrl", |
| | | 录像地址: "activeObject.videoUrl", |
| | | 检测区域id: { |
| | | field: "activeObject.targetInfo", |
| | | //自定义回调函数 |
| | | callback: (value) => { |
| | | return value.length ? value[0].areaId : "" |
| | | } |
| | | }, |
| | | 检测区域名称: { |
| | | field: "activeObject.targetInfo", |
| | | //自定义回调函数 |
| | | callback: (value) => { |
| | | return value.length ? value[0].areaName : "" |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | computed: { |
| | | searchTimeFormated() { |
| | | return this.format(this.searchTime); |
| | | }, |
| | | return this.format(this.searchTime) |
| | | } |
| | | }, |
| | | created() { |
| | | this.VideoPhotoData.activeCard = ""; |
| | | this.TreeDataPool.readonly = true; |
| | | this.TreeDataPool.gbReadonly = true; |
| | | this.TreeDataPool.multiple = true; |
| | | this.TreeDataPool.clean(); |
| | | this.VideoPhotoData.activeCard = "" |
| | | this.TreeDataPool.readonly = true |
| | | this.TreeDataPool.gbReadonly = true |
| | | this.TreeDataPool.multiple = true |
| | | this.TreeDataPool.clean() |
| | | }, |
| | | mounted() { |
| | | this.$nextTick(() => { |
| | | let scrollContain = this.$refs.scrollContain; |
| | | this.VideoPhotoData.scrollContainDom = scrollContain; |
| | | let scrollContain = this.$refs.scrollContain |
| | | this.VideoPhotoData.scrollContainDom = scrollContain |
| | | let list = |
| | | this.TreeDataPool.localVedioList && |
| | | this.TreeDataPool.localVedioList.filter((i) => { |
| | | return i.progress == 100; |
| | | }); |
| | | this.TreeDataPool.localVedioList = list; |
| | | }); |
| | | window.addEventListener("resize", this.getHeight); |
| | | this.getCenter(); |
| | | this.getHeight(); |
| | | this.blackAngWhite(); |
| | | return i.progress == 100 |
| | | }) |
| | | this.TreeDataPool.localVedioList = list |
| | | }) |
| | | window.addEventListener("resize", this.getHeight) |
| | | this.getCenter() |
| | | this.getHeight() |
| | | this.blackAngWhite() |
| | | // 视频监控任务跳转 屏蔽 20200730 |
| | | // if (this.$route.query.from === "video") { |
| | | // this.VideoPhotoData.queryTasks = this.taskValues = [ |
| | | // this.VideoTaskData.tasks[this.VideoTaskData.activeIndex].taskId |
| | | // ]; |
| | | // } |
| | | let start = getUrlKey("start"); |
| | | let end = getUrlKey("end"); |
| | | let start = getUrlKey("start") |
| | | let end = getUrlKey("end") |
| | | if (start && end) { |
| | | this.searchTime = [start, end]; |
| | | this.VideoPhotoData.searchTime = [start, end]; |
| | | this.searchTime = [start, end] |
| | | this.VideoPhotoData.searchTime = [start, end] |
| | | } else { |
| | | this.searchTime = this.getDateInit(); |
| | | this.VideoPhotoData.searchTime = this.getDateInit(); |
| | | this.searchTime = this.getDateInit() |
| | | this.VideoPhotoData.searchTime = this.getDateInit() |
| | | } |
| | | |
| | | // 暂时关闭跳转 20200730 |
| | | // if (this.$route.query.showType === "findByPic") { |
| | | if (getUrlKey("showType")) { |
| | | 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.compareTabs = ["esData"]; |
| | | this.VideoPhotoData.findPerson2(); // 查找此人 |
| | | 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.compareTabs = ["esData"] |
| | | this.VideoPhotoData.findPerson2() // 查找此人 |
| | | } else { |
| | | this.searchTime = this.getDateInit(); |
| | | this.VideoPhotoData.searchTime = this.getDateInit(); |
| | | this.searchTime = this.getDateInit() |
| | | this.VideoPhotoData.searchTime = this.getDateInit() |
| | | // this.VideoPhotoData.querySearchList(); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } |
| | | |
| | | this.VideoPhotoData.queryTagList(); |
| | | this.VideoPhotoData.queryTaskList(); |
| | | this.VideoPhotoData.queryDictionary(); |
| | | this.VideoPhotoData.queryTagList() |
| | | this.VideoPhotoData.queryTaskList() |
| | | this.VideoPhotoData.queryDictionary() |
| | | this.$nextTick(() => { |
| | | bus.$on("changePage", (page) => { |
| | | this.currentPage = page; |
| | | this.VideoPhotoData.page = page; |
| | | }); |
| | | }); |
| | | this.currentPage = page |
| | | this.VideoPhotoData.page = page |
| | | }) |
| | | }) |
| | | }, |
| | | destroyed() { |
| | | window.removeEventListener("resize", this.getHeight); |
| | | this.CardList.details = []; |
| | | window.removeEventListener("resize", this.getHeight) |
| | | this.CardList.details = [] |
| | | // this.TreeDataPool.treeActiveName = "camera"; |
| | | this.VideoPhotoData.queryAlarmlevel = []; |
| | | this.VideoPhotoData.inputValue = ""; |
| | | this.VideoPhotoData.queryTabs = []; |
| | | this.VideoPhotoData.queryTasks = []; |
| | | this.VideoPhotoData.treeNodes = []; |
| | | this.VideoPhotoData.queryAlarmlevel = [] |
| | | this.VideoPhotoData.inputValue = "" |
| | | this.VideoPhotoData.queryTabs = [] |
| | | this.VideoPhotoData.queryTasks = [] |
| | | this.VideoPhotoData.treeNodes = [] |
| | | |
| | | this.CardList.addBaseList = []; |
| | | this.VideoPhotoData.selectBlacks = []; |
| | | this.VideoPhotoData.selectWhites = []; |
| | | this.CardList.addBaseList = [] |
| | | this.VideoPhotoData.selectBlacks = [] |
| | | this.VideoPhotoData.selectWhites = [] |
| | | }, |
| | | watch: { |
| | | "TreeDataPool.treeActiveName"(n) { |
| | | if (n && n == "camera") { |
| | | this.VideoPhotoData.treeNodes = []; |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.VideoPhotoData.treeNodes = [] |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } |
| | | }, |
| | | "TreeDataPool.showTreeBox"() { |
| | | this.getHeight(); |
| | | this.getHeight() |
| | | if (this.VideoPhotoData.realSmallPath.length > 0) { |
| | | this.VideoPhotoData.findPersonByPage(); |
| | | this.VideoPhotoData.findPersonByPage() |
| | | } else { |
| | | // this.VideoPhotoData.querySearchList(); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } |
| | | }, |
| | | // "TreeDataPool.selectedNodes": function(newValue,oldValue) { |
| | |
| | | // } |
| | | // }, |
| | | "TreeDataPool.selectedNodes": { |
| | | handler: function (newVal, oldVal) { |
| | | handler: function(newVal, oldVal) { |
| | | if (newVal !== oldVal) { |
| | | this.VideoPhotoData.treeNodes = newVal; |
| | | this.VideoPhotoData.treeNodes = newVal |
| | | if (this.VideoPhotoData.uploadType) { |
| | | this.VideoPhotoData.findPersonByPage(); |
| | | this.VideoPhotoData.findPersonByPage() |
| | | } else { |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } |
| | | } |
| | | }, |
| | | deep: true, //深度监听 |
| | | deep: true //深度监听 |
| | | }, |
| | | "DataStackPool.selectedDir": { |
| | | handler(nodes, oldNodes) { |
| | | if (nodes !== oldNodes && nodes.id != "") { |
| | | // this.VideoPhotoData.treeNodes = nodes.map(i=>{return i.id}); |
| | | this.VideoPhotoData.treeNodes = [nodes.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()); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } |
| | | } |
| | | }, |
| | | deep: true, |
| | | deep: true |
| | | }, |
| | | "VideoPhotoData.activeCard": function () { |
| | | let card = |
| | | this.$refs.scrollContain.getElementsByClassName("my-active-card"); |
| | | console.log("------"); |
| | | console.log(card); |
| | | "VideoPhotoData.activeCard": function() { |
| | | let card = this.$refs.scrollContain.getElementsByClassName("my-active-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 |
| | | ) |
| | | this.$refs.scrollContain.scrollTo(0, cardTop - cardHeight); |
| | | let cardHeight = card[0].clientHeight |
| | | let cardTop = card[0].offsetTop |
| | | let scrollTop = this.$refs.scrollContain.scrollTop |
| | | let divHeight = this.$refs.scrollContain.clientHeight |
| | | |
| | | if (cardTop - cardHeight - scrollTop > divHeight || cardTop - cardHeight - scrollTop < 0) |
| | | this.$refs.scrollContain.scrollTo(0, cardTop - cardHeight) |
| | | } |
| | | }, |
| | | "VideoPhotoData.uploadType": function (value) { |
| | | "VideoPhotoData.uploadType": function(value) { |
| | | if (value) { |
| | | this.typeDisable = true; |
| | | this.disabled = true; |
| | | this.typeDisable = true |
| | | this.disabled = true |
| | | } else { |
| | | this.typeDisable = false; |
| | | this.VideoPhotoData.querySearchList(); |
| | | this.typeDisable = false |
| | | this.VideoPhotoData.querySearchList() |
| | | } |
| | | }, |
| | | "VideoPhotoData.selectBlacks": function () { |
| | | this.blackAngWhite(); |
| | | "VideoPhotoData.selectBlacks": function() { |
| | | this.blackAngWhite() |
| | | }, |
| | | "VideoPhotoData.selectWhites": function () { |
| | | this.blackAngWhite(); |
| | | "VideoPhotoData.selectWhites": function() { |
| | | this.blackAngWhite() |
| | | }, |
| | | "VideoPhotoData.uploadDiaplay": function (value) { |
| | | this.getHeight(); |
| | | "VideoPhotoData.uploadDiaplay": function(value) { |
| | | this.getHeight() |
| | | if (value) { |
| | | if (!this.VideoPhotoData.uploadType) { |
| | | let scrollContain = this.$refs.scrollContain; |
| | | this.VideoPhotoData.scrollContainDom = scrollContain; |
| | | this.VideoPhotoData.showType = "search"; |
| | | let scrollContain = this.$refs.scrollContain |
| | | this.VideoPhotoData.scrollContainDom = scrollContain |
| | | this.VideoPhotoData.showType = "search" |
| | | // this.VideoPhotoData.querySearchList(); |
| | | //this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.isDisabled = false; |
| | | this.isDisabled = false |
| | | } else { |
| | | //this.VideoPhotoData.scrollContainDom = ''; |
| | | this.VideoPhotoData.showType = "findByPic"; |
| | | this.VideoPhotoData.showType = "findByPic" |
| | | } |
| | | } else { |
| | | this.VideoPhotoData.uploadType = false; |
| | | this.VideoPhotoData.showType = "search"; |
| | | this.VideoPhotoData.uploadType = false |
| | | this.VideoPhotoData.showType = "search" |
| | | } |
| | | }, |
| | | } |
| | | }, |
| | | methods: { |
| | | isShowUpload() { |
| | | this.getHeight(); |
| | | this.getHeight() |
| | | if (this.VideoPhotoData.uploadDiaplay) { |
| | | if (!this.VideoPhotoData.uploadType) { |
| | | let scrollContain = this.$refs.scrollContain; |
| | | this.VideoPhotoData.scrollContainDom = scrollContain; |
| | | this.VideoPhotoData.showType = "search"; |
| | | let scrollContain = this.$refs.scrollContain |
| | | this.VideoPhotoData.scrollContainDom = scrollContain |
| | | this.VideoPhotoData.showType = "search" |
| | | // this.VideoPhotoData.querySearchList(); |
| | | //this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.isDisabled = false; |
| | | this.isDisabled = false |
| | | } else { |
| | | //this.VideoPhotoData.scrollContainDom = ''; |
| | | this.VideoPhotoData.showType = "findByPic"; |
| | | this.VideoPhotoData.showType = "findByPic" |
| | | } |
| | | } else { |
| | | this.VideoPhotoData.uploadType = false; |
| | | this.VideoPhotoData.showType = "search"; |
| | | this.VideoPhotoData.uploadType = false |
| | | this.VideoPhotoData.showType = "search" |
| | | } |
| | | }, |
| | | resizeWidth(w) { |
| | | this.defaultWidth = w; |
| | | this.defaultWidth = w |
| | | }, |
| | | resizeHeight(h) { |
| | | this.defaultHeight = h; |
| | | this.defaultHeight = h |
| | | }, |
| | | getHeight() { |
| | | let w = this.$refs.mid.offsetWidth; |
| | | let integer = parseInt(w / 330); |
| | | let integerSearchImg = parseInt((w - 300) / 325); |
| | | let w = this.$refs.mid.offsetWidth |
| | | let integer = parseInt(w / 330) |
| | | let integerSearchImg = parseInt((w - 300) / 325) |
| | | |
| | | // 取消size修改 |
| | | // this.handleSizeChange(integer, integerSearchImg); |
| | | |
| | | this.cardWidth = `calc(${100 / integer}% - 20px)`; |
| | | this.searchImgCardWidth = `calc(${100 / integerSearchImg}% - 20px)`; |
| | | this.cardWidth = `calc(${100 / integer}% - 20px)` |
| | | this.searchImgCardWidth = `calc(${100 / integerSearchImg}% - 20px)` |
| | | }, |
| | | uploadChange() { |
| | | this.VideoPhotoData.uploadDiaplay = false; |
| | | this.VideoPhotoData.clearStatus(); |
| | | this.VideoPhotoData.uploadDiaplay = false |
| | | this.VideoPhotoData.clearStatus() |
| | | }, |
| | | blackAngWhite() { |
| | | if ( |
| | | this.VideoPhotoData.selectBlacks && |
| | | this.VideoPhotoData.selectBlacks.length > 0 |
| | | ) { |
| | | if (this.VideoPhotoData.selectBlacks && 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 && |
| | | this.VideoPhotoData.selectBlacks.length == 0 |
| | | ) { |
| | | if (this.VideoPhotoData.selectBlacks && 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 && |
| | | this.VideoPhotoData.selectWhites.length > 0 |
| | | ) { |
| | | if (this.VideoPhotoData.selectWhites && 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.$set(this.VideoPhotoData.blackList[i], "disabled", true) |
| | | } |
| | | } |
| | | if ( |
| | | this.VideoPhotoData.selectWhites && |
| | | this.VideoPhotoData.selectWhites.length == 0 |
| | | ) { |
| | | if (this.VideoPhotoData.selectWhites && 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.$set(this.VideoPhotoData.blackList[i], "disabled", false) |
| | | } |
| | | } |
| | | }, |
| | | saveAddBase(item, index) { |
| | | if ( |
| | | this.VideoPhotoData.selectBlacks.length === 0 && |
| | | this.VideoPhotoData.selectWhites.length === 0 |
| | | ) { |
| | | 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); |
| | | 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.CardList.addBaseList.splice(index, 1) |
| | | this.VideoPhotoData.selectBlacks = [] |
| | | this.VideoPhotoData.selectWhites = [] |
| | | }) |
| | | }, |
| | | getDetails(ev, index) { |
| | | //let obj = this.CardList.datalist[index]; |
| | | this.CardList.datalist = this.VideoPhotoData.cards; |
| | | let obj = this.CardList.datalist[index]; |
| | | this.CardList.datalist = this.VideoPhotoData.cards |
| | | let obj = this.CardList.datalist[index] |
| | | /* try { |
| | | this.CardList.details = Array.from( |
| | | new Set([...this.CardList.details, ...[obj]]) |
| | |
| | | } catch (error) { |
| | | console.log(error); |
| | | } */ |
| | | this.CardList.details = []; |
| | | this.CardList.details.push(obj); |
| | | this.CardList.details = [] |
| | | this.CardList.details.push(obj) |
| | | // this.CardList.details.push(obj); |
| | | this.VideoPhotoData.activeCard = obj.activeObject.id; |
| | | console.log(this.VideoPhotoData.activeCard); |
| | | this.VideoPhotoData.activeCard = obj.activeObject.id |
| | | }, |
| | | toAdd(item) { |
| | | this.CardList.addBaseList.push(item); |
| | | this.CardList.addBaseList.push(item) |
| | | }, |
| | | handleClose(done) { |
| | | this.$confirm("确认关闭?") |
| | | .then(() => { |
| | | done(); |
| | | done() |
| | | }) |
| | | .catch(() => {}); |
| | | .catch(() => {}) |
| | | }, |
| | | showUpload() { |
| | | this.VideoPhotoData.uploadDiaplay = !this.VideoPhotoData.uploadDiaplay; |
| | | this.VideoPhotoData.uploadDiaplay = !this.VideoPhotoData.uploadDiaplay |
| | | //初始化数据 |
| | | this.VideoPhotoData.clearStatus(); |
| | | this.CardList.details = []; |
| | | this.VideoPhotoData.clearStatus() |
| | | this.CardList.details = [] |
| | | // if (this.VideoPhotoData.uploadDiaplay) { |
| | | |
| | | // } |
| | |
| | | }, |
| | | getDateInit() { |
| | | // 要求 默认一个月 |
| | | const end = new Date(); |
| | | const start = new Date(); |
| | | const nowDate = new Date(); |
| | | nowDate.setHours(0); |
| | | nowDate.setMinutes(0); |
| | | nowDate.setSeconds(0); |
| | | nowDate.setMilliseconds(0); |
| | | start.setTime(nowDate.getTime() - 3600 * 1000 * 24 * 30); |
| | | 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"), |
| | | ]; |
| | | const end = new Date() |
| | | const start = new Date() |
| | | const nowDate = new Date() |
| | | nowDate.setHours(0) |
| | | nowDate.setMinutes(0) |
| | | nowDate.setSeconds(0) |
| | | nowDate.setMilliseconds(0) |
| | | start.setTime(nowDate.getTime() - 3600 * 1000 * 24 * 30) |
| | | 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")] |
| | | }, |
| | | format(array) { |
| | | if (!array || array.length === 0) { |
| | | return []; |
| | | return [] |
| | | } |
| | | 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() { |
| | | if (!this.searchTime) { |
| | | this.searchTime = []; |
| | | this.searchTime = [] |
| | | } |
| | | // let obj = document.getElementById('searchMid'); |
| | | // let load = this.$loading({ |
| | | // target:obj, |
| | | // }) |
| | | // load.close(); |
| | | // this.AuthData.loading = true |
| | | this.VideoPhotoData.page = 1; |
| | | this.VideoPhotoData.queryTabs = this.tagValues; |
| | | this.VideoPhotoData.page = 1 |
| | | this.VideoPhotoData.queryTabs = this.tagValues |
| | | //处理搜索类型 |
| | | var tempArr = this.taskValues.map((task) => task.split(",")); |
| | | var tasks = []; |
| | | console.log("1"); |
| | | var tempArr = this.taskValues.map((task) => task.split(",")) |
| | | var tasks = [] |
| | | |
| | | tempArr.forEach((arr) => { |
| | | tasks = tasks.concat(arr); |
| | | }); |
| | | this.VideoPhotoData.queryTasks = tasks; |
| | | console.log("2"); |
| | | tasks = tasks.concat(arr) |
| | | }) |
| | | this.VideoPhotoData.queryTasks = tasks |
| | | |
| | | this.VideoPhotoData.queryAlarmlevel = this.stringToNum(); |
| | | console.log("3"); |
| | | console.log(this.searchTime); |
| | | this.VideoPhotoData.queryAlarmlevel = this.stringToNum() |
| | | |
| | | this.VideoPhotoData.searchTime = this.format(this.searchTime); |
| | | console.log(this.VideoPhotoData.searchTime); |
| | | this.VideoPhotoData.searchTime = this.format(this.searchTime) |
| | | |
| | | //this.VideoPhotoData.inputValue = this.searchText; |
| | | this.VideoPhotoData.showType = this.showType; |
| | | this.VideoPhotoData.showType = this.showType |
| | | if (!this.VideoPhotoData.uploadType) { |
| | | this.VideoPhotoData.uploadDiaplay = false; |
| | | //this.VideoPhotoData.page = this.currentPage; |
| | | // this.VideoPhotoData.querySearchList(); |
| | | console.log("4"); |
| | | this.VideoPhotoData.uploadDiaplay = false |
| | | |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } else { |
| | | //this.VideoPhotoData.page = this.currentPage; |
| | | // this.VideoPhotoData.findPersonByPage(); |
| | | console.log("5"); |
| | | |
| | | this.setLoadSearch(this.VideoPhotoData.findPersonByPage()); |
| | | this.setLoadSearch(this.VideoPhotoData.findPersonByPage()) |
| | | } |
| | | console.log("cards", this.VideoPhotoData.cards) |
| | | }, |
| | | stringToNum() { |
| | | var arr = []; |
| | | var arr = [] |
| | | this.alarmValues.forEach((element) => { |
| | | if (element == "-1") { |
| | | arr.push(-1); |
| | | arr.push(-1) |
| | | } |
| | | if (element == "1") { |
| | | arr.push(1); |
| | | arr.push(1) |
| | | } |
| | | if (element == "2") { |
| | | arr.push(2); |
| | | arr.push(2) |
| | | } |
| | | if (element == "3") { |
| | | arr.push(3); |
| | | arr.push(3) |
| | | } |
| | | if (element == "4") { |
| | | arr.push(4); |
| | | arr.push(4) |
| | | } |
| | | if (element == "5") { |
| | | arr.push(5); |
| | | arr.push(5) |
| | | } |
| | | }); |
| | | return arr; |
| | | }) |
| | | return arr |
| | | }, |
| | | changePages(page) { |
| | | this.VideoPhotoData.page = page; |
| | | this.VideoPhotoData.page = page |
| | | if (!this.VideoPhotoData.uploadType) { |
| | | this.VideoPhotoData.uploadDiaplay = false; |
| | | this.VideoPhotoData.uploadDiaplay = false |
| | | // this.VideoPhotoData.querySearchList(); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } else { |
| | | // this.VideoPhotoData.findPersonByPage(); |
| | | this.setLoadSearch(this.VideoPhotoData.findPersonByPage()); |
| | | this.setLoadSearch(this.VideoPhotoData.findPersonByPage()) |
| | | } |
| | | }, |
| | | closeWindow(index) { |
| | | this.CardList.addBaseList.splice(index, 1); |
| | | this.CardList.addBaseList.splice(index, 1) |
| | | }, |
| | | handleSizeChange(integer, integerSearchImg) { |
| | | if (this.VideoPhotoData.uploadDiaplay) { |
| | | this.VideoPhotoData.size = integerSearchImg * 10; |
| | | this.VideoPhotoData.size = integerSearchImg * 10 |
| | | //this.VideoPhotoData.findPersonByPage(); |
| | | } else { |
| | | this.VideoPhotoData.size = integer * 10; |
| | | this.VideoPhotoData.size = integer * 10 |
| | | //this.VideoPhotoData.querySearchList(); |
| | | } |
| | | }, |
| | | sizeChange(size) { |
| | | if (this.VideoPhotoData.uploadType) { |
| | | this.VideoPhotoData.size = size; |
| | | this.VideoPhotoData.findPersonByPage(); |
| | | this.VideoPhotoData.size = size |
| | | this.VideoPhotoData.findPersonByPage() |
| | | } else { |
| | | this.VideoPhotoData.uploadDiaplay = false; |
| | | this.VideoPhotoData.size = size; |
| | | this.VideoPhotoData.uploadDiaplay = false |
| | | this.VideoPhotoData.size = size |
| | | // this.VideoPhotoData.querySearchList(); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } |
| | | }, |
| | | clearSearch() { |
| | | this.tagValues = []; |
| | | this.taskValues = []; |
| | | this.alarmValues = []; |
| | | this.VideoPhotoData.queryTabs = []; |
| | | this.VideoPhotoData.queryTasks = []; |
| | | this.VideoPhotoData.queryAlarmlevel = []; |
| | | this.VideoPhotoData.searchTime = this.getDateInit(); |
| | | this.VideoPhotoData.inputValue = ""; |
| | | this.tagValues = [] |
| | | this.taskValues = [] |
| | | this.alarmValues = [] |
| | | this.VideoPhotoData.queryTabs = [] |
| | | this.VideoPhotoData.queryTasks = [] |
| | | this.VideoPhotoData.queryAlarmlevel = [] |
| | | this.VideoPhotoData.searchTime = this.getDateInit() |
| | | this.VideoPhotoData.inputValue = "" |
| | | |
| | | console.log(this.searchTime); |
| | | |
| | | this.searchTime = this.getDateInit(); |
| | | this.searchTime = this.getDateInit() |
| | | if (!this.VideoPhotoData.uploadType) { |
| | | // this.VideoPhotoData.querySearchList(); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } else { |
| | | // this.VideoPhotoData.findPersonByPage(); |
| | | this.setLoadSearch(this.VideoPhotoData.findPersonByPage()); |
| | | this.setLoadSearch(this.VideoPhotoData.findPersonByPage()) |
| | | } |
| | | }, |
| | | disabled(data) { |
| | | this.isDisabled = data; |
| | | this.isDisabled = data |
| | | }, |
| | | getCenter() { |
| | | this.center = { |
| | | x: document.documentElement.clientWidth / 2 - 250, |
| | | y: document.documentElement.clientHeight / 2 - 200, |
| | | }; |
| | | y: document.documentElement.clientHeight / 2 - 200 |
| | | } |
| | | }, |
| | | setLoadSearch(fn) { |
| | | this.AuthData.setLoading("searchMid", this); |
| | | this.AuthData.setLoading("searchMid", this) |
| | | fn.then(() => { |
| | | this.AuthData.closeLoad(); |
| | | }); |
| | | this.AuthData.closeLoad() |
| | | }) |
| | | }, |
| | | tagChange(obj) { |
| | | if (obj.length > 0) { |
| | | this.showType = "compare"; |
| | | this.showType = "compare" |
| | | } else { |
| | | this.showType = "search"; |
| | | this.showType = "search" |
| | | } |
| | | |
| | | this.VideoPhotoData.queryTabs = obj; |
| | | this.VideoPhotoData.queryTabs = obj |
| | | |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()); |
| | | }, |
| | | }, |
| | | }; |
| | | this.setLoadSearch(this.VideoPhotoData.querySearchList()) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" > |
| | | <style lang="scss"> |
| | | .searching-box { |
| | | width: 100%; |
| | | height: 100% !important; |
| | |
| | | width: 100px; |
| | | z-index: 10; |
| | | padding: 10px; |
| | | box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.05), |
| | | 0px 4px 5px 0px rgba(0, 0, 0, 0.08), 0px 2px 4px -1px rgba(0, 0, 0, 0.12); |
| | | box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.05), 0px 4px 5px 0px rgba(0, 0, 0, 0.08), |
| | | 0px 2px 4px -1px rgba(0, 0, 0, 0.12); |
| | | |
| | | .downItem { |
| | | text-align: center; |