package-lock.json | ●●●●● patch | view | raw | blame | history | |
package.json | ●●●●● patch | view | raw | blame | history | |
public/index.html | ●●●●● patch | view | raw | blame | history | |
src/components/map/pickCoordinate.vue | ●●●●● patch | view | raw | blame | history | |
src/components/map/pickCoordinate1.vue | ●●●●● patch | view | raw | blame | history | |
src/main.ts | ●●●●● patch | view | raw | blame | history | |
src/util/request.ts | ●●●●● patch | view | raw | blame | history | |
src/views/list/devicesBasic.vue | ●●●●● patch | view | raw | blame | history |
package-lock.json
@@ -28,6 +28,7 @@ "rxjs-compat": "^6.5.3", "v-charts": "^1.18.0", "vue": "^2.6.10", "vue-amap": "^0.5.10", "vue-baidu-map": "^0.21.22", "vue-class-component": "^7.1.0", "vue-i18n": "^8.15.1", @@ -17598,6 +17599,22 @@ "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", "dev": true }, "node_modules/uppercamelcase": { "version": "1.1.0", "resolved": "https://registry.npmmirror.com/uppercamelcase/-/uppercamelcase-1.1.0.tgz", "integrity": "sha512-C7YEMvhgrvTEKEEVqA7LXNID/1TvvIwYZqNIKLquS6y/MGSkRQAav9LnTTILlC1RqUM8eTVBOe1U/fnB652PRA==", "dependencies": { "camelcase": "^1.2.1" } }, "node_modules/uppercamelcase/node_modules/camelcase": { "version": "1.2.1", "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-1.2.1.tgz", "integrity": "sha512-wzLkDa4K/mzI1OSITC+DUyjgIl/ETNHE9QvYgy6J6Jvqyyz4C0Xfd+lQhb19sX2jMpZV4IssUn0VDVmglV+s4g==", "engines": { "node": ">=0.10.0" } }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -17810,6 +17827,19 @@ "version": "2.6.13", "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.13.tgz", "integrity": "sha512-O+pAdJkce1ooYS1XyoQtpBQr9An+Oys3w39rkqxukVO3ZD1ilYJkWBGoRuadiQEm2LLJnCL2utV4TMSf52ubjw==" }, "node_modules/vue-amap": { "version": "0.5.10", "resolved": "https://registry.npmmirror.com/vue-amap/-/vue-amap-0.5.10.tgz", "integrity": "sha512-9ViNCev1vx32+zZ5RvF/TmUZNbwL9QrdA2/OnD2GlXMfQBkJy7D08Vb7379t6guqnopDPtWJ8K6gg72h9+4GUg==", "dependencies": { "uppercamelcase": "^1.1.0" }, "engines": { "core-js": "^2.5.0", "node": ">= 4.0.0", "npm": ">= 3.0.0" } }, "node_modules/vue-baidu-map": { "version": "0.21.22", @@ -34371,6 +34401,21 @@ "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", "dev": true }, "uppercamelcase": { "version": "1.1.0", "resolved": "https://registry.npmmirror.com/uppercamelcase/-/uppercamelcase-1.1.0.tgz", "integrity": "sha512-C7YEMvhgrvTEKEEVqA7LXNID/1TvvIwYZqNIKLquS6y/MGSkRQAav9LnTTILlC1RqUM8eTVBOe1U/fnB652PRA==", "requires": { "camelcase": "^1.2.1" }, "dependencies": { "camelcase": { "version": "1.2.1", "resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-1.2.1.tgz", "integrity": "sha512-wzLkDa4K/mzI1OSITC+DUyjgIl/ETNHE9QvYgy6J6Jvqyyz4C0Xfd+lQhb19sX2jMpZV4IssUn0VDVmglV+s4g==" } } }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -34551,6 +34596,14 @@ "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.13.tgz", "integrity": "sha512-O+pAdJkce1ooYS1XyoQtpBQr9An+Oys3w39rkqxukVO3ZD1ilYJkWBGoRuadiQEm2LLJnCL2utV4TMSf52ubjw==" }, "vue-amap": { "version": "0.5.10", "resolved": "https://registry.npmmirror.com/vue-amap/-/vue-amap-0.5.10.tgz", "integrity": "sha512-9ViNCev1vx32+zZ5RvF/TmUZNbwL9QrdA2/OnD2GlXMfQBkJy7D08Vb7379t6guqnopDPtWJ8K6gg72h9+4GUg==", "requires": { "uppercamelcase": "^1.1.0" } }, "vue-baidu-map": { "version": "0.21.22", "resolved": "https://registry.npmjs.org/vue-baidu-map/-/vue-baidu-map-0.21.22.tgz", package.json
@@ -30,6 +30,7 @@ "rxjs-compat": "^6.5.3", "v-charts": "^1.18.0", "vue": "^2.6.10", "vue-amap": "^0.5.10", "vue-baidu-map": "^0.21.22", "vue-class-component": "^7.1.0", "vue-i18n": "^8.15.1", public/index.html
@@ -1,118 +1,143 @@ <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <script src="//api.map.baidu.com/api?type=webgl&v=2.0&ak=9FrZ6v3P8xS290ygi40M5Ik3Fgwes4KY"></script> <link rel="icon" href="<%= BASE_URL %>logo.ico"> <link/> <title>七星瓢虫环境科技</title> <style type="text/css"> .preloader{ position:fixed; top:0; left:0; width:100%; height:100%; overflow:hidden; background:#49a9ee; z-index:9999; transition:opacity .65s <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <script type="text/javascript" src="//api.map.baidu.com/api?type=webgl&v=2.0&ak=9FrZ6v3P8xS290ygi40M5Ik3Fgwes4KY"></script> <script src="https://webapi.amap.com/loca?v=1.3.2&key=be57d4add7dc10fb7f7924763a2179ae&plugin=AMap.MarkerClusterer"></script> <link rel="icon" href="<%= BASE_URL %>logo.ico"> <link /> <title>七星瓢虫环境科技</title> <style type="text/css"> .preloader { position: fixed; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background: #49a9ee; z-index: 9999; transition: opacity .65s } .preloader-hidden-add { opacity: 1; display: block } .preloader-hidden-add-active { opacity: 0 } .preloader-hidden { display: none } .cs-loader { position: absolute; top: 0; left: 0; height: 100%; width: 100% } .cs-loader-inner { transform: translateY(-50%); top: 50%; position: absolute; width: 100%; color: #fff; text-align: center } .cs-loader-inner label { font-size: 20px; opacity: 0; display: inline-block } @keyframes lol { 0% { opacity: 0; transform: translateX(-300px) } .preloader-hidden-add{ opacity:1; display:block 33% { opacity: 1; transform: translateX(0) } .preloader-hidden-add-active{ opacity:0 66% { opacity: 1; transform: translateX(0) } .preloader-hidden{ display:none 100% { opacity: 0; transform: translateX(300px) } } .cs-loader{ position:absolute; top:0; left:0; height:100%; width:100% } .cs-loader-inner label:nth-child(6) { animation: lol 3s infinite ease-in-out } .cs-loader-inner{ transform:translateY(-50%); top:50%; position:absolute; width:100%; color:#fff; text-align:center } .cs-loader-inner label:nth-child(5) { animation: lol 3s .1s infinite ease-in-out } .cs-loader-inner label{ font-size:20px; opacity:0; display:inline-block } .cs-loader-inner label:nth-child(4) { animation: lol 3s .2s infinite ease-in-out } @keyframes lol{ 0%{ opacity:0; transform:translateX(-300px) } 33%{ opacity:1; transform:translateX(0) } 66%{ opacity:1; transform:translateX(0) } 100%{ opacity:0; transform:translateX(300px) } } .cs-loader-inner label:nth-child(6){ animation:lol 3s infinite ease-in-out } .cs-loader-inner label:nth-child(5){ animation:lol 3s .1s infinite ease-in-out } .cs-loader-inner label:nth-child(4){ animation:lol 3s .2s infinite ease-in-out } .cs-loader-inner label:nth-child(3){ animation:lol 3s .3s infinite ease-in-out } .cs-loader-inner label:nth-child(2){ animation:lol 3s .4s infinite ease-in-out } .cs-loader-inner label:nth-child(1){ animation:lol 3s .5s infinite ease-in-out } </style> </head> <body class="has-ad-rt"> <noscript> <strong>We're sorry but vue-alain doesn't work properly without JavaScript enabled. Please enable it to continue.</strong> </noscript> .cs-loader-inner label:nth-child(3) { animation: lol 3s .3s infinite ease-in-out } <div id="app"></div> <div class="preloader"> <div class="cs-loader"> <div class="cs-loader-inner"> <label> ●</label> <label> ●</label> <label> ●</label> <label> ●</label> <label> ●</label> <label> ●</label> </div> .cs-loader-inner label:nth-child(2) { animation: lol 3s .4s infinite ease-in-out } .cs-loader-inner label:nth-child(1) { animation: lol 3s .5s infinite ease-in-out } </style> </head> <body class="has-ad-rt"> <noscript> <strong>We're sorry but vue-alain doesn't work properly without JavaScript enabled. Please enable it to continue.</strong> </noscript> <div id="app"></div> <div class="preloader"> <div class="cs-loader"> <div class="cs-loader-inner"> <label> ●</label> <label> ●</label> <label> ●</label> <label> ●</label> <label> ●</label> <label> ●</label> </div> </div> <!-- built files will be auto injected --> </body> </html> </div> <!-- built files will be auto injected --> </body> <script type="text/javascript"> window._AMapSecurityConfig = { securityJsCode: '20fcbbc1782d2853f433831e61fab769', } </script> </html> src/components/map/pickCoordinate.vue
@@ -1,38 +1,65 @@ <template> <a-modal title="坐标选择" destroyOnClose :visible="true" @ok="addLonAndLat" @cancel="handleMapCancel" okText="确定" class="modalStyle" title="坐标选择" destroyOnClose :visible="true" @ok="addLonAndLat" @cancel="handleMapCancel" okText="确定" class="modalStyle" > <p style="position: absolute; bottom:-3px;right: 200px"><span>设备名称:</span><span style="font-size: 18px;font-weight: bold">{{ mapRecord.name }}</span></p> <p style="position: absolute; bottom: -3px; right: 200px"> <span>设备名称:</span ><span style="font-size: 18px; font-weight: bold">{{ mapRecord.name }}</span> </p> <div> <p> <span>地址:</span><a-input v-model="keyword" style="display: inline; width: 160px;height: 26px"/> <span style="margin-left: 25px">经度:</span><a-input disabled="disabled" v-model="lonAndLat.lng" style="display: inline; width: 160px;height: 26px"/> <span style="margin-left: 25px">纬度:</span><a-input disabled="disabled" v-model="lonAndLat.lat" style="display: inline; width: 160px;height: 26px"/> </p> <!-- :scroll-wheel-zoom="true"--> <baidu-map <p> <span>地址:</span ><a-input v-model="keyword" style="display: inline; width: 160px; height: 26px" /> <span style="margin-left: 25px">经度:</span ><a-input disabled="disabled" v-model="lonAndLat.lng" style="display: inline; width: 160px; height: 26px" /> <span style="margin-left: 25px">纬度:</span ><a-input disabled="disabled" v-model="lonAndLat.lat" style="display: inline; width: 160px; height: 26px" /> </p> <!-- :scroll-wheel-zoom="true"--> <baidu-map :center="center" :zoom="zoom" @ready="handler" @click="mapClick" :scroll-wheel-zoom="true" style="height: 400px;width: 100%;"> <bm-control> <bm-local-search :keyword="keyword" :auto-viewport="true" style="display: none" ></bm-local-search> <bm-marker :position="{ lng:lonAndLat.lng , lat: lonAndLat.lat}" :dragging="true" animation="BMAP_ANIMATION_BOUNCE"> </bm-marker> </bm-control> </baidu-map> </div> style="height: 400px; width: 100%" > <bm-control> <bm-local-search :keyword="keyword" :auto-viewport="true" style="display: none" ></bm-local-search> <bm-marker :position="{ lng: lonAndLat.lng, lat: lonAndLat.lat }" :dragging="true" animation="BMAP_ANIMATION_BOUNCE" > </bm-marker> </bm-control> </baidu-map> </div> </a-modal> </template> <script lang="tsx"> @@ -139,13 +166,12 @@ </script> <style lang="less"> .modalStyle{ .ant-modal{ .modalStyle { .ant-modal { margin-left: 25%; } .ant-modal-content{ width: 800px; .ant-modal-content { width: 800px; } } </style> src/components/map/pickCoordinate1.vue
@@ -9,25 +9,67 @@ class="modalStyle" > <div> <p> <span>地址:</span ><a-input v-model="keyword" style="display: inline; width: 160px; height: 26px" /> <span style="margin-left: 25px">经度:</span ><a-input v-model="clickPoint.lng" style="display: inline; width: 160px; height: 26px" /> <span style="margin-left: 25px">纬度:</span ><a-input v-model="clickPoint.lat" style="display: inline; width: 160px; height: 26px" /> </p> <div style="display: flex"> <div style="display: flex; width: 300px"> <div>地址:</div> <a-input placeholder="关键字搜索" id="tipinput" style="width: 160px; height: 26px" ></a-input> <!-- <a-input v-model="input" placeholder="关键字搜索" id="tipinput" style="width: 160px; height: 26px" @change="searchMap" ></a-input> --> <!-- <a-button size="small" type="primary" @click="searchMap" style="margin-left: 10px" >搜索</a-button > --> <!-- <el-amap-search-box :search-option="searchOption" :on-search-result="selectPoi" style="width: 200px; height: 26px; margin-left: 10px;border;" /> --> <!-- <a-input style="width: 160px; height: 26px" @focus="selectPoi" /> --> </div> <div> <span style="margin-left: 25px">经度:</span ><a-input v-model="clickPoint[0]" style="display: inline; width: 160px; height: 26px" /> </div> <div> <span style="margin-left: 25px">纬度:</span ><a-input v-model="clickPoint[1]" style="display: inline; width: 160px; height: 26px" /> </div> </div> <el-amap ref="map" :center="clickPoint" :events="{ click: mapClick }" :zoom="zoom" :scroll-wheel-zoom="true" style="height: 400px; width: 100%; margin-top: 20px" > <el-amap-marker :position="clickPoint" animation="AMAP_ANIMATION_BOUNCE" :dragging="true" ></el-amap-marker> </el-amap> <!-- :scroll-wheel-zoom="true"--> <baidu-map <!-- <baidu-map :center="center" :zoom="zoom" @ready="handler" @@ -48,7 +90,7 @@ > </bm-marker> </bm-control> </baidu-map> </baidu-map> --> </div> </a-modal> </template> @@ -67,10 +109,10 @@ @Component({ }) export default class PickCoordinate extends Vue { private center: any = { lng: 120.726838, lat: 31.3421 } private center: any = [ 120.726838, 31.3421 ] @Prop({ type: String, default: '' @@ -84,13 +126,17 @@ private typeOperation!: string private keyword: string = '' private zoom = 3 @Watch('clickPoint', {deep: true}) private monitorMapFlag(newVal: any, oldVal: any) { this.center.lng = newVal.lng this.center.lat = newVal.lat private zoom = 19 private searchOption:any={ city: '全国', citylimit: false } @Watch('clickPoint', {deep: true, immediate: true},) private monitorMapFlag(newVal: any, oldVal: any) { console.log(newVal,'newVal'); this.center= [newVal.lng,newVal.lat] } private num1:any=1 @Watch('lnglat', {deep: true, immediate: true}) private lnglatWatch(newVal: any, oldVal: any) { @@ -100,32 +146,68 @@ // this.center.lat = newVal.lat } private created() { console.log(this.clickPoint,'clickPoint'); } // 初始化地图 private handler({BMap, map}) { this.center.lng = this.typeOperation === 'add' ? '120.726838' : this.lnglat.split(',')[1] this.center.lat = this.typeOperation === 'add' ? '31.3421' : this.lnglat.split(',')[0] this.zoom = 19 // private handler({BMap, map}) { // this.center.lng = this.typeOperation === 'add' ? '120.726838' : this.lnglat.split(',')[1] // this.center.lat = this.typeOperation === 'add' ? '31.3421' : this.lnglat.split(',')[0] // this.zoom = 19 // } private selectPoi(e){ console.log(e); let poi = e if (poi.length > 0) { this.clickPoint = [poi[0].lng, poi[0].lat] } } private input:any='' private mark:any='' private searchMap(){ var autoOptions = { input: "tipinput" }; var auto = new AMap.AutoComplete(autoOptions); const placeSearch = new AMap.PlaceSearch(this.input); console.log(window); auto.on("select", select);//注册监听,当选中某条记录时会触发 function select(e) { console.log(e.poi.adcode); placeSearch.setCity(e.poi.adcode); placeSearch.search(e.poi.name); //关键字查询查询 } // 关键字查询 // console.log(this.input); // placeSearch.search(this.input, (status, result) => { // // 查询成功时,result即对应匹配的POI信息 // console.log(result);//打印这句话报错,第一遍可以打印出来,第二遍就会报错 // }); // // 监听选中节点事件 // AMap.event.addListener(placeSearch, "selectChanged", (SelectChangeEvent) => { // // 获取节点信息自行处理逻辑代码 // this.mark = SelectChangeEvent.selected.data; // console.log(SelectChangeEvent.selected.data,'苏轼'); // }); } // 初始定位到星虹国际 private clickPoint: any = this.lnglat === '' ? { lng: ' 120.726838', lat: ' 31.3421' } : { lng: this.lnglat.split(',')[1], lat: this.lnglat.split(',')[0] } private clickPoint: any = this.lnglat === '' ? [ 120.720262, 31.335757 ] : [ this.lnglat.split(',')[1], this.lnglat.split(',')[0] ] private mapClick(e: any) { const { lng, lat } = e.point this.clickPoint.lng = lng this.clickPoint.lat = lat const { lng, lat } = e.lnglat this.clickPoint=[ lng, lat] this.$forceUpdate() // console.log(this.clickPoint); } private handleMapCancel() { @@ -135,11 +217,12 @@ private addLonAndLat() { if (this.typeOperation === 'add') { console.log('add'); this.sendLonLat(this.clickPoint) } else { console.log('upa'); this.editLonLat(this.clickPoint) } this.flagSend(false) } @@ -150,17 +233,19 @@ @Emit('sendLonLat') private sendLonLat(lonLat: any) { console.log(lonLat,'jia'); return lonLat; } @Emit('editLonLat') private editLonLat(lonLat: any) { console.log(lonLat,'gai'); return lonLat; } } </script> <style lang="less"> <style lang="less" scoped> .modalStyle { .ant-modal { margin-left: 25%; @@ -173,4 +258,19 @@ .anchorBL { display: none; } /* 去除高德地图的logo */ /deep/.amap-logo { display: none; opacity: 0 !important; } /deep/.amap-copyright { opacity: 0; } .amap-sug-result { position: absolute; z-index: 9999 !important;; background-color: #fefefe; border: 1px solid #d1d1d1; bottom: auto; } </style> src/main.ts
@@ -1,6 +1,6 @@ import Vue from 'vue'; import axios from 'axios' import {i18n} from './app/index'; import { i18n } from './app/index'; import App from './App.vue'; import router from '@/route/router'; @@ -11,11 +11,22 @@ //百度地图 import BaiduMap from 'vue-baidu-map' Vue.use(BaiduMap, { ak: '9FrZ6v3P8xS290ygi40M5Ik3Fgwes4KY'//你申请的key ak: '9FrZ6v3P8xS290ygi40M5Ik3Fgwes4KY'//你申请的key }) import AMap from 'vue-amap' Vue.use(AMap) AMap.initAMapApiLoader({ key: 'c4e73f2c6972766d6a54dffd2f501cac', plugin: ['AMap.moveAnimation', 'AMap.PlaceSearch', 'AMap.Scale', 'AMap.OverView', 'AMap.ToolBar', 'AMap.MapType', 'AMap.PolyEditor', 'AMap.CircleEditor', 'AMap.DistrictSearch', 'AMap.Geocoder', 'AMap.AutoComplete'], // 默认高德 sdk 版本为 1.4.4 v: '1.4.4' }) // 初始化加载器 import {preloaderFinished} from './util/preloader'; import { preloaderFinished } from './util/preloader'; preloaderFinished(); import Startup from '@/core/Startup'; @@ -38,17 +49,17 @@ app.$mount('#app'); // app启动 ( window as any ).appBootstrap(); (window as any).appBootstrap(); // 设置app名称 store.commit('app/appName', res.data.app); // 从storage中初始化token,以便登录后刷新token丢失 const initToken = app.$ss.get('token'); if ( initToken != null) { store.commit('user/loginSuccess', {token: initToken}); if (initToken != null) { store.commit('user/loginSuccess', { token: initToken }); // 获取acl权限 store.dispatch('acl/login', {username: initToken}); store.dispatch('acl/login', { username: initToken }); } }, ); src/util/request.ts
@@ -5,6 +5,7 @@ const instance = axios.create({ baseURL: 'http://47.99.64.149:8082/', // baseUrl会在发送请求的时候拼接在url前面 开发环境 // baseURL: 'http://120.26.43.34:8082/', // baseURL: 'http://www.7drlb7.com:8082/', // baseUrl会在发送请求的时候拼接在url前面 正式环境 timeout: 5000 }) 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 = ["关闭", "运行中", "已上线", "异常"]; @@ -1288,16 +1287,22 @@ ] private changesen:number=0 private handleChangevalue1(value: string){ console.log(this.changesen); if(this.changesen===1){ this.handleChange2(this.reskey); } this.changesen=1; } private AQIhandleChange(value: string){ this.handleChange2(this.reskey); console.log(this.changesen); if(this.changesen===1){ this.handleChange2(this.reskey); } } private ceAQIhandleChange(value: string){ this.handleChange2(this.reskey); console.log(this.changesen); if(this.changesen===1){ this.handleChange2(this.reskey); } } private tablecolumns:TableColumnType<datatable>=[ { @@ -1344,7 +1349,7 @@ ] private rowSelectionChange(selectedRowKeys: string[], selectedRows: DataType[]){ console.log(selectedRows); // console.log(selectedRows); this.selectedtable=selectedRows } private selectedtable:any[]=[] @@ -1506,6 +1511,7 @@ this.addMapFlag = true } private showMap2() { this.typeOperation = 'upa' this.editMapFlag = true } // 定位级别数据 @@ -1654,7 +1660,6 @@ //下拉查询框方法 private handleChange1(selectedItems:any) { if (selectedItems === undefined) { this.selectMt = null }else { @@ -1678,9 +1683,10 @@ this.datatable=[] this.datatable=res.data.data if(this.selectvalue1==='a99054'){ console.log(21323); for(var i=0;i<this.datatable.length;i++){ 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)) }else if(this.ceAQIvalue==='*'){ @@ -1696,28 +1702,27 @@ // 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; }) } @@ -2046,10 +2051,10 @@ } private handleCreateModalCancel1():any{ this.datatable=[]; this.selectvalue1='请选择因子'; this.changesen=0; this.visibleCreateModal1=false; this.datatable=[] this.selectvalue1='请选择因子' this.changesen=0 } private handlerSelectChange(arr1: any, arr2: any) { @@ -2190,48 +2195,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) }