From 828fedaae4ff767e0b9696a2a0702ab4d3721c66 Mon Sep 17 00:00:00 2001 From: guoshipeng <3194674006@qq.com> Date: Mon, 14 Aug 2023 13:43:20 +0800 Subject: [PATCH] fix:设备详情百度地图换高德地图,批量修改补偿修改 --- src/views/list/devicesBasic.vue | 161 ++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 110 insertions(+), 51 deletions(-) diff --git a/src/views/list/devicesBasic.vue b/src/views/list/devicesBasic.vue index 0a554d1..d29b5c6 100644 --- a/src/views/list/devicesBasic.vue +++ b/src/views/list/devicesBasic.vue @@ -139,6 +139,7 @@ <a-input v-model="AQIvalue" style="width: 100px; margin-left: 15px" + @blur="ceAQIhandleChange" /> </div> </div> @@ -151,11 +152,12 @@ style="width: 100px; margin-left: 10px" allowClear :options="ceAQIoptions" - @change="ceAQIhandleChange" + @change="AQIhandleChange" ></a-select> <a-input v-model="ceAQIvaluein" style="width: 100px; margin-left: 15px" + @blur="ceAQIhandleChange" /> </div> </div> @@ -1087,7 +1089,6 @@ import { jsonp } from 'vue-jsonp' import any = jasmine.any; - const statusMap = ["default", "processing", "success", "error"]; const status = ["������", "���������", "���������", "������"]; @@ -1284,15 +1285,21 @@ label: '/', }, ] - + private changesen:number=0 private handleChangevalue1(value: string){ - console.log(value); + if(this.changesen===1){ + this.handleChange2(this.reskey); + } } private AQIhandleChange(value: string){ - console.log(value); + if(this.changesen===1){ + this.handleChange2(this.reskey); + } } private ceAQIhandleChange(value: string){ - console.log(value); + if(this.changesen===1){ + this.handleChange2(this.reskey); + } } private tablecolumns:TableColumnType<datatable>=[ { @@ -1337,6 +1344,7 @@ // agehou:'' // } ] + private rowSelectionChange(selectedRowKeys: string[], selectedRows: DataType[]){ // console.log(selectedRows); this.selectedtable=selectedRows @@ -1500,6 +1508,7 @@ this.addMapFlag = true } private showMap2() { + this.typeOperation = 'upa' this.editMapFlag = true } // ������������������ @@ -1648,7 +1657,6 @@ //��������������������� private handleChange1(selectedItems:any) { - if (selectedItems === undefined) { this.selectMt = null }else { @@ -1656,8 +1664,11 @@ } this.loadRuleData(1) } + private reskey:any=0 private handleChange2(res:any){ - // console.log(res.key); + console.log(res.key); + this.reskey=res + console.log(this.reskey); if(this.selectvalue1==='���������������'){ this.$message.warning('������������������') return @@ -1671,13 +1682,13 @@ if(this.selectvalue1==='a99054'){ for(var i=0;i<this.datatable.length;i++){ if(this.ceAQIvalue==='+'){ - this.datatable[i].cel=parseFloat(this.datatable[i].cel+Number(this.ceAQIvaluein)).toFixed(2) + this.datatable[i].cel=Number((this.datatable[i].cel + this.ceAQIvaluein).toFixed(2)) }else if(this.ceAQIvalue==='-'){ - this.datatable[i].cel=parseFloat(this.datatable[i].cel-Number(this.ceAQIvaluein)).toFixed(2) + this.datatable[i].cel=Number((this.datatable[i].cel - this.ceAQIvaluein).toFixed(2)) }else if(this.ceAQIvalue==='*'){ - this.datatable[i].cel=parseFloat(this.datatable[i].cel*Number(this.ceAQIvaluein)).toFixed(3) + this.datatable[i].cel=Number((this.datatable[i].cel * this.ceAQIvaluein).toFixed(2)) }else if(this.ceAQIvalue==='/'){ - this.datatable[i].cel=parseFloat(this.datatable[i].cel/Number(this.ceAQIvaluein)).toFixed(2) + this.datatable[i].cel=Number((this.datatable[i].cel / this.ceAQIvaluein).toFixed(3)) } this.datatable[i].agehou='ce1*'+this.datatable[i].cel } @@ -1687,25 +1698,25 @@ // this.datatable[i].cel=parseFloat(this.datatable[i].cel+this.ceAQIvaluein).toFixed(2) // this.datatable[i].agehou='aqi*'+this.datatable[i].aqi+'+'+'ce1*'+this.datatable[i].cel if(this.AQIvalue1==='+'){ - // console.log(this,'+++'); - this.datatable[i].aqi=parseFloat((this.datatable[i].aqi) + Number(this.AQIvalue)).toFixed(2) + this.datatable[i].aqi=((this.datatable[i].aqi-0) + (this.AQIvalue-0)).toFixed(2) }else if(this.AQIvalue1==='-'){ - this.datatable[i].aqi=parseFloat(this.datatable[i].aqi - Number(this.AQIvalue)).toFixed(2) + this.datatable[i].aqi=Number((this.datatable[i].aqi - this.AQIvalue)).toFixed(2) } else if(this.AQIvalue1==='*'){ - this.datatable[i].aqi=parseFloat(this.datatable[i].aqi * Number(this.AQIvalue)).toFixed(3) + this.datatable[i].aqi=Number((this.datatable[i].aqi * this.AQIvalue)).toFixed(2) }else if(this.AQIvalue1==='/'){ - this.datatable[i].aqi=parseFloat(this.datatable[i].aqi / Number(this.AQIvalue)).toFixed(2) + this.datatable[i].aqi=Number((this.datatable[i].aqi / this.AQIvalue).toFixed(3)) } if(this.ceAQIvalue==='+'){ - this.datatable[i].cel=parseFloat(this.datatable[i].cel + Number(this.ceAQIvaluein)).toFixed(2) + this.datatable[i].cel=((this.datatable[i].cel-0) + (this.ceAQIvaluein-0)).toFixed(2) }else if(this.ceAQIvalue==='-'){ - this.datatable[i].cel=parseFloat(this.datatable[i].cel - Number(this.ceAQIvaluein)).toFixed(2) + this.datatable[i].cel=Number((this.datatable[i].cel - this.ceAQIvaluein)).toFixed(2) }else if(this.ceAQIvalue==='*'){ - this.datatable[i].cel=parseFloat(this.datatable[i].cel * Number(this.ceAQIvaluein)).toFixed(3) + this.datatable[i].cel=Number((this.datatable[i].cel * this.ceAQIvaluein)).toFixed(2) }else if(this.ceAQIvalue==='/'){ - this.datatable[i].cel=parseFloat(this.datatable[i].cel / Number(this.ceAQIvaluein)).toFixed(2) + this.datatable[i].cel=Number((this.datatable[i].cel / this.ceAQIvaluein).toFixed(3)) } this.datatable[i].agehou='aqi*'+this.datatable[i].aqi+'+'+'ce1*'+this.datatable[i].cel + this.changesen=1; } } @@ -2040,6 +2051,7 @@ this.visibleCreateModal1=false; this.datatable=[] this.selectvalue1='���������������' + this.changesen=0 } private handlerSelectChange(arr1: any, arr2: any) { @@ -2180,48 +2192,95 @@ } private receiveFlag2(flag: boolean){ + console.log('receiveFlag2'); this.editMapFlag = flag } // ������������������������ private receiveLomLat(lonLat: any) { + this.addLL = lonLat this.getTownData(lonLat) } - + private getTownData(lonLat: any) { - // jsonp('/proxy/reverse_geocoding/v3/', { - jsonp('https://api.map.baidu.com/reverse_geocoding/v3/', { - ak: 'e5ig9Z7AKFjv8wbkqDbuLkUMzBev0tgT', - output: 'json', - coordtype: 'wgs8411', - extensions_town: true, - location: lonLat.lat+ ',' + lonLat.lng - }).then((res: any) => { - if(this.typeOperation === 'add') { - this.town_code = res.result.addressComponent.town_code - this.form.setFieldsValue({ - jingdu: this.addLL.lng, - weidu: this.addLL.lat, - town: res.result.addressComponent.town - }) - } else { - console.log(res); - if (!(res.result.addressComponent.town === '' && res.result.addressComponent.town_code === '')){ - this.editBeforeData.town.townName = res.result.addressComponent.town - this.editBeforeData.town.townCode = res.result.addressComponent.town_code - } else { - this.editBeforeData.town.townName = res.result.addressComponent.town - this.editBeforeData.town.townCode = res.result.addressComponent.town_code - this.$message.warning('������������������������') - } + console.log(lonLat,'dsasa'); + let self=this + var geocoder = new AMap.Geocoder({ + // city ������������������������������������������������������������adcode ��� citycode + city: '010' + }) + geocoder.getAddress(lonLat, function(status, result) { + console.log(result,'result'); + if (status === 'complete' && result.info === 'OK') { + // self.formattedAddress=result.regeocode.formattedAddress + // console.log(result,'321312'); + if(self.typeOperation === 'add') { + if(result.regeocode.addressComponent.towncode.length>9){ + self.town_code=result.regeocode.addressComponent.towncode.slice(0,9) + }else{ + self.town_code = result.regeocode.addressComponent.towncode + } + self.form.setFieldsValue({ + jingdu: self.addLL[0], + weidu: self.addLL[1], + town: result.regeocode.addressComponent.township + }) + console.log(self.town_code); + } else { + if (!(result.regeocode.addressComponent.township === '' && result.regeocode.addressComponent.towncode === '')){ + self.editBeforeData.town.townName = result.regeocode.addressComponent.township + if(result.regeocode.addressComponent.towncode.length>9){ + self.editBeforeData.town.townCode = result.regeocode.addressComponent.towncode.slice(0,9) + }else{ + self.editBeforeData.town.townCode = result.regeocode.addressComponent.towncode + } + // console.log(self.editBeforeData.town.townName,self.editBeforeData.town.townCode,'222'); + } else { + self.editBeforeData.town.townName = result.regeocode.addressComponent.town + self.editBeforeData.town.townCode = result.regeocode.addressComponent.towncode + self.$message.warning('������������������������') + } - } - }) + } + // result������������������������������������ + } + }) + + // jsonp('/proxy/reverse_geocoding/v3/', { + // jsonp('https://api.map.baidu.com/reverse_geocoding/v3/', { + // ak: 'e5ig9Z7AKFjv8wbkqDbuLkUMzBev0tgT', + // output: 'json', + // coordtype: 'wgs8411', + // extensions_town: true, + // location: lonLat.lat+ ',' + lonLat.lng + // }).then((res: any) => { + // console.log(res,'res'); + // if(this.typeOperation === 'add') { + // this.town_code = res.result.addressComponent.town_code + // this.form.setFieldsValue({ + // jingdu: this.addLL.lng, + // weidu: this.addLL.lat, + // town: res.result.addressComponent.town + // }) + // } else { + // console.log(res,'555'); + // if (!(res.result.addressComponent.town === '' && res.result.addressComponent.town_code === '')){ + // this.editBeforeData.town.townName = res.result.addressComponent.town + // this.editBeforeData.town.townCode = res.result.addressComponent.town_code + // } else { + // this.editBeforeData.town.townName = res.result.addressComponent.town + // this.editBeforeData.town.townCode = res.result.addressComponent.town_code + // this.$message.warning('������������������������') + // } + + // } + // }) } // ������������������������ private receiveLomLat1(lonLat: any) { - this.editBeforeData.longitude = lonLat.lng - this.editBeforeData.latitude = lonLat.lat + console.log(lonLat,'lonLat'); + this.editBeforeData.longitude = lonLat[0] + this.editBeforeData.latitude = lonLat[1] this.getTownData(lonLat) } -- Gitblit v1.8.0