From 771864e5669d23f3481f04ea588d50620e557d25 Mon Sep 17 00:00:00 2001
From: ZZJ <zzjdsg2300@163.com>
Date: 星期日, 26 九月 2021 19:33:17 +0800
Subject: [PATCH] logo更新
---
src/pages/panoramicView/components/RelateCamera.vue | 145 +++++++++++++++++++++++++++++++++++-------------
1 files changed, 105 insertions(+), 40 deletions(-)
diff --git a/src/pages/panoramicView/components/RelateCamera.vue b/src/pages/panoramicView/components/RelateCamera.vue
index caf3ada..9ea7cce 100644
--- a/src/pages/panoramicView/components/RelateCamera.vue
+++ b/src/pages/panoramicView/components/RelateCamera.vue
@@ -32,7 +32,7 @@
</div>
<div class="bottom">
<span @click.stop="editGroup(group)">缂栬緫鍒嗙粍</span>
- <el-popconfirm title="纭畾鍒犻櫎璇ュ垎缁勫悧?" @onConfirm="removeGroup(group)">
+ <el-popconfirm title="纭畾鍒犻櫎璇ュ垎缁勫悧?" @confirm="removeGroup(group)">
<el-button slot="reference" type="text">鍒犻櫎鍒嗙粍</el-button>
</el-popconfirm>
</div>
@@ -40,6 +40,7 @@
</div>
</div>
<!-- <div class="part" v-if="groupList.length"> -->
+ <el-divider></el-divider>
<div class="part" v-if="groupList.length!==0 && Object.keys(curGroup)">
<div class="title">缁樺埗鍖哄煙(鐢ㄤ簬绠楁硶鍒嗘瀽)</div>
<div class="relative-partment" v-if="curGroup.cameras&&curGroup.cameras.length">
@@ -48,6 +49,7 @@
</div>
</div>
</div>
+ <el-divider></el-divider>
<div class="part relative-config" v-if="Object.keys(curGroup)">
<div class="title">
<div class="left">
@@ -58,7 +60,7 @@
</div>
</div>
<div class="relative-list">
- <div class="relative-item" v-for="item in relativeList" :key="item.id">
+ <div class="relative-item" v-for="(item,index) in relativeList" :key="item.id">
<div class="left">
<el-select v-model="item.sourceObj" value-key="polygonId" size="small">
<el-option
@@ -80,9 +82,18 @@
</div>
<div class="right">
<el-button type="text" @click="saveRelativePolygon(item)">淇濆瓨</el-button>
- <div class="btn-del" @click="delRelation(item)">
- <i class="el-icon-delete"></i>
- </div>
+
+ <el-popconfirm title="纭畾鍒犻櫎璇ラ厤缃悧?" @confirm="delRelation(item)" v-if="item.id">
+ <el-button class="btn-del" slot="reference" type="text" icon="el-icon-delete"></el-button>
+ </el-popconfirm>
+ <el-button
+ @click="delRelation(item,index)"
+ class="btn-del"
+ slot="reference"
+ type="text"
+ icon="el-icon-delete"
+ v-else
+ ></el-button>
</div>
</div>
</div>
@@ -133,7 +144,7 @@
export default {
components: { SlideCanvas },
- data () {
+ data() {
return {
cameraData: [],
relativeList: [],
@@ -152,11 +163,11 @@
cameraAndPolygonData: []
}
},
- mounted () {
+ mounted() {
this.getAllCameraData();
},
methods: {
- getAllCameraData () {
+ getAllCameraData() {
let _this = this;
getCamerasByServer().then(res => {
if (res.success) {
@@ -167,22 +178,27 @@
console.log(e)
})
},
- polygonUpdate () {
+ polygonUpdate() {
this.getAllGroups();
},
- delRelation (item) {
+ delRelation(item, index) {
let _this = this;
- delRelation(item.id).then(res => {
- if (res.success) {
- this.$notify({
- type: 'success',
- message: res.data
- });
- _this.findRelationByGroup();
- }
- })
+ if (item.id) {
+ delRelation(item.id).then(res => {
+ if (res.success) {
+ this.$notify({
+ type: 'success',
+ message: res.msg
+ });
+ _this.findRelationByGroup();
+ }
+ })
+ } else {
+ this.relativeList.splice(index, 1);
+ }
+
},
- findRelationByGroup () {
+ findRelationByGroup() {
let _this = this;
findByGroup({ groupId: this.curGroup.id }).then(res => {
@@ -199,8 +215,22 @@
})
})
},
- saveRelativePolygon (item) {
- debugger
+ saveRelativePolygon(item) {
+ // debugger
+ if (!item.sourceObj || !item.targetObj) {
+ this.$notify({
+ type: 'warning',
+ message: '璇峰畬鍠勫叧鑱斿尯鍩熶俊鎭�!'
+ });
+ return;
+ }
+ if (item.sourceObj.cameraId == item.targetObj.cameraId) {
+ this.$notify({
+ type: 'warning',
+ message: '鐩稿悓鎽勫儚鏈轰笉瀛樺湪鍏宠仈鍖哄煙锛岃閲嶆柊閫夋嫨!'
+ });
+ return;
+ }
let _this = this;
let params = {
groupId: this.curGroup.id,
@@ -222,17 +252,21 @@
})
},
- async findPolygonByIds (cameras) {
+ async findPolygonByIds(cameras) {
for (var i = 0; i < cameras.length; i++) {
+ if (Object.keys(cameras[i]).length == 0)
+ continue
let res = await getAllPolygon({ cameraId: cameras[i].id });
cameras[i].canvasData = res.data;
}
return cameras
},
- async getAllGroupInfo () {
+ async getAllGroupInfo() {
let _this = this;
+ console.log("_this.cameraData", _this.cameraData)
let res = await findCameraGroups();
+ console.log("res", res);
let groupArr = res.data.map(item => {
let obj = {}; //group
obj.groupName = item.groupName;
@@ -275,40 +309,63 @@
// _this.checkCurrentGroup(_this.groupList[0]);
// })
// },
- async getAllGroups () {
+ async getAllGroups() {
let _this = this;
let groups = await this.getAllGroupInfo();
+ console.log("groups", groups)
for (var i = 0; i < groups.length; i++) {
groups[i].cameras = await _this.findPolygonByIds(groups[i].cameras)
}
this.groupList = groups;
- //閫変腑绗竴涓�
- this.groupList.length && this.checkCurrentGroup(_this.groupList[0]);
+ this.groupList.reverse();
+ //濡傛灉鍒氭柊寤哄垯閫変腑绗竴涓�,缂栬緫鍒欓�変腑缂栬緫鐨勯偅鏉�
+ if (!this.groupForm.id) {
+ this.groupList.length && this.checkCurrentGroup(_this.groupList[0]);
+ } else {
+ let group = this.groupList.find(one => one.id == this.groupForm.id);
+ if (group) {
+ this.groupList.length && this.checkCurrentGroup(group);
+ } else {
+ this.groupList.length && this.checkCurrentGroup(_this.groupList[0]);
+ }
+
+ }
+
},
- addRelation () {
+ addRelation() {
let obj = { cameraArea1: '', cameraArea2: '' };
this.relativeList.push(obj)
},
- editGroup (group) {
+ editGroup(group) {
+ // debugger
this.groupModelVisible = true;
//this.$refs['groupForm'].resetFields();
//this.groupForm = group;
this.groupForm = JSON.parse(JSON.stringify(group));
},
- removeGroup (group) {
+ removeGroup(group) {
let _this = this;
delCameraGroup(group.id).then(res => {
- _this.getAllGroups()
+ if (res.success) {
+ this.$notify.success(res.msg)
+ _this.getAllGroups()
+ }else{
+ this.$notify.error("鍒犻櫎澶辫触")
+
+ }
+ }).catch((err) => {
+ this.$notify.error("鍒犻櫎澶辫触")
})
},
- checkCurrentGroup (group) {
+ checkCurrentGroup(group) {
this.groupList.forEach(group => {
group.checked = false;
- })
+ });
this.curGroup = group;
+ this.groupForm = JSON.parse(JSON.stringify(group));
this.curGroup.checked = true;
this.findRelationByGroup();
//鏌ヨ绗竴涓垎缁勪笅鎽勫儚鏈哄尯鍩�
@@ -333,10 +390,9 @@
tempArr = tempArr.concat(cameraArea)
});
this.cameraAreas = tempArr;
- console.log(this.cameraAreas)
})
},
- confirmGroupDialog () {
+ confirmGroupDialog() {
//璇锋眰淇濆瓨鏂板缓鎴栫紪杈戝垎缁�
let _this = this;
let params = {
@@ -371,12 +427,18 @@
})
//this.groupList.push(this.groupForm);
saveCameraGroupInfo(params).then(res => {
+ if (res.success) {
+ this.$notify({
+ type: 'success',
+ message: '淇濆瓨鎴愬姛!'
+ })
+ }
_this.getAllGroups();
})
this.groupModelVisible = false;
},
- newGroup () {
+ newGroup() {
this.groupModelVisible = true;
this.$nextTick(() => {
this.$refs['groupForm'].resetFields();
@@ -441,8 +503,8 @@
.details {
display: -webkit-box;
overflow: hidden;
- text-overflow:ellipsis;
- word-break:break-all;
+ text-overflow: ellipsis;
+ word-break: break-all;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
//flex-wrap: wrap;
@@ -461,7 +523,7 @@
position: relative;
display: flex;
&:after {
- content: '';
+ content: "";
position: absolute;
font-size: 0;
width: 1px;
@@ -483,7 +545,7 @@
margin-bottom: 20px;
.relative-partment {
width: 1200px;
- margin: 0 auto;
+ // margin: 0 auto;
display: flex;
justify-content: space-between;
.area-wrap {
@@ -513,6 +575,9 @@
.right {
display: flex;
align-items: center;
+ .el-button + .el-button {
+ margin-left: 0;
+ }
}
i {
font-size: 20px;
--
Gitblit v1.8.0