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 |  137 +++++++++++++++++++++++++++++++--------------
 1 files changed, 93 insertions(+), 44 deletions(-)

diff --git a/src/views/list/devicesBasic.vue b/src/views/list/devicesBasic.vue
index 62b48f1..d29b5c6 100644
--- a/src/views/list/devicesBasic.vue
+++ b/src/views/list/devicesBasic.vue
@@ -1089,7 +1089,6 @@
 import { jsonp }  from 'vue-jsonp'
 import any = jasmine.any;
 
-
 const statusMap = ["default", "processing", "success", "error"];
 const status = ["������", "���������", "���������", "������"];
 
@@ -1291,13 +1290,16 @@
     if(this.changesen===1){
       this.handleChange2(this.reskey);
     }
-    this.changesen=1;
   }
   private AQIhandleChange(value: string){
-       this.handleChange2(this.reskey);
+       if(this.changesen===1){
+      this.handleChange2(this.reskey);
+    }
   }
   private ceAQIhandleChange(value: string){
-    this.handleChange2(this.reskey);
+    if(this.changesen===1){
+      this.handleChange2(this.reskey);
+    }
   }
   private tablecolumns:TableColumnType<datatable>=[
     {
@@ -1344,7 +1346,7 @@
   ]
  
   private rowSelectionChange(selectedRowKeys: string[], selectedRows: DataType[]){
-     console.log(selectedRows);
+    //  console.log(selectedRows);
      this.selectedtable=selectedRows
   }
   private selectedtable:any[]=[]
@@ -1506,6 +1508,7 @@
     this.addMapFlag = true
   }
   private showMap2() {
+    this.typeOperation = 'upa'
     this.editMapFlag = true
   }
   // ������������������
@@ -1654,7 +1657,6 @@
 
   //���������������������
   private handleChange1(selectedItems:any) {
-
     if (selectedItems === undefined) {
       this.selectMt = null
     }else {
@@ -1696,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=Number((this.datatable[i].aqi + 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=Number((this.datatable[i].aqi - 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=Number((this.datatable[i].aqi * 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=Number((this.datatable[i].aqi / this.AQIvalue).toFixed(2))
+              this.datatable[i].aqi=Number((this.datatable[i].aqi / this.AQIvalue).toFixed(3))
             } 
             if(this.ceAQIvalue==='+'){
-             this.datatable[i].cel=Number((this.datatable[i].cel + 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=Number((this.datatable[i].cel - 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=Number((this.datatable[i].cel * 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=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;
         }
       }
       
@@ -2190,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