gjy 3 년 전
부모
커밋
420cd4c503

+ 1 - 0
package.json

@@ -42,6 +42,7 @@
     "dist": "electron-builder"
   },
   "dependencies": {
+    "@amap/amap-jsapi-loader": "^1.0.1",
     "@babel/polyfill": "^7.12.1",
     "@babel/preset-env": "^7.14.4",
     "axios": "^0.20.0",

+ 163 - 118
src/components/mapdrag/indexMap.vue

@@ -86,6 +86,7 @@
     TextToCode
   } from 'element-china-area-data'
   import image from '../../../public/img/ic_locationmarker.jpg'
+  import AMapLoader from '@amap/amap-jsapi-loader';
   export default {
     data() {
       return {
@@ -116,138 +117,182 @@
     },
     watch: {},
     async created() {
-      debugger
+      AMapLoader.reset();
+      // debugger
       // 已载入高德地图API,则直接初始化地图
-      if (window.AMap && window.AMapUI && window.Loca) {
+      if ( window.Loca) {
         this.loadmap()
         // 未载入高德地图API,则先载入API再初始化
       } else {
-     await remoteLoad(`https://webapi.amap.com/maps?v=2.0&key=211dd6f989e719022aaf47ddb0659c47&plugin=AMap.Scale,AMap.ToolBar`)
-        await remoteLoad('https://webapi.amap.com/loca?v=2.0.0&key=211dd6f989e719022aaf47ddb0659c47')
-
+    //  await remoteLoad(`https://webapi.amap.com/maps?v=2.0&key=211dd6f989e719022aaf47ddb0659c47&plugin=AMap.Scale,AMap.ToolBar`)
+    //     await remoteLoad('https://webapi.amap.com/loca?v=2.0.0&key=211dd6f989e719022aaf47ddb0659c47')
+        this.remoteLoad()
       }
     },
     mounted() {
-
       this.loadmap()
     },
     methods: {
-remoteLoad(){debugger
-  let scriptElement1 = document.createElement('script')
-  scriptElement1.src =
-    "https://webapi.amap.com/maps?v=2.0&key=211dd6f989e719022aaf47ddb0659c47&plugin=AMap.Scale,AMap.ToolBar"
-  document.body.appendChild(scriptElement1)
-  let scriptElement2 = document.createElement('script')
-  scriptElement2.src = "https://webapi.amap.com/loca?v=2.0.0&key=211dd6f989e719022aaf47ddb0659c47"
-  document.body.appendChild(scriptElement2)
+remoteLoad(){
+  // debugger
+  // delete window.AMap;
+  // let scriptElement1 = document.createElement('script')
+  // scriptElement1.src =
+  //   "https://webapi.amap.com/maps?v=2.0&key=211dd6f989e719022aaf47ddb0659c47&plugin=AMap.Scale,AMap.ToolBar"
+  // document.body.appendChild(scriptElement1)
+  // let scriptElement2 = document.createElement('script')
+  // scriptElement2.src = "https://webapi.amap.com/loca?v=2.0.0&key=211dd6f989e719022aaf47ddb0659c47"
+  // document.body.appendChild(scriptElement2)
+  // this.loadmap()
    // window.Loca = Loca
-   console.log(Loca)
+  //  console.log(Loca)
   
 },
       loadmap(val) {
-       setTimeout(() => {debugger
-         var map = new AMap.Map('mapContainer', {
-           zoom: 5.29,
-           // showLabel: false,
-           // viewMode: '3D',
-           pitch: 48,
-           center: [104.780269, 34.955403],
-           mapStyle: 'amap://styles/dark',
-         });
-
-         var loca = new Loca.Container({
-           map,
-         });
-
-         // 颜色配置
-         var headColors = ['#ECFFB1', '#146968', '#146968', '#146968', '#146968', '#146968', '#146968', '#146968'];
-         var trailColors = [
-           'rgba(255,178,6, 0.2)',
-           'rgba(255,178,6, 0.2)',
-           'rgba(20,105,104, 0.2)',
-           'rgba(20,105,104, 0.2)',
-           'rgba(20,105,104, 0.2)',
-           'rgba(20,105,104, 0.2)',
-           'rgba(20,105,104, 0.2)',
-           'rgba(20,105,104, 0.2)',
-         ];
-
-         // 进入北京方向的线
-         var inLineSource = new Loca.GeoJSONSource({
-           url: 'https://a.amap.com/Loca/static/loca-v2/demos/mock_data/data-line-in.json',
-         });
-
-         var inLinelayer = new Loca.PulseLineLayer({
-           // loca,
-           zIndex: 11,
-           opacity: 1,
-           visible: true,
-           zooms: [2, 22],
-         });
-
-         inLinelayer.setStyle({
-           altitude: 0,
-           lineWidth: (_, feature) => feature.properties.lineWidthRatio * 4 + 1,
-           headColor: (_, feature) => headColors[feature.properties.type],
-           trailColor: (_, feature) => trailColors[feature.properties.type],
-           interval: 0.5,
-           duration: 2000,
-         });
-         inLinelayer.setSource(inLineSource);
-         loca.add(inLinelayer);
-
-         // 出北京方向的线
-         var outLineSource = new Loca.GeoJSONSource({
-           url: 'https://a.amap.com/Loca/static/loca-v2/demos/mock_data/data-line-out.json',
-         });
-
-         var outLinelayer = new Loca.PulseLineLayer({
-           // loca,
-           zIndex: 11,
-           opacity: 1,
-           visible: true,
-           zooms: [2, 22],
-         });
-
-         outLinelayer.setStyle({
-           altitude: 0,
-           lineWidth: (_, feature) => feature.properties.lineWidthRatio * 1 + 3,
-           headColor: (_, feature) => headColors[feature.properties.type],
-           trailColor: (_, feature) => trailColors[feature.properties.type],
-           interval: 0.25,
-           duration: 5000,
-         });
-         outLinelayer.setSource(outLineSource);
-         loca.add(outLinelayer);
-
-         // 下方呼吸点层
-         var scatter = new Loca.ScatterLayer({
-           loca,
-           zIndex: 10,
-           opacity: 1,
-           visible: true,
-           zooms: [2, 22],
-         });
-
-         var scatterGeo = new Loca.GeoJSONSource({
-           url: 'https://a.amap.com/Loca/static/loca-v2/demos/mock_data/data-scatter.json',
-         });
-         scatter.setSource(scatterGeo);
-         scatter.setStyle({
-           unit: 'px',
-           size: (_, feature) => {
-             var size = feature.properties.lineWidthRatio * 2 + 30;
-             return [size, size];
-           },
-           borderWidth: 0,
-           texture: 'https://a.amap.com/Loca/static/loca-v2/demos/images/breath_yellow.png',
-           duration: 2000,
-           animate: true,
-         });
-         loca.add(scatter);
-
-         loca.animate.start();
-       }, 500)
+       AMapLoader.load({ //首次调用 load
+        key:'211dd6f989e719022aaf47ddb0659c47',//首次load key为必填
+        version:'2.0',
+      	Loca:{
+            version: '2.0.0',
+        }
+    }).then((AMap)=>{
+        map = new AMap.Map('mapContainer',{
+            zoom: 5,
+        });
+
+        var layer = new Loca.PointLayer({
+            map: map,
+            
+        });
+
+        layer.setData(districts, {
+            // 指定经纬度所在字段
+            lnglat: 'center'
+        });
+
+        layer.setOptions({
+            style: {
+                // 圆形半径,单位像素
+                radius: 15,
+                // 填充颜色
+                color: '#07E8E4',
+                // 描边颜色
+                borderColor: '#5DFBF9',
+                // 描边宽度,单位像素
+                borderWidth: 1,
+                // 透明度 [0-1]
+                opacity: 0.9,
+            }
+        });
+
+        layer.render();
+    }).catch((e)=>{
+        console.log(e);
+    });
+      //  setTimeout(() => {
+      //   //  debugger
+      //    var map = new AMap.Map('mapContainer', {
+      //      zoom: 5.29,
+      //      // showLabel: false,
+      //      // viewMode: '3D',
+      //      pitch: 48,
+      //      center: [104.780269, 34.955403],
+      //      mapStyle: 'amap://styles/dark',
+      //    });
+
+      //    var loca = new Loca.Container({
+      //      map,
+      //    });
+
+      //    // 颜色配置
+      //    var headColors = ['#ECFFB1', '#146968', '#146968', '#146968', '#146968', '#146968', '#146968', '#146968'];
+      //    var trailColors = [
+      //      'rgba(255,178,6, 0.2)',
+      //      'rgba(255,178,6, 0.2)',
+      //      'rgba(20,105,104, 0.2)',
+      //      'rgba(20,105,104, 0.2)',
+      //      'rgba(20,105,104, 0.2)',
+      //      'rgba(20,105,104, 0.2)',
+      //      'rgba(20,105,104, 0.2)',
+      //      'rgba(20,105,104, 0.2)',
+      //    ];
+
+      //    // 进入北京方向的线
+      //    var inLineSource = new Loca.GeoJSONSource({
+      //      url: 'https://a.amap.com/Loca/static/loca-v2/demos/mock_data/data-line-in.json',
+      //    });
+
+      //    var inLinelayer = new Loca.PulseLineLayer({
+      //      // loca,
+      //      zIndex: 11,
+      //      opacity: 1,
+      //      visible: true,
+      //      zooms: [2, 22],
+      //    });
+
+      //    inLinelayer.setStyle({
+      //      altitude: 0,
+      //      lineWidth: (_, feature) => feature.properties.lineWidthRatio * 4 + 1,
+      //      headColor: (_, feature) => headColors[feature.properties.type],
+      //      trailColor: (_, feature) => trailColors[feature.properties.type],
+      //      interval: 0.5,
+      //      duration: 2000,
+      //    });
+      //    inLinelayer.setSource(inLineSource);
+      //    loca.add(inLinelayer);
+
+      //    // 出北京方向的线
+      //    var outLineSource = new Loca.GeoJSONSource({
+      //      url: 'https://a.amap.com/Loca/static/loca-v2/demos/mock_data/data-line-out.json',
+      //    });
+
+      //    var outLinelayer = new Loca.PulseLineLayer({
+      //      // loca,
+      //      zIndex: 11,
+      //      opacity: 1,
+      //      visible: true,
+      //      zooms: [2, 22],
+      //    });
+
+      //    outLinelayer.setStyle({
+      //      altitude: 0,
+      //      lineWidth: (_, feature) => feature.properties.lineWidthRatio * 1 + 3,
+      //      headColor: (_, feature) => headColors[feature.properties.type],
+      //      trailColor: (_, feature) => trailColors[feature.properties.type],
+      //      interval: 0.25,
+      //      duration: 5000,
+      //    });
+      //    outLinelayer.setSource(outLineSource);
+      //    loca.add(outLinelayer);
+
+      //    // 下方呼吸点层
+      //    var scatter = new Loca.ScatterLayer({
+      //      loca,
+      //      zIndex: 10,
+      //      opacity: 1,
+      //      visible: true,
+      //      zooms: [2, 22],
+      //    });
+
+      //    var scatterGeo = new Loca.GeoJSONSource({
+      //      url: 'https://a.amap.com/Loca/static/loca-v2/demos/mock_data/data-scatter.json',
+      //    });
+      //    scatter.setSource(scatterGeo);
+      //    scatter.setStyle({
+      //      unit: 'px',
+      //      size: (_, feature) => {
+      //        var size = feature.properties.lineWidthRatio * 2 + 30;
+      //        return [size, size];
+      //      },
+      //      borderWidth: 0,
+      //      texture: 'https://a.amap.com/Loca/static/loca-v2/demos/images/breath_yellow.png',
+      //      duration: 2000,
+      //      animate: true,
+      //    });
+      //    loca.add(scatter);
+
+      //    loca.animate.start();
+      //  }, 500)
       }
     },
   }

+ 2 - 0
src/components/mapdrag/warehouseReceiptMap.vue

@@ -40,6 +40,7 @@
     TextToCode
   } from 'element-china-area-data'
   import image from '../../../public/img/ic_locationmarker.jpg'
+    import AMapLoader from '@amap/amap-jsapi-loader';
   export default {
     data() {
       return {
@@ -70,6 +71,7 @@
       }
     },
     async created() {
+      // AMapLoader.reset();
       // 已载入高德地图API,则直接初始化地图
       if (window.AMap && window.AMapUI) {
         this.initMap()

+ 1 - 2
src/views/contractManagement/purchaseContract.vue

@@ -218,8 +218,7 @@
           <div
             v-if="
               (scope.row.approveStatus != '待决策人审核' &&
-                scope.row.approveStatus) ||
-              (scope.row.status != '执行中' && scope.row.status)
+                scope.row.approveStatus) 
             "
             style="display: inline-block"
           >

+ 1 - 2
src/views/contractManagement/salesContract.vue

@@ -222,8 +222,7 @@
           <div
             v-if="
               (scope.row.approveStatus != '待决策人审核' &&
-                scope.row.approveStatus) ||
-              (scope.row.status != '执行中' && scope.row.status)
+                scope.row.approveStatus)
             "
             style="display: inline-block"
           >