From 1e84774c0c0752c61e60592e7f7fc1c0d25a1dab Mon Sep 17 00:00:00 2001 From: hanbaoshan <hanbaoshan@aiotlink.com> Date: 星期二, 27 十月 2020 16:38:48 +0800 Subject: [PATCH] 首页加入算法 --- src/components/subComponents/CardItem.vue | 80 ++++++++++++++++++++++++++------------- 1 files changed, 53 insertions(+), 27 deletions(-) diff --git a/src/components/subComponents/CardItem.vue b/src/components/subComponents/CardItem.vue index d57617e..df55282 100644 --- a/src/components/subComponents/CardItem.vue +++ b/src/components/subComponents/CardItem.vue @@ -88,7 +88,7 @@ @mouseleave="cardMouseleave($event)" > <p> - <span class="fontStyle color222">{{ data.picDate }}</span> + <span class="fontStyle color222">{{ data.picDate | formatTime}}</span> </p> <p style="margin-bottom: 8px;"> <span class="fontStyle color222">{{ data.cameraAddr }}</span> @@ -133,7 +133,7 @@ <span class="fontStyle" v-if="data.baseInfo[initialIndex].labels" - >/ {{ data.baseInfo[initialIndex].labels.split("/")[1] }}</span> + >/ {{ data.baseInfo[initialIndex].labels | idCard}}</span> <span class="fontStyle" v-if="data.baseInfo[initialIndex].monitorLevel" @@ -159,7 +159,7 @@ <span class="fontStyle" v-if="data.baseInfo[initialIndex].labels" - >/ {{ data.baseInfo[initialIndex].labels.split("/")[1] }}</span> + >/ {{ data.baseInfo[initialIndex].labels | idCard}}</span> <span class="fontStyle" v-if="data.baseInfo[initialIndex].monitorLevel" @@ -205,7 +205,7 @@ <span>{{ data.baseInfo[0].targetName }}</span> <span v-if="data.baseInfo[0].labels" - >/ {{ data.baseInfo[0].labels.split("/")[1] }}</span> + >/ {{ data.baseInfo[0].labels | idCard}}</span> </p> </div> <div class="card-icon-box"> @@ -226,7 +226,7 @@ @mouseleave="cardMouseleave($event)" > <p :title="data.picDate"> - <span class="fontStyle color222">{{ data.picDate }}</span> + <span class="fontStyle color222">{{ data.picDate | formatTime }}</span> </p> <p :title="data.cameraAddr" style="margin-bottom: 8px;"> <span class="fontStyle color222">{{ data.cameraAddr }}</span> @@ -316,7 +316,7 @@ <span v-else>{{ data.baseInfo[0].compareScore | percentage}}</span> </p> <p :title="data.picDate"> - <span class="fontStyle color222">{{ data.picDate }}</span> + <span class="fontStyle color222">{{ data.picDate | formatTime }}</span> </p> <p :title="data.cameraAddr" style="margin-bottom: 8px;"> <span class="fontStyle color222">{{ data.cameraAddr }}</span> @@ -358,15 +358,12 @@ <div slot="content"> <p v-for="(item,index) in data.baseInfo" :key="index+'base1'"> <span class="fontStyle">{{item.tableName}}</span> - <span class="fontStyle" v-if="item.targetName !== ''">/ {{item.targetName}}</span> + <span class="fontStyle" v-if="item.targetName.length">/ {{item.targetName}}</span> <span class="fontStyle" - v-if="item.labels !== '' && item.labels.split('/')[1] !== ''" - >/ {{item.labels.split("/")[1]}}</span> - <span - class="fontStyle" - v-if="item.labels !== '' && item.labels.split('/')[0] !== ''" - >/ {{item.labels.split("/")[0]}}</span> + v-if="item.labels.length" + >/ {{item.labels | idCard}}</span> + <span class="fontStyle" v-if="item.labels.length">/ {{item.labels | sex}}</span> </p> </div> <el-button @@ -378,15 +375,12 @@ :style="item.bwType == '1' ? 'color:red;font-size:12px;line-height:20px':'font-size:12px;line-height:20px'" > <span class="fontStyle">{{item.tableName}}</span> - <span class="fontStyle" v-if="item.targetName !== ''">/ {{item.targetName}}</span> + <span class="fontStyle" v-if="item.targetName.length">/ {{item.targetName}}</span> <span class="fontStyle" - v-if="item.labels !== '' && item.labels.split('/')[1] !== ''" - >/ {{item.labels.split("/")[1]}}</span> - <span - class="fontStyle" - v-if="item.labels !== '' && item.labels.split('/')[0] !== ''" - >/ {{item.labels.split("/")[0]}}</span> + v-if="item.labels.length" + >/ {{item.labels | idCard}}</span> + <span class="fontStyle" v-if="item.labels.length">/ {{item.labels |sex }}</span> </span> </el-button> </el-tooltip> @@ -465,7 +459,7 @@ > <div> <p :title="data.picDate"> - <span class="fontStyle color222">{{ data.picDate }}</span> + <span class="fontStyle color222">{{ data.picDate | formatTime }}</span> </p> <p :title="data.cameraAddr" style="margin-bottom: 8px;"> <span class="fontStyle color222">{{ data.cameraAddr }}</span> @@ -484,6 +478,22 @@ </template> <script> +Date.prototype.Format = function (fmt) { + var o = { + "M+": this.getMonth() + 1, //鏈堜唤 + "d+": this.getDate(), //鏃� + "H+": this.getHours(), //灏忔椂 + "m+": this.getMinutes(), //鍒� + "s+": this.getSeconds(), //绉� + "q+": Math.floor((this.getMonth() + 3) / 3), //瀛e害 + "S": this.getMilliseconds() //姣 + }; + if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); + for (var k in o) + if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); + return fmt; +} + export default { mounted() { window.addEventListener("resize", this.watchWindow); @@ -504,9 +514,28 @@ } }, filters: { + formatTime(t) { + return new Date(t).Format("yyyy-MM-dd HH:mm:ss") + }, percentage(score) { return score.toFixed(2) + "%" - } + }, + idCard(v) { + try { + let obj = JSON.parse(v) + return obj.idCard + } catch (error) { + return v.split("/")[1] + } + }, + sex(v) { + try { + let obj = JSON.parse(v) + return obj.sex + } catch (error) { + return v.split("/")[0] + } + }, }, data() { return { @@ -520,7 +549,6 @@ watch: { data: { handler(val, oldVal) { - console.log('鏁版嵁鍙戠敓鍙樺寲') this.$forceUpdate() }, deep: true @@ -559,20 +587,18 @@ this.$emit("detailsClick", ev); }, toAdd(item) { - console.log("瑙﹀彂鍔犲叆搴曞簱") this.$emit("addToBase", item); }, tosearch(item) { - console.log('search') let captureId = item.id == "" ? item.baseInfo[0].targetId : item.id let imgUrl = item.targetInfo ? item.targetInfo[0].picSmUrl : item.baseInfo[0].targetPicUrl let compType = 1 // 鏁版嵁鏉ヨ嚜浜巈s if (!item.id || item.id == "") { compType = 0 // 鏁版嵁鏉ヨ嚜浜庡簳搴� } - // window.open(href + '?showType=findByPic&targetId=' + captureId + '&picSmUrl=' + url + '&compType=' + compType) - let message = 'toSearch?showType=findByPic&targetId=' + captureId + '&picSmUrl=' + imgUrl + '&compType=' + compType; + let message = 'toSearch?showType=findByPic&targetId=' + captureId + '&picSmUrl=' + imgUrl + '&compType=' + compType + '×tamp=' + new Date().getTime(); + //let message = 'toSearch?showType=findByPic&targetId=' + captureId + '&picSmUrl=' + imgUrl + '&compType=' + compType; window.parent.postMessage({ msg: message }, "*") -- Gitblit v1.8.0