派生自 wuyushui/SewerAndRainNetwork

YANGDL
2021-01-05 77f7281ff7cee541aaa51339512e6443b7d89e42
修改eslint配置增加mock配置
15个文件已删除
1个文件已添加
30个文件已修改
3687 ■■■■■ 已修改文件
.eslintrc.js 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aliases.config.js 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/base/BaseVectorLayer.js 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/BaseMapController.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/LayerController.vue 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/LayerControllerAPI.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/layerControllerPresets.js 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/modules/LcBaseMap.vue 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/modules/LcServiceLayer.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/helpers/BasemapHelper.js 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/helpers/ServiceLayerHelper.js 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/helpers/VectorLayerHelper.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/helpers/WmsHelper.js 补丁 | 查看 | 原始文档 | blame | 历史
src/components/mapmodules/CommonLayerLoad.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/mapmodules/SafetyIndexBar.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/mapmodules/SafetyIndexLine.js 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/mapmodules/SafetyIndexPie.js 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/panel/MonitorHZ.vue 补丁 | 查看 | 原始文档 | blame | 历史
src/components/panel/MonitorPanel.vue 68 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/utils/AjaxUtils.js 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/utils/DateUtils.js 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/utils/GISUtil.js 156 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/utils/JsonUtils.js 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/utils/MiscUtils.js 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/utils/wfsQueryUtils.js 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/conf/MapConfig.js 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main.js 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/routes.js 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/store/modules/app.js 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/store/modules/map.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/AjaxUtils.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/DateUtils.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/GISUtil.js 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/JsonUtils.js 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/MiscUtils.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/MixinAuthority.js 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/MixinEmitter.js 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/authorityAPI.js 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/axios.js 214 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/constant.js 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/dictionary.js 782 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/navigation.js 324 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/tools.js 1154 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/wfsQueryUtils.js 补丁 | 查看 | 原始文档 | blame | 历史
src/views/MapTemplate.vue 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.eslintrc.js
New file
@@ -0,0 +1,28 @@
module.exports = {
  root: true,
  env: {
    node: true
  },
  extends: [
    'plugin:vue/essential',
    '@vue/standard'
  ],
  parserOptions: {
    parser: 'babel-eslint'
  },
  rules: {
    'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off'
  },
  overrides: [
    {
      files: [
        '**/__tests__/*.{j,t}s?(x)',
        '**/tests/unit/**/*.spec.{j,t}s?(x)'
      ],
      env: {
        mocha: true
      }
    }
  ]
}
aliases.config.js
@@ -1,26 +1,26 @@
// const path = require('path')
//
// function resolveSrc(_path) {
//   return path.join(__dirname, _path)
// }
//
// const aliases = {
//   '@src': 'src',
//   '@router': 'src/router',
//   '@views': 'src/views',
//   '@components': 'src/components',
//   '@assets': 'src/assets',
//   '@utils': 'src/utils',
//   '@styles': 'src/styles'
// }
//
// module.exports = {
//   webpack: {},
//   jest: {}
// }
//
// for (const alias in aliases) {
//   module.exports.webpack[alias] = resolveSrc(aliases[alias])
//   module.exports.jest['^' + alias + '/(.*)$'] =
//     '<rootDir>/' + aliases[alias] + '/$1'
// }
const path = require('path')
function resolveSrc(_path) {
  return path.join(__dirname, _path)
}
const aliases = {
  '@src': 'src',
  '@router': 'src/router',
  '@views': 'src/views',
  '@components': 'src/components',
  '@assets': 'src/assets',
  '@utils': 'src/utils',
  '@styles': 'src/styles'
}
module.exports = {
  webpack: {},
  jest: {}
}
for (const alias in aliases) {
  module.exports.webpack[alias] = resolveSrc(aliases[alias])
  module.exports.jest['^' + alias + '/(.*)$'] =
    '<rootDir>/' + aliases[alias] + '/$1'
}
package.json
@@ -4,7 +4,11 @@
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "serve-test": "vue-cli-service serve --mode test",
    "serve-production": "vue-cli-service serve --mode production",
    "build": "vue-cli-service build --mode development",
    "build-test": "vue-cli-service build --mode test",
    "build-production": "vue-cli-service build --mode production",
    "lint": "vue-cli-service lint"
  },
  "dependencies": {
@@ -32,30 +36,22 @@
    "@vue/cli-plugin-babel": "~4.5.0",
    "@vue/cli-plugin-eslint": "~4.5.0",
    "@vue/cli-service": "~4.5.0",
    "@vue/eslint-config-standard": "^5.1.2",
    "babel-eslint": "^10.1.0",
    "babel-loader": "^8.2.2",
    "cache-loader": "^4.1.0",
    "css-loader": "^5.0.1",
    "eslint": "^6.7.2",
    "eslint-plugin-vue": "^6.2.2",
    "eslint-plugin-import": "^2.20.2",
    "eslint-plugin-node": "^11.1.0",
    "eslint-plugin-promise": "^4.2.1",
    "eslint-plugin-standard": "^4.0.0",
    "mockjs": "^1.1.0",
    "less": "^3.13.0",
    "less-loader": "^7.1.0",
    "vue-loader": "^15.9.5",
    "vue-template-compiler": "^2.6.11"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "babel-eslint"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
src/base/BaseVectorLayer.js
@@ -58,12 +58,11 @@
            this.layerHandler.clearLayers()
        }
        let features = []
      const features = []
        // 依据加载方式加载数据
        if(this.layerLoadType === BaseVectorLayer.LOAD_TYPE_JSON) {
            this.features = this._loadFromJSON()
        }else if(this.layerLoadType === BaseVectorLayer.LOAD_TYPE_URL) {
            this.features = this._loadFromURL()
        }else {
@@ -78,6 +77,7 @@
    _loadFromJSON(){
        console.log('该方法是抽象方法,在子类尚未实现!')
    }
    _loadFromURL(){
        console.log('该方法是抽象方法,在子类尚未实现!')
    }
@@ -90,12 +90,12 @@
        if(typeof groups !== 'undefined') { // 如果传递了groups, 则按分组的要求加载图层
            if(this.layerHandler) {
                for(let i = 0, len = groups.length; i < len; i++) {
                    let gFeaturesArray = this.featuresGroup.get(groups[i])
            const gFeaturesArray = this.featuresGroup.get(groups[i])
                    if(gFeaturesArray || gFeaturesArray.length > 0){
                        gFeaturesArray.forEach(element => {
                            this.layerHandler.removeLayer(element) // 避免被重复加载
                            this.layerHandler.addLayer(element)
                        });
              })
                    }
                }
            }
@@ -117,11 +117,11 @@
        if(typeof groups !== 'undefined') { // 如果传递了groups, 则按分组的要求加载图层
            if(this.layerHandler) {
                for(let i = 0, len = groups.length; i < len; i++) {
                    let gFeaturesArray = this.featuresGroup.get(groups[i])
            const gFeaturesArray = this.featuresGroup.get(groups[i])
                    if(gFeaturesArray || gFeaturesArray.length > 0){
                        gFeaturesArray.forEach(element => {
                            this.layerHandler.removeLayer(element)
                        });
              })
                    }
                }
            }
src/components/LayerController/BaseMapController.vue
@@ -82,6 +82,7 @@
  .frontMap{
    z-index: 1000;
  }
  .floatPanel{
    position: absolute;
    top: 5px;
@@ -89,9 +90,11 @@
    width: 94px;
    height: 32px;
  }
  .basemapLayer{
    border: lightgray 1px solid;
  }
  .basemapLayerItem{
    width: 26px;
    height: 26px;
src/components/LayerController/LayerController.vue
@@ -1,15 +1,13 @@
<template>
  <div class="float-panel">
    <!-- <i class="horn horn-tl"></i> -->
    <!-- <i class="horn horn-tr"></i> -->
    <i class="horn horn-br"></i>
    <i class="horn horn-bl"></i>
    <div class="head title-border">
      <div class="title-text-border">
        <div class="title-icon"></div>
        <div class="title-text">业务看板</div>
        <div class="title-button" :class="{'switch-head-up':true, 'switch-head-down': !panelSwitch.main}" @click="switchPanel">
        <div class="title-button" :class="{'switch-head-up':true, 'switch-head-down': !panelSwitch.main}"
             @click="switchPanel">
          <!-- <i class="el-icon-arrow-down"></i> -->
        </div>
      </div>
@@ -23,11 +21,8 @@
</template>
<script>
import api from './LayerControllerAPI'
// import { mapState, mapMutations } from 'vuex'
import '@assets/css/map/magic.min.css'
import presets from './layerControllerPresets'
// import $ from 'jquery'
import iconSetting from '@/assets/images/map-pages/icon/setting.png'
@@ -68,7 +63,6 @@
  mounted() {
     this.$nextTick(function() {
        this.init()
        console.log(api)
     })
  },
  methods: {
@@ -77,12 +71,12 @@
    },
    initPreset() {
      if (this.preset !== 'default') {
        let prmPreset = presets[this.preset]
        const prmPreset = presets[this.preset]
        Object.assign(this.layerControllerVisible, prmPreset) // 防止预设参数与默认参数不一致导致报错,如果没有按照您的配置发生改变,请检查拼写是否正确
        if (prmPreset === 'undefined') {
          console.log('该图层控制面板的预设没有找到,请检查预设名称是否正确!')
        } else {
          this.$store.commit('updateLayerControllerVisible', this.layerControllerVisible);
          this.$store.commit('updateLayerControllerVisible', this.layerControllerVisible)
        }
      }
    },
@@ -93,7 +87,7 @@
      } else {
        this.height = '0px'
      }
    },
    }
  }
}
</script>
@@ -108,13 +102,16 @@
  height: auto;
  font-size: 11px;
  z-index: 1000;
  div{
    color:#90c8e0;
  }
  #panelInnerContent{
    overflow: hidden;
    transition: all 0.5s linear;
  }
  .title-border{
    width: 100%;
    height: 28px;
@@ -123,6 +120,7 @@
    clip-path: polygon(0px 0px, 0px 28px, 230px 28px, 230px 9px, 95px 9px, 86px 0px);
    position: relative;
  }
  .title-border:before {
    content: "";
    display: block;
@@ -133,6 +131,7 @@
    left: 0;
    background-color: #38c8ef;
  }
  .title-border:after {
    content: "";
    display: block;
@@ -145,6 +144,7 @@
    -webkit-clip-path: polygon(0px 0px, 0px 1px, 5px 1px, 5px 6px, 6px 6px, 6px 0px);
    clip-path: polygon(0px 0px, 0px 1px, 5px 1px, 5px 6px, 6px 6px, 6px 0px);
  }
  .title-text-border {
    width: 100%;
    height: 28px;
@@ -152,6 +152,7 @@
    -webkit-clip-path: polygon(1px 1px, 1px 27px, 229px 27px, 229px 10px, 94px 10px, 85px 1px);
    clip-path: polygon(1px 1px, 1px 27px, 229px 27px, 229px 10px, 94px 10px, 85px 1px);
  }
  .title-icon{
    float: left;
    width: 22px;
@@ -160,6 +161,7 @@
    margin-left: 2px;
    background-image: url(/assets/images/map-pages/icon/setting.png);
  }
  .title-text{
    float: left;
    width: 150px;
@@ -172,6 +174,7 @@
    filter: brightness(100%);
    text-shadow: 0 0 5px #00d0f9, 0 0 0 #00d0f9, 0 0 0 #00d0f9, 0 0 0 #0258c5, 0 0 0 #0258c5, 0 0 2px #0258c5, 0 0 5px #0258c5, 0 0 15px #0258c5;
  }
  .title-line{
    display: inline-block;
    width: 120px;
@@ -182,6 +185,7 @@
    line-height: 5px;
    vertical-align: middle;
  }
  .title-point{
    display: inline-block;
    width: 5px;
@@ -191,11 +195,13 @@
    line-height: 5px;
    vertical-align: middle;
  }
  .title-button{
    float: right;
    width: 28px;
    height: 28px;
    cursor: pointer;
    :hover{
      font-weight: bold;
      color: white;
@@ -221,11 +227,13 @@
    transform-origin: 50% 50%;
    transition: transform 0.5s linear 0s;
  }
  .switch-head-down{
    transform: rotateX(180deg);
    transform-origin: 50% 50%;
    transition: transform 0.5s linear 0s;
  }
  select{
    background: transparent;
    margin: 6px;
@@ -234,36 +242,43 @@
    color: #569EB7;
    padding: 0 16px;
  }
  .horn{
    width: 6px;
    height: 6px;
    float: left;
    position: absolute;
  }
  .horn-tl{
    background-image: url(/assets/images/map-pages/cosmetics/horn_tl.png) center center no-repeat;
    left: -1px;
    top: -1px;
  }
  .horn-tr{
    background-image: url(/assets/images/map-pages/cosmetics/horn_tr.png) center center no-repeat;
    right: -1px;
    top: -1px;
  }
  .horn-bl{
    background-image: url(/assets/images/map-pages/cosmetics/horn_bl.png) center center no-repeat;
    left: -1px;
    bottom: -1px;
  }
  .horn-br{
    background-image: url(/assets/images/map-pages/cosmetics/horn_br.png) center center no-repeat;
    right: -1px;
    bottom: -1px;
  }
  ::-webkit-scrollbar{
    width: 7px;
    height: 5px !important;
  }
  ::-webkit-scrollbar-thumb {
    /*滚动条里面小方块*/
    border-radius: 10px;
@@ -271,6 +286,7 @@
    background   : #0661AE;
    border: 1px solid transparent;
  }
  ::-webkit-scrollbar-track {
    /*滚动条里面轨道*/
    // box-shadow   : inset 0 0 5px rgba(0, 0, 0, 0.2);
src/components/LayerController/LayerControllerAPI.js
File was deleted
src/components/LayerController/layerControllerPresets.js
@@ -1,22 +1,22 @@
/**
 * 大图图层控制面板的显示预设
 */
let bigmapPreset = { // 图层控制面板的显示状态››
    layerController: true, // 爸爸栏目:是否显示图层控制面板
const bigmapPreset = { // 图层控制面板的显示状态››
  layerController: true // 爸爸栏目:是否显示图层控制面板
}
/**
 * 综合报警图层控制面板的显示预设
 */
let warningPreset = { // 图层控制面板的显示状态››
    layerController: true, // 爸爸栏目:是否显示图层控制面板
const warningPreset = { // 图层控制面板的显示状态››
  layerController: true // 爸爸栏目:是否显示图层控制面板
}
/**
 * 综合报警图层控制面板的显示预设
 */
let vehicleWarningPreset = { // 图层控制面板的显示状态››
    layerController: true, // 爸爸栏目:是否显示图层控制面板
const vehicleWarningPreset = { // 图层控制面板的显示状态››
  layerController: true // 爸爸栏目:是否显示图层控制面板
}
export default {
src/components/LayerController/modules/LcBaseMap.vue
@@ -1,13 +1,15 @@
<template>
  <div class="inner-panel">
  <div class="inner-panel" v-show="isShow">
    <div v-for="item in basemapList" :key="item.code" class="basemap-layer-item">
      <el-checkbox style="position: absolute;" name="basemap" v-model="selectedBasemap"   :value="item.code" label="item.code" @change="changeBasemap">标注</el-checkbox>
<!--      <el-popover-->
<!--          placement="top-start"-->
<!--          trigger="hover"-->
<!--          content="item.name">-->
      <img :src="item.conf.icon_actived" width="50" height="50" :title="item.name" @click="changeBasemap"/>
<!--      </el-popover>-->
      <div style="display: flex;">
        <el-checkbox :src="item.conf.icon_actived" style="display: flex;" name="basemap" v-model="selectedBasemap"
                     :value="item.code" label="item.code" @change="changeBasemap">标注
        </el-checkbox>
        <img style="position: absolute;" :src="item.conf.icon_actived" width="50" height="50" :title="item.name"
             @click="changeBasemap"/>
      </div>
<!--      <input  style="position: absolute;" type="radio" name="basemap" v-model="selectedBasemap" :value="item.code" title="显示标注" @change="changeBasemap"/>标注-->
    </div>
@@ -20,6 +22,7 @@
  components: {},
  data() {
    return {
      isShow: true,
      basemapList: [],
      selectedBasemap: "tianditu_img",
    };
@@ -32,6 +35,9 @@
  mounted() {
  },
  methods: {
    toggleShow() {
      this.isShow = !this.isShow
    },
    updateBasemapList() {
      let list = this.basemapHelper.getBasemapList();
      this.basemapList = list;
@@ -39,8 +45,14 @@
    changeBasemap() {
      this.basemapHelper.showBasemap(this.selectedBasemap, true)
    },
  },
  watch: {
    basemapHelper(newVal) {
      if (newVal != null) {
        this.updateBasemapList();
  }
    },
  },
};
</script>
@@ -50,6 +62,7 @@
  justify-content: center;
  align-items: center;
}
.basemap-layer-item {
  display: flex;
  width: 50px;
@@ -62,6 +75,7 @@
    left: 0px;
    top: -53px;
  }
  .basemap-layer-item-name {
    position: relative;
    left: 0px;
src/components/LayerController/modules/LcServiceLayer.vue
@@ -11,7 +11,8 @@
        <div class="wms-panel">
            <div v-for="item in serviceWmsLayerList" :key="item.code" class="layerbox">
                <div><input type="checkbox" :name="'wmsLayer_'+item.code" :checked="item.checked" :value="item.code"
                            @change="swAllLayers(item)"/>{{item.name}} <span @click="swFilter(item)" class="btn-filter">过滤</span>
                    @change="swAllLayers(item)"/>{{ item.name }} <span @click="swFilter(item)"
                                                                       class="btn-filter">过滤</span>
                </div>
                <div class="layerbox-item">
                    <div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"><input type="checkbox"
src/components/helpers/BasemapHelper.js
@@ -1,5 +1,6 @@
/* eslint-disable no-debugger */
import AjaxUtils from '@/utils/AjaxUtils'
/**
 * 底图管理助手,负责底图创建及开关
 */
@@ -19,7 +20,7 @@
     */
    initBasemap = (mapConfig, isIntranet) => {
        if(isIntranet) { // 内网
            this._getToken(mapConfig); // 获取token后,并按配置加载地图
        this._getToken(mapConfig) // 获取token后,并按配置加载地图
        }else { // 外网
            this._createBasemapByConfig(mapConfig)
        }
@@ -50,7 +51,7 @@
     * @param isHideOthers 是否先关闭其他图层,默认是true
     */
    showBasemap = (code, isHideOthers = true) => {
        let basemap = this.basemapMap.get(code)
      const basemap = this.basemapMap.get(code)
        if(isHideOthers) {
            for(let i = 0, len = this.basemapList.length; i < len; ++i){
                this.map.removeLayer(this.basemapList[i].layer)
@@ -66,20 +67,20 @@
     * @param layer 待关闭图层引用
     */
    hideBasemap = (code) => {
        let basemap = this.basemapMap.get(code)
      const basemap = this.basemapMap.get(code)
        this.map.removeLayer(basemap.layer)
        this.map.removeLayer(basemap.annotation)
    }
    // 公网创建地图部分
    _createBasemapByConfig(mapConfig){
        let internetBasemaps = mapConfig.mapConfig.InternetBaseMaps
      const internetBasemaps = mapConfig.mapConfig.InternetBaseMaps
        for(let i = 0, len = internetBasemaps.length; i < len; ++i) {
            let basemapConfig = internetBasemaps[i]
            let basemapLayer = this.L.tileLayer(basemapConfig.map.url, basemapConfig.map.option)
            let basemapAnnotationLayer = this.L.tileLayer(basemapConfig.annotation.url, basemapConfig.annotation.option)
        const basemapConfig = internetBasemaps[i]
        const basemapLayer = this.L.tileLayer(basemapConfig.map.url, basemapConfig.map.option)
        const basemapAnnotationLayer = this.L.tileLayer(basemapConfig.annotation.url, basemapConfig.annotation.option)
            let basemap = {
        const basemap = {
                code: basemapConfig.code,
                name: basemapConfig.name,
                conf: basemapConfig,
@@ -87,7 +88,7 @@
                annotation: basemapAnnotationLayer
            }
         
            this.basemapList.push(basemap);
        this.basemapList.push(basemap)
            this.basemapMap.set(basemapConfig.code, basemap)
            if(typeof basemapConfig.isAddToMap !== 'undefined' && basemapConfig.isAddToMap) {
                this.basemapLayerGroup.addLayer(basemapLayer)
@@ -99,7 +100,7 @@
    // 内网地图创建部分
    // 获取内网地图token,并加载到地图中
    _getToken = (mapConfig) => {
        let params = mapConfig.TokenConfig
      const params = mapConfig.TokenConfig
        AjaxUtils.GetDataAsynByUrl(params.url, params.option, (token) => {
            this._showTDT(token, mapConfig)
        })
@@ -107,13 +108,13 @@
    // 内网地图加载,并加载到地图
    _showTDT = (token, mapConfig) => {
        let intranetBasemaps = mapConfig.mapConfig.IntranetBaseMaps
      const intranetBasemaps = mapConfig.mapConfig.IntranetBaseMaps
        for(let i = 0, len = intranetBasemaps.length; i < len; ++i) {
            let basemapConfig = intranetBasemaps[i]
            let basemapLayer = this.L.tileLayer(basemapConfig.map.url, basemapConfig.map.option)
            let basemapAnnotationLayer = this.L.tileLayer(basemapConfig.annotation.url, basemapConfig.annotation.option)
        const basemapConfig = intranetBasemaps[i]
        const basemapLayer = this.L.tileLayer(basemapConfig.map.url, basemapConfig.map.option)
        const basemapAnnotationLayer = this.L.tileLayer(basemapConfig.annotation.url, basemapConfig.annotation.option)
            let basemap = {
        const basemap = {
                code: basemapConfig.code,
                name: basemapConfig.name,
                conf: basemapConfig,
@@ -121,7 +122,7 @@
                annotation: basemapAnnotationLayer
            }
         
            this.basemapList.push(basemap);
        this.basemapList.push(basemap)
            this.basemapMap.set(basemapConfig.code, basemap)
            if(typeof basemapConfig.isAddToMap !== 'undefined' && basemapConfig.isAddToMap) {
                this.basemapLayerGroup.addLayer(basemapLayer)
src/components/helpers/ServiceLayerHelper.js
@@ -35,7 +35,7 @@
    _loadLayers(mapConfig, isAddToMap = true) {
        console.debug('ServiceLayerHelper加载参数:', mapConfig)
        for (let i = 0, len = mapConfig.mapConfig.ServiceLayers.length; i < len; ++i) {
            let opt = mapConfig.mapConfig.ServiceLayers[i]
      const opt = mapConfig.mapConfig.ServiceLayers[i]
            if (opt.type === 'wmts') {
                this.loadWmtsLayer(opt, isAddToMap, mapConfig.mapConfig.ServiceLayers[i])
            } else if (opt.type === 'wms') {
@@ -52,7 +52,7 @@
     * @param {*} isAddToMap
     */
    loadWmtsLayer(options, isAddToMap = true, config) {
        const layer = this.L.tileLayer(options.url, options.option);
    const layer = this.L.tileLayer(options.url, options.option)
        layer.config = config
        if (isAddToMap) {
@@ -68,7 +68,7 @@
     * @param {*} isAddToMap
     */
    loadWmsLayer(options, isAddToMap = true, config) {
        const layer = this.L.tileLayer.wms(options.url, options.option);
    const layer = this.L.tileLayer.wms(options.url, options.option)
        layer.config = config
        if (isAddToMap) {
@@ -86,13 +86,13 @@
    loadTileLayer(options, isAddToMap = true, config) {
        const layer = this.L.tileLayer(options.url, {
            layers: options.layers || 'all',//country
            format: options.format || "image/png",
      format: options.format || 'image/png',
            transparent: options.true || true,
            crs: options.crs || L.CRS.EPSG4326,
            maxZoom: options.maxZoom || 21,
            minZoom: options.minZoom || 1,
            zoomOffset: options.zoomOffset || 0
        });
    })
        layer.config = config
        if (isAddToMap) {
@@ -108,7 +108,7 @@
     */
    hideTileLayer(code) {
        if (this.tileLayersMap) {
            let tileLayer = this.tileLayersMap.get(code)
      const tileLayer = this.tileLayersMap.get(code)
            this.map.removeLayer(tileLayer)
        }
    }
@@ -119,7 +119,7 @@
     */
    showTileLayer(code) {
        if (this.tileLayersMap) {
            let tileLayer = this.tileLayersMap.get(code)
      const tileLayer = this.tileLayersMap.get(code)
            this.map.addLayer(tileLayer)
        }
    }
@@ -150,7 +150,7 @@
     * @param {} code wms服务配置的code
     */
    getWMSConfig(code) {
        let mc = this.mapConfig
    const mc = this.mapConfig
        for (let i = 0, len = mc.mapConfig.ServiceLayers.length; i < len; ++i) {
            if (code == mc.mapConfig.ServiceLayers[i].code && mc.mapConfig.ServiceLayers[i].type === 'wms') {
                return mc.mapConfig.ServiceLayers[i]
src/components/helpers/VectorLayerHelper.js
@@ -39,7 +39,7 @@
     * @param name  图层名称
     */
    this.showVectorLayer = (code) => {
        let layer = this.vectorLayerMap.get(code)
    const layer = this.vectorLayerMap.get(code)
        this.map.addLayer(layer)
    }
@@ -48,7 +48,7 @@
     * @param name  图层名称
     */
    this.hideVectorLayer = (code) => {
        let layer = this.vectorLayerMap.get(code)
    const layer = this.vectorLayerMap.get(code)
        this.map.removeLayer(layer)
    }
}
src/components/helpers/WmsHelper.js
src/components/mapmodules/CommonLayerLoad.js
@@ -4,7 +4,9 @@
import L from 'leaflet'
import MapConfig from '@/conf/MapConfig'
const tokenStr = 'tk=' + 'f1b72b5e7cb1175acddfa485f1bc9770' + '&'
class CommonLayerLoad {
    // 中国蓝色覆盖层
    loadBlueMap() {
@@ -15,6 +17,7 @@
        })
    }
    // 道路路
    loadNormalMap() {
        return L.tileLayer('http://t0.tianditu.gov.cn/vec_c/wmts?' + tokenStr +
@@ -24,6 +27,7 @@
            zoomOffset: 1
        })
    }
    // 道路标注
    loadNormalMapa() {
        return L.tileLayer('http://t0.tianditu.gov.cn/cva_c/wmts?' + tokenStr +
@@ -34,6 +38,7 @@
        })
    }
    // 影像图
    loadImgMapm() {
        return L.tileLayer('http://t0.tianditu.gov.cn/img_c/wmts?' + tokenStr +
@@ -43,6 +48,7 @@
            zoomOffset: 1
        })
    }
    // 影像标注
    loadImgMapa() {
        return L.tileLayer('http://t0.tianditu.gov.cn/cia_c/wmts?' + tokenStr +
@@ -52,6 +58,7 @@
            zoomOffset: 1
        })
    }
    // 中石化内网影像图
    loadIntranetImgMap(token) {
        return L.tileLayer('http://10.246.132.249:8080/OneMapServer/rest/services/base-tdt-image-globe/WMTS?token=' + token + '&' +
@@ -61,6 +68,7 @@
            zoomOffset: 1
        })
    }
    // 中石化内网影像图标注
    loadIntranetImgMapCia(token) {
        return L.tileLayer('http://10.246.132.249:8080/OneMapServer/rest/services/base-tdt-label-image/WMTS?token=' + token + '&' +
@@ -71,4 +79,5 @@
        })
    }
}
export default CommonLayerLoad
src/components/mapmodules/SafetyIndexBar.js
@@ -1,7 +1,7 @@
import echarts from 'echarts'
function drawSafetyBar(carDataArray, shipDataArray, plateDataArray) {
    let myChart = echarts.init(document.getElementById('safetyBarIndex'))
  const myChart = echarts.init(document.getElementById('safetyBarIndex'))
    myChart.setOption({
        color: ['#3398DB'],
        tooltip: {
@@ -112,7 +112,9 @@
            }
        ]
    })
    window.addEventListener('resize', () => { myChart.resize() })
  window.addEventListener('resize', () => {
    myChart.resize()
  })
}
export default {
src/components/mapmodules/SafetyIndexLine.js
@@ -2,11 +2,11 @@
import dayjs from 'dayjs'
function drawSafetyLine() {
    let myChart = echarts.init(document.getElementById('safetyIndex'))
    let yyyy = dayjs().format('YYYY') + '-'
    let resDate = ['07-10', '07-11', '07-12', '07-13', '07-14', '07-15', '07-16']
    let resValue = [35, 20, 10, 20, 40, 30, 10]
    let safetyStandardValue = 20
  const myChart = echarts.init(document.getElementById('safetyIndex'))
  const yyyy = dayjs().format('YYYY') + '-'
  const resDate = ['07-10', '07-11', '07-12', '07-13', '07-14', '07-15', '07-16']
  const resValue = [35, 20, 10, 20, 40, 30, 10]
  const safetyStandardValue = 20
    myChart.setOption({
        tooltip: {
            trigger: 'axis',
@@ -99,7 +99,9 @@
            }
        ]
    })
    window.addEventListener('resize', () => { myChart.resize() })
  window.addEventListener('resize', () => {
    myChart.resize()
  })
}
export default {
src/components/mapmodules/SafetyIndexPie.js
@@ -1,24 +1,26 @@
import echarts from 'echarts'
function drawSafetyPie(options) {
    let id = options.id
  const id = options.id
    // var title = options.title
    let series = options.series
    let legend = getLegend(series)
  const legend = getLegend(series)
    series = setSeriesLabel(series)
    let myChart = echarts.init(document.getElementById(id))
  const myChart = echarts.init(document.getElementById(id))
    console.log(series)
    console.log(legend)
    // 指定图表的配置项和数据
    myChart.setOption({
        series: series
    })
    window.addEventListener('resize', () => { myChart.resize() })
  window.addEventListener('resize', () => {
    myChart.resize()
  })
}
function setSeriesLabel(series) {
    for (var i = 0; i < series.length; i++) {
        series[i]['label'] = {
    series[i].label = {
            position: 'inside',
            formatter: '{d}%',
            color: '#090607'
@@ -37,6 +39,7 @@
    }
    return legend
}
export default {
    drawSafetyPie
}
src/components/panel/MonitorHZ.vue
src/components/panel/MonitorPanel.vue
@@ -223,7 +223,7 @@
  },
  watch: {
    currentCorpType: async function (val) {
      let params = {
      const params = {
        transNo: '',
        carrierName: '',
        transMode: '',
@@ -235,13 +235,13 @@
        size: 10,
        current: 1
      }
      let datas = await this.handleGetDatas(params)
      const datas = await this.handleGetDatas(params)
      console.log(datas)
      // this.list = datas.data.records
      // this.total = datas.data.total
    },
    currentCorp: async function (val) {
      let params = {
      const params = {
        transNo: '',
        carrierName: '',
        transMode: '',
@@ -253,7 +253,7 @@
        size: 10,
        current: 1
      }
      let datas = await this.handleGetDatas(params)
      const datas = await this.handleGetDatas(params)
      console.log(datas)
      // this.list = datas.data.records
      // this.total = datas.data.total
@@ -273,7 +273,7 @@
    },
    async handlePage(page) {
      console.log(page)
      let params = {
      const params = {
        transNo: '',
        carrierName: '',
        transMode: '',
@@ -285,7 +285,7 @@
        size: this.pageSize,
        current: page
      }
      let datas = await this.handleGetDatas(params)
      const datas = await this.handleGetDatas(params)
      console.log(datas)
      // this.list = datas.data.records
      // this.total = datas.data.total
@@ -294,34 +294,34 @@
      window.vectorLayerHelper.vectorLayerMap.cheliang.showGeometryByXY(item.transNo, item.vehicleNo, item.lng, item.lat)
    },
    toggleMonitorPanel() {
      let el = $('.btn-stretch')
      const el = $('.btn-stretch')
      // let cs = 'btn-stretch-active'
      var rightControl = $('#right-panel')
      let right = rightControl.css('right')
      const right = rightControl.css('right')
      if (right === '10px') {
        rightControl.animate({
          right: '-290px'
        })
        el.css({
          'transform': 'rotateY(180deg)',
          transform: 'rotateY(180deg)',
          'transform-origin': '50% 50%',
          'transition': 'transform 1s linear'
          transition: 'transform 1s linear'
        })
      } else {
        rightControl.animate({
          right: '10px'
        })
        el.css({
          'transform': 'rotateY(0deg)',
          transform: 'rotateY(0deg)',
          'transform-origin': '50% 50%',
          'transition': 'transform 1s linear'
          transition: 'transform 1s linear'
        })
      }
    },
    async handleSearch() {
      // this.list = wayBillData.data
      // this.total = wayBillData.data.length
      let params = {
      const params = {
        transNo: this.form.transNo,
        carrierName: this.form.carrierName,
        transMode: this.form.transMode,
@@ -332,7 +332,7 @@
        size: this.pageSize,
        current: this.current
      }
      let datas = await this.handleGetDatas(params)
      const datas = await this.handleGetDatas(params)
      console.log(datas)
      // this.list = datas.data.pager.records
      // this.total = datas.data.pager.total
@@ -340,7 +340,7 @@
    async handleInit() {
      // this.list = wayBillData.data
      // this.total = wayBillData.data.length
      let params = {
      const params = {
        transNo: '',
        carrierName: '',
        transMode: '',
@@ -352,32 +352,32 @@
        size: 10,
        current: 1
      }
      let datas = await this.handleGetDatas(params)
      const datas = await this.handleGetDatas(params)
      console.log(datas)
      // this.list = datas.data.records
      // this.total = datas.data.total
    },
    async handleSetOrgCodeStrings() {
      let orgCodes = await this.handleGetOrgCode()
      const orgCodes = await this.handleGetOrgCode()
      let orgCodesString = ''
      for (let i = 0; i < orgCodes.data.length; i++) {
        let org = orgCodes.data[i]
        const org = orgCodes.data[i]
        orgCodesString += org.orgCode + ','
      }
      this.orgCodeStrings = orgCodesString.substring(0, orgCodesString.length - 1)
    },
    async handleGetOrgCode() {
      let params = {
      const params = {
        orgSector: this.currentCorpType,
        serviceType: ''
      }
      let datas = await mapApi.getOrganizationompanyList(params)
      const datas = await mapApi.getOrganizationompanyList(params)
      return datas
    },
    async handleGetDatas(params) {
      // let datas = await mapApi.getTransOrderlist(params)
      let datas = params
      const datas = params
      return datas
    },
    showHZ() {
@@ -524,12 +524,12 @@
    width: 16px;
    height: 22px;
    display: block;
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat 0 -90px;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat 0 -90px;
    cursor: pointer;
  }
  .B-TMD-table-list-title-y-car {
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat -45px 0;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat -45px 0;
    width: 38px;
    height: 38px;
    display: block;
@@ -537,7 +537,7 @@
  }
  .B-TMD-table-list-title-y-car-offline {
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat -90px 0;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat -90px 0;
    width: 38px;
    height: 38px;
    display: block;
@@ -545,7 +545,7 @@
  }
  .B-TMD-table-list-title-y-car-warning {
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat 0 0;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat 0 0;
    width: 38px;
    height: 38px;
    display: block;
@@ -555,7 +555,7 @@
  .btn-stretch {
    width: 20px;
    height: 28px;
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat -408px 0;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat -408px 0;
    margin-left: 10px;
    margin-top: 3px;
    cursor: pointer;
@@ -566,7 +566,7 @@
  }
  .btn-stretch-active {
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat -440px 0;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat -440px 0;
  }
  .panel-tab {
@@ -577,7 +577,7 @@
    width: 40px;
    z-index: 500;
    background-color: #030D2E;
    background: url('/assets/images/map-pages/icon/caidan.png') no-repeat;
    background: url('../../assets/images/map-pages/icon/caidan.png') no-repeat;
  }
  .B-TMT-tab-div {
@@ -598,7 +598,7 @@
    height: 29px !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat -320px 0;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat -320px 0;
  }
  .B-TMT-tab-route {
@@ -606,7 +606,7 @@
    height: 19px;
    margin-left: 5px;
    margin-top: 6px;
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat -169px 0;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat -169px 0;
  }
  .B-TMT-tab-waybill-isActive, .B-TMT-tab-waybill:hover {
@@ -614,7 +614,7 @@
    height: 29px !important;
    margin-top: 0 !important;
    margin-left: -1px !important;
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat -361px 0 !important;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat -361px 0 !important;
  }
  .B-TMT-tab-route-isActive, .B-TMT-tab-route:hover {
@@ -622,7 +622,7 @@
    height: 29px !important;
    margin-top: 0 !important;
    margin-left: -1px !important;
    background: url('/assets/images/map-pages/icon/icon.png') no-repeat -197px 0 !important;
    background: url('../../assets/images/map-pages/icon/icon.png') no-repeat -197px 0 !important;
  }
  .panel-tab ul {
@@ -640,7 +640,7 @@
    top: 0;
    right: 0;
    z-index: 999;
    background: url('/assets/images/map-pages/icon/bgc.png') no-repeat;
    background: url('../../assets/images/map-pages/icon/bgc.png') no-repeat;
  }
  .panel_searchTotal {
@@ -726,7 +726,7 @@
    color: #34e0ff;
    width: 100%;
    line-height: 25px;
    background: url('/assets/images/map-pages/icon/dd.png') no-repeat;
    background: url('../../assets/images/map-pages/icon/dd.png') no-repeat;
  }
  .B-TMD-inp-button {
src/components/utils/AjaxUtils.js
File was deleted
src/components/utils/DateUtils.js
File was deleted
src/components/utils/GISUtil.js
File was deleted
src/components/utils/JsonUtils.js
File was deleted
src/components/utils/MiscUtils.js
File was deleted
src/components/utils/wfsQueryUtils.js
File was deleted
src/conf/MapConfig.js
@@ -1,9 +1,9 @@
import * as L from 'leaflet'
let curWwwPath = window.document.location.href
let pathname = window.document.location.pathname
let pos = curWwwPath.indexOf(pathname)
let HOST_URL = curWwwPath.substring(0, pos)
const curWwwPath = window.document.location.href
const pathname = window.document.location.pathname
const pos = curWwwPath.indexOf(pathname)
const HOST_URL = curWwwPath.substring(0, pos)
// basemap主机配置
const SINOPEC_GIS_HOST = 'http://10.246.132.249:8080'  // 内网天地图主机地址
@@ -73,7 +73,7 @@
                    minZoom: 1,
                    zoomOffset: 1
                }
            },
      }
        },
        {
            code: 'sinopec_vec',
@@ -147,7 +147,7 @@
                    minZoom: 1,
                    zoomOffset: 1
                }
            },
      }
        },
        {
            code: 'tianditu_vec',
@@ -300,7 +300,7 @@
                    sname:'区域信息',
                    checked: true, // 默认选中状态
                    filter:{}
                },
        }
            ],
            filtersGroup:[
                {
@@ -363,7 +363,7 @@
                            sname:'弯头',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
            }
                    ]
                },
                {
@@ -419,7 +419,7 @@
                            sname:'隔油池',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
            }
                    ]
                },
                {
src/main.js
@@ -18,12 +18,12 @@
echarts.registerTheme('dark', echartsDarkTheme)
// 开发环境下加载假数据
if (process.env.NODE_ENV === 'development') {
  console.log('当前处于开发模式!')
if (process.env.VUE_APP_MOCK && process.env.NODE_ENV === 'development') {
  console.warn('当前处于mock数据请求!')
  require('./mock')
}
window.vm = new Vue({
  router,
  store,
  render: h => h(App),
  render: h => h(App)
}).$mount('#app')
src/router/routes.js
@@ -9,9 +9,9 @@
 * }
 */
// 默认跳转路由
import App from "../App";
import PipeLineIndex from "../views/baseInfoMgr/pipeline/PipeLineIndex";
import MapTemplate from "../views/MapTemplate";
import App from '../App'
import PipeLineIndex from '../views/baseInfoMgr/pipeline/PipeLineIndex'
import MapTemplate from '../views/MapTemplate'
// 应用业务相关路由,挂载menu上的page
export const routes = [{
src/store/modules/app.js
@@ -19,9 +19,7 @@
        //set方法
        setDemoValue(state,demoValue){
            state.demoValue = demoValue
        }
    }
src/store/modules/map.js
@@ -9,7 +9,7 @@
    serviceLayerHelper: {}, // 服务图层控制器实现助手程序
    vectoryLayerHelper: {}, // 动态图层控制器实现助手程序
    layerControllerVisible: { // 图层控制面板的显示状态››
        layerController: true, // 爸爸栏目:是否显示图层控制面板
    layerController: true // 爸爸栏目:是否显示图层控制面板
    },
    showServiceLayerFilter: false, // Service图层过滤器
    selectedServiceLayer: '', // 使用过滤器时,被打开的WMS服务的CODE
src/utils/AjaxUtils.js
@@ -14,11 +14,9 @@
        data: pData,
        async: true,
        success: function(datas, nnn) {
            console.log(nnn)
            pBackFun(datas)
        },
        error: function(err, nnnn) {
            console.log(nnnn)
            console.error('数据获取失败', err, pUrl)
        }
    })
@@ -38,11 +36,9 @@
        data: pData,
        async: true,
        success: function(datas, nnn) {
            console.log(nnn)
            pBackFun(datas)
        },
        error: function(err, nnnn) {
            console.log(nnnn)
            console.error('数据获取失败', err, pUrl)
        }
    })
@@ -56,11 +52,9 @@
        timeout: 600000,
        async: true,
        success: function(datas, nnn) {
            console.log(nnn)
            pBackFun(datas)
        },
        error: function(e, nnnn) {
            console.log(e,nnnn)
            console.error('数据获取失败', pUrl)
        }
    })
@@ -73,11 +67,9 @@
        timeout: 600000,
        async: true,
        success: function(datas, nnn) {
            console.log(nnn)
            pBackFun(datas)
        },
        error: function(e, nnnn) {
            console.log(e,nnnn)
            console.error('数据获取失败', pUrl)
        }
    })
@@ -90,11 +82,9 @@
        data: pData,
        timeout: 600000,
        success: function(datas, nnn) {
            console.log(nnn)
            pBackFun(datas)
        },
        error: function(e, nnnn) {
            console.log(nnnn)
            // tmpErrJSONTextParse(e, pBackFun) // todo SGIS Server有个WFS图层服务json解析错误, 这里是暂时处理,等过几天黎耀修改好了,这里需要修改回去。
            console.log('返回的错误信息:', e)
            console.error('数据获取失败', pUrl)
src/utils/DateUtils.js
@@ -15,7 +15,7 @@
        'S+': date.getSeconds().toString() // 秒
        // 有其他格式化字符需求可以继续添加,必须转化成字符串
    }
    for (let k in opt) {
  for (const k in opt) {
        ret = new RegExp('(' + k + ')').exec(fmt)
        if (ret) {
            fmt = fmt.replace(ret[1], (ret[1].length === 1) ? (opt[k]) : (opt[k].padStart(ret[1].length, '0')))
src/utils/GISUtil.js
@@ -18,27 +18,27 @@
        var sqrtMagic = Math.sqrt(magic)
        dLat = (dLat * 180.0) / ((a * (1 - ee)) / (magic * sqrtMagic) * this.PI)
        dLon = (dLon * 180.0) / (a / sqrtMagic * Math.cos(radLat) * this.PI)
        return { 'lat': dLat, 'lon': dLon }
    return { lat: dLat, lon: dLon }
    },
    // WGS-84 to GCJ-02
    gcj_encrypt: function(wgsLat, wgsLon) {
        if (this.outOfChina(wgsLat, wgsLon)) { return { 'lat': wgsLat, 'lon': wgsLon } }
    if (this.outOfChina(wgsLat, wgsLon)) { return { lat: wgsLat, lon: wgsLon } }
        var d = this.delta(wgsLat, wgsLon)
        return { 'lat': wgsLat + d.lat, 'lon': wgsLon + d.lon }
    return { lat: wgsLat + d.lat, lon: wgsLon + d.lon }
    },
    // GCJ-02 to WGS-84
    gcj_decrypt: function(gcjLat, gcjLon) {
        if (this.outOfChina(gcjLat, gcjLon)) { return { 'lat': gcjLat, 'lon': gcjLon } }
    if (this.outOfChina(gcjLat, gcjLon)) { return { lat: gcjLat, lon: gcjLon } }
        var d = this.delta(gcjLat, gcjLon)
        return { 'lat': gcjLat - d.lat, 'lon': gcjLon - d.lon }
    return { lat: gcjLat - d.lat, lon: gcjLon - d.lon }
    },
    // GCJ-02 to WGS-84 exactly
    gcj_decrypt_exact: function(gcjLat, gcjLon) {
        let initDelta = 0.01
        let threshold = 0.000000001
    const initDelta = 0.01
    const threshold = 0.000000001
        let dLat = initDelta
        let dLon = initDelta
        let mLat = gcjLat - dLat
@@ -62,35 +62,35 @@
            if (++i > 10000) break
        }
        // console.log(i);
        return { 'lat': wgsLat, 'lon': wgsLon }
    return { lat: wgsLat, lon: wgsLon }
    },
    // GCJ-02 to BD-09
    bd_encrypt: function(gcjLat, gcjLon) {
        let x = gcjLon
        let y = gcjLat
        let z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * this.x_pi)
        let theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * this.x_pi)
        let bdLon = z * Math.cos(theta) + 0.0065
        let bdLat = z * Math.sin(theta) + 0.006
        return { 'lat': bdLat, 'lon': bdLon }
    const x = gcjLon
    const y = gcjLat
    const z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * this.x_pi)
    const theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * this.x_pi)
    const bdLon = z * Math.cos(theta) + 0.0065
    const bdLat = z * Math.sin(theta) + 0.006
    return { lat: bdLat, lon: bdLon }
    },
    // BD-09 to GCJ-02
    bd_decrypt: function(bdLat, bdLon) {
        let x = bdLon - 0.0065
        let y = bdLat - 0.006
        let z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * this.x_pi)
        let theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * this.x_pi)
        let gcjLon = z * Math.cos(theta)
        let gcjLat = z * Math.sin(theta)
        return { 'lat': gcjLat, 'lon': gcjLon }
    const x = bdLon - 0.0065
    const y = bdLat - 0.006
    const z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * this.x_pi)
    const theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * this.x_pi)
    const gcjLon = z * Math.cos(theta)
    const gcjLat = z * Math.sin(theta)
    return { lat: gcjLat, lon: gcjLon }
    },
    // WGS-84 to Web mercator
    // mercatorLat -> y mercatorLon -> x
    mercator_encrypt: function(wgsLat, wgsLon) {
        let x = wgsLon * 20037508.34 / 180.0
    const x = wgsLon * 20037508.34 / 180.0
        let y = Math.log(Math.tan((90.0 + wgsLat) * this.PI / 360.0)) / (this.PI / 180.0)
        y = y * 20037508.34 / 180.0
        return { 'lat': y, 'lon': x }
    return { lat: y, lon: x }
        /*
        if ((Math.abs(wgsLon) > 180 || Math.abs(wgsLat) > 90))
            return null;
@@ -106,7 +106,7 @@
        var x = mercatorLon / 20037508.34 * 180.0
        var y = mercatorLat / 20037508.34 * 180.0
        y = 180 / this.PI * (2 * Math.atan(Math.exp(y * this.PI / 180.0)) - this.PI / 2)
        return { 'lat': y, 'lon': x }
    return { lat: y, lon: x }
        /*
        if (Math.abs(mercatorLon) < 180 && Math.abs(mercatorLat) < 90)
            return null;
src/utils/JsonUtils.js
src/utils/MiscUtils.js
@@ -1,5 +1,5 @@
// 参数名称:authCode    值: 所有:0 化工销售:HXXT; 炼油销售:LXXT;  江苏石油:CPYXT;  销售华东:XSHD
let SysAuthCode = '0'
const SysAuthCode = '0'
/**
 * Created by liangruizhe on 2019/01/14
 */
src/utils/MixinAuthority.js
File was deleted
src/utils/MixinEmitter.js
File was deleted
src/utils/authorityAPI.js
File was deleted
src/utils/axios.js
File was deleted
src/utils/constant.js
File was deleted
src/utils/dictionary.js
File was deleted
src/utils/navigation.js
File was deleted
src/utils/tools.js
File was deleted
src/utils/wfsQueryUtils.js
src/views/MapTemplate.vue
@@ -3,7 +3,7 @@
        <div id="map" ref="rootmap"></div>
        <sgis-layer-controller :preset="'warningPreset'">
            <lc-basemap></lc-basemap>
            <div class="barline"></div>
      <div class="bar-line"></div>
            <lc-service-layer></lc-service-layer>
        </sgis-layer-controller>
        <lc-service-layer-filter v-show="showServiceLayerFilter" ref="serviceLayerFilter"></lc-service-layer-filter>
@@ -47,10 +47,10 @@
  },
  methods:{
    saveMapStatus(){
      this.$store.commit('setMapObj', this.mapObj);
      this.$store.commit('setBasemapHelper', this.basemapHelper);
      this.$store.commit('setServiceLayerHelper', this.serviceLayerHelper);
      this.$store.commit('setVectorLayerHelper', this.vectorLayerHelper);
      this.$store.commit('setMapObj', this.mapObj)
      this.$store.commit('setBasemapHelper', this.basemapHelper)
      this.$store.commit('setServiceLayerHelper', this.serviceLayerHelper)
      this.$store.commit('setVectorLayerHelper', this.vectorLayerHelper)
    },
      init() {
        const mapcontainer = this.$refs.rootmap
@@ -64,7 +64,6 @@
        this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.mapObj.map, this.mapObj.L) // 初始化动态要素图层助手
        this.vectorLayerHelper.initVectorLayers(this.mapConfig)
        this.saveMapStatus()
        // this.setMapObj(this.mapObj)
@@ -84,11 +83,13 @@
    margin: 0;
    padding: 0;
    position: absolute;
  #map{
    height: 100%;
    width: 100%;
  }
  .barline{
  .bar-line {
    width: 100%;
    height: 1px;
    background-color: #0661AE;