From 99035941964810509e5037c7d9627b1801213335 Mon Sep 17 00:00:00 2001
From: Admin <978517621@qq.com>
Date: 星期三, 26 十月 2022 14:00:48 +0800
Subject: [PATCH] 默认更改列表
---
src/components/Tab/Plot.vue | 122 +++++++++++++++++++++++++++++++++++-----
1 files changed, 107 insertions(+), 15 deletions(-)
diff --git a/src/components/Tab/Plot.vue b/src/components/Tab/Plot.vue
index 1082c5a..1834109 100644
--- a/src/components/Tab/Plot.vue
+++ b/src/components/Tab/Plot.vue
@@ -12,7 +12,7 @@
创建
</el-button>
</el-col>
- <el-col :span="6">
+ <!-- <el-col :span="6">
<el-button
icon="el-icon-delete"
size="small"
@@ -21,7 +21,7 @@
>
清空
</el-button>
- </el-col>
+ </el-col> -->
<el-col :span="6">
<el-button
icon="el-icon-view"
@@ -44,18 +44,19 @@
circle
@click="() => focusHandle(label.attr.id)"
/>
- <el-button
- icon="el-icon-edit"
- size="mini"
- circle
- @click="() => editHandle(label)"
- />
+
+<!-- <el-button-->
+<!-- icon="el-icon-edit"-->
+<!-- size="mini"-->
+<!-- circle-->
+<!-- @click="() => editHandle(label)"-->
+<!-- />-->
<el-button
icon="el-icon-delete"
type="danger"
size="mini"
circle
- @click="() => removeHandle(label.attr.id)"
+ @click="() => removeHandle(label)"
/>
</el-col>
</el-row>
@@ -70,6 +71,15 @@
>
<p>请输入内容:</p>
<el-input v-model="label.name" placeholder="请输入内容" />
+ <p>请选择风险等级:</p>
+ <el-select v-model="color" placeholder="请选择" >
+ <el-option
+ v-for="item in colorList"
+ :key="item.id"
+ :value="item.name"
+ :label="item.text"
+ ></el-option>
+ </el-select>
<span slot="footer" class="dialog-footer">
<el-button @click="closeCreateHandle">取 消</el-button>
<el-button type="primary" @click="createHandle">确 定</el-button>
@@ -79,6 +89,7 @@
</template>
<script>
+ import { addMap , deleteColorMap} from '@/api/fourColorMap'
import { global } from '../../global';
// 默认样式
@@ -97,6 +108,7 @@
};
export default {
+ props:['type','colorMapList'],
components: {},
data() {
return {
@@ -104,8 +116,39 @@
id: null,
name: '',
},
+ color:'',
+ colorList:[{id:1,name:'blue',text:'低风险'},{id:2,name:'yellow',text:'一般风险'},{id:3,name:'orange',text:'较大风险'},{id:4,name:'red',text:'重大风险'},],
showCreatePanel: false,
showPlot: true,
+ form:{
+ id:'',
+ etype:1,
+ "type": "Feature",
+ "properties": {
+ "type": "polygon",
+ "style": { "text": "D号楼", "clampToGround": true ,color:'',},
+ "attr": {
+ "name": "",
+ "id": ""
+ }
+ },
+ "geometry": {
+ "type": "Polygon",
+ "coordinates": [
+ [
+ [120.728524, 31.258178, 0],
+ [120.727911, 31.257992, 0],
+ [120.728024, 31.25772, 0],
+ [120.727986, 31.2577, 0],
+ [120.728039, 31.257535, 0],
+ [120.728759, 31.257714, 0],
+ [120.728524, 31.258178, 0],
+ [120.728524, 31.258178, 0],
+ [120.728524, 31.258178, 0]
+ ]
+ ]
+ }
+ },
};
},
computed: {
@@ -132,10 +175,26 @@
};
this.showCreatePanel = true;
},
- removeHandle(id) {
+ removeHandle(label) {
if (!global.map) return;
- global.map.deletePlot(id);
- this.$store.dispatch('map/updateTimestamp');
+ for(let i in this.colorMapList){
+ if(JSON.parse(this.colorMapList[i].properties).attr.id === label.attr.id){
+ deleteColorMap({id:this.colorMapList[i].id}).then(res =>{
+ if(res.data.code === '200'){
+ this.$message({
+ title:'成功',
+ message:'删除成功',
+ duration:2000,
+ type:'success'
+ })
+ global.map.deletePlot(label.attr.id);
+ this.$store.dispatch('map/updateTimestamp');
+ }
+ })
+ }
+ }
+
+
},
closeCreateHandle() {
this.showCreatePanel = false;
@@ -149,7 +208,10 @@
name: '',
};
},
- createHandle() {
+ async createHandle() {
+ // this.form.geometry = JSON.stringify(this.form.geometry)
+ // this.form.properties = JSON.stringify(this.form.properties)
+ // let res = await addMap(this.form)
if (!global.map) return;
let map = global.map;
const { id, name } = this.label;
@@ -164,14 +226,44 @@
map.startDraw(
{
type: 'polygon',
- style: { text: name },
+ style: { text: name ,color:this.color, clampToGround: true},
attr: {
name,
},
},
- () => {
+ (entity) => {
+ console.log(wutu3d.draw.attr.getCoordinates(entity));
this._initLabel();
this.$store.dispatch('map/updateTimestamp');
+ this.form = {
+ id:'',
+ etype:this.type,
+ "type": "Feature",
+ "properties":
+ JSON.stringify(entity.attribute),
+ "geometry": JSON.stringify({
+ "type": "Polygon",
+ "coordinates": [
+
+ wutu3d.draw.attr.getCoordinates(entity)
+
+ ]
+ })
+ }
+ // this.form.properties.style.color = this.color
+ // this.form.properties = JSON.stringify(this.form.properties)
+ addMap(this.form).then(res =>{
+ if(res.data.code === '200'){
+ // this.$emit('testLoadedData')
+ this.$message({
+ type:'success',
+ duration:2000,
+ title:'成功',
+ message:'四色图新增成功',
+ })
+ }
+ this.$emit('getList')
+ })
}
);
}
--
Gitblit v1.9.2