Jelajahi Sumber

网格化任务

wangzhe 2 tahun lalu
induk
melakukan
5fb4d8cad8
1 mengubah file dengan 38 tambahan dan 10 penghapusan
  1. 38 10
      src/views/leader.vue

+ 38 - 10
src/views/leader.vue

@@ -77,7 +77,7 @@
                   <el-collapse-item v-for="(item,index) in xunLinListOne">
                     <template slot="title">
                       <div class="d-l-con sj-collapse"
-                           @click="getRecordList(item.id)">
+                           @click="getRecordList(item.id, item.patrolTrajectory)">
                         <div class="d-l-l-text">
                           <el-tooltip class="item" effect="dark" placement="left"
                                       style="width:10rem ;" :disabled="(item.taskName.length <= 20)">
@@ -171,8 +171,10 @@
 				indentText: '收起左右栏',
 				indentdisabled: false,
 				visuForestCloudRYBO: [], //人员类型列表
-				peopleList: [], //人员列表
-				connectList: [], //画线
+        personId: null, //人员
+        peopleList: [], //人员列表
+        connectList: [], //画线
+        patrolTrajectory: null, //任务画线
 				xunLinListOne: [], //巡查任务
 				recordList: [], //巡查记录
 				showNothing: false, //暂无信息
@@ -287,26 +289,35 @@
 				getForestLeader(linJob, linType).then(res => {
 					this.peopleList = res.data
 				})
-				this.connectList = []
-				this.$refs.supermap.clearC()
+        this.connectList = []
+        this.personId = null;
+        this.xunLinListOne = [];
+        this.patrolTrajectory = null;
+        this.$refs.supermap.clearC()
 			},
 			//点击左侧人员列表获取 巡查计划
 			getPlanList(personId) {
+        if(this.personId == personId){//当前人员已经被点击一次 不再重复加载
+          return;
+        }
+        this.personId = personId;
 				this.showNothing = false;
 				this.recordList = [];
 				getPlanList(personId).then(res => {
 					this.xunLinListOne = res.data;
 				})
-				this.$refs.supermap.clearC()
+        this.patrolTrajectory = null;
+        this.$refs.supermap.clearC();
 			},
 			//点击右侧巡查计划获取 巡查记录
-			getRecordList(id) {
+			getRecordList(id, patrolTrajectory) {
 				this.showNothing = false;
 				this.recordList = [];
 				getRecordList(id).then(res => {
 					this.recordList = res.data;
 				})
-				this.$refs.supermap.clearC()
+        this.$refs.supermap.clearC();
+        this.setTaskPointList(patrolTrajectory);
 			},
 			//点击右侧巡查记录获取 巡查轨迹
 			getPointList(id) {
@@ -315,6 +326,23 @@
 					this.setPointList(res);
 				})
 			},
+      //点击巡查人员 巡查任务落点
+      setTaskPointList(patrolTrajectory) {
+        console.log("巡查任务落点", typeof JSON.parse(patrolTrajectory));
+        if(this.patrolTrajectory){
+          this.patrolTrajectory = null;
+        }else {
+          this.patrolTrajectory = patrolTrajectory;
+          this.drawTaskPoint(this.patrolTrajectory);
+        }
+      },
+      // 巡查任务落点
+      drawTaskPoint(patrolTrajectory) {
+        setTimeout(() => {
+          this.$refs.supermap.clearC();
+          this.$refs.supermap.setConnectList(JSON.parse(patrolTrajectory), '#04f');
+        }, 1000)
+      },
 			//点击巡查轨迹时段 巡查轨迹落点
 			setPointList(res) {
 				let that = this;
@@ -329,8 +357,8 @@
 						this.connectList.push(latlng)
 					}
 					setTimeout(() => {
-						that.$refs.supermap.clearC()
-						that.$refs.supermap.setConnectList(this.connectList, 'red')
+						// that.$refs.supermap.clearC()
+						that.$refs.supermap.setConnectList(this.connectList, '#f40')
 					}, 1000)
 				} else {
 					that.$refs.supermap.clearC()