From 756e81d6e35231521f0431e292edb22aed65e403 Mon Sep 17 00:00:00 2001
From: guoshipeng <3194674006@qq.com>
Date: Mon, 14 Aug 2023 15:08:08 +0800
Subject: [PATCH] fix:设备详情百度地图换高德地图,经纬度批量修改
---
src/util/request.ts | 1
src/views/list/devicesBasic.vue | 150 +++++++---
src/components/map/pickCoordinate1.vue | 198 +++++++++++---
src/components/map/pickCoordinate.vue | 84 ++++--
package-lock.json | 53 ++++
public/index.html | 229 +++++++++-------
package.json | 1
src/main.ts | 25 +
8 files changed, 505 insertions(+), 236 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index 0474547..88fb417 100644
--- a/package-lock.json
+++ b/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",
diff --git a/package.json b/package.json
index ae50939..9ecda72 100644
--- a/package.json
+++ b/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",
diff --git a/public/index.html b/public/index.html
index 9e7b33d..c773f97 100644
--- a/public/index.html
+++ b/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>
\ No newline at end of file
diff --git a/src/components/map/pickCoordinate.vue b/src/components/map/pickCoordinate.vue
index 9f82ba7..19058e1 100644
--- a/src/components/map/pickCoordinate.vue
+++ b/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>
diff --git a/src/components/map/pickCoordinate1.vue b/src/components/map/pickCoordinate1.vue
index 4b75cec..8016aba 100644
--- a/src/components/map/pickCoordinate1.vue
+++ b/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>
diff --git a/src/main.ts b/src/main.ts
index 083fd56..ad8ffc2 100644
--- a/src/main.ts
+++ b/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 });
}
},
);
diff --git a/src/util/request.ts b/src/util/request.ts
index 0a78c66..f69facc 100644
--- a/src/util/request.ts
+++ b/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
})
diff --git a/src/views/list/devicesBasic.vue b/src/views/list/devicesBasic.vue
index 62b48f1..fab16c4 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 = ["������", "���������", "���������", "������"];
@@ -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)
}
--
Gitblit v1.8.0