From 9b3f59ebe897d76b3a6108781e232d6e3967ca0f Mon Sep 17 00:00:00 2001 From: Your Name <123456> Date: 星期二, 10 五月 2022 14:54:23 +0800 Subject: [PATCH] 四色图 --- src/components/Tab/Plot.vue | 57 +++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 45 insertions(+), 12 deletions(-) diff --git a/src/components/Tab/Plot.vue b/src/components/Tab/Plot.vue index 15a6b1b..d062258 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" @@ -55,7 +55,7 @@ type="danger" size="mini" circle - @click="() => removeHandle(label.attr.id)" + @click="() => removeHandle(label)" /> </el-col> </el-row> @@ -70,6 +70,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,7 +88,7 @@ </template> <script> - import { addMap } from '@/api/fourColorMap' + import { addMap , deleteColorMap} from '@/api/fourColorMap' import { global } from '../../global'; // 默认样式 @@ -98,6 +107,7 @@ }; export default { + props:['type','colorMapList'], components: {}, data() { return { @@ -105,6 +115,8 @@ 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:{ @@ -113,10 +125,10 @@ "type": "Feature", "properties": { "type": "polygon", - "style": { "text": "D号楼", "clampToGround": true }, + "style": { "text": "D号楼", "clampToGround": true ,color:'',}, "attr": { - "name": "D号楼", - "id": "8a65b4df-2450-4dab-958d-fbd182cfd92d" + "name": "", + "id": "" } }, "geometry": { @@ -162,10 +174,27 @@ }; this.showCreatePanel = true; }, - removeHandle(id) { + removeHandle(label) { if (!global.map) return; - global.map.deletePlot(id); - this.$store.dispatch('map/updateTimestamp'); + debugger + 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; @@ -198,17 +227,18 @@ map.startDraw( { type: 'polygon', - style: { text: name }, + style: { text: name ,color:this.color}, attr: { name, }, }, (entity) => { + debugger this._initLabel(); this.$store.dispatch('map/updateTimestamp'); this.form = { id:'', - etype:1, + etype:this.type, "type": "Feature", "properties": JSON.stringify(entity.attribute), @@ -221,8 +251,11 @@ ] }) } + // 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, -- Gitblit v1.9.2