派生自 wuyushui/SewerAndRainNetwork

chenzeping
2021-04-01 4e53f9f57bac8b8a35c8099f3e31d9ff7724398c
Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop

 Conflicts:
 src/components/BaseNav/PublicBounced/GasComponents/PublicTabs.vue
2个文件已删除
8个文件已修改
2 文件已重命名
499 ■■■■ 已修改文件
src/Sgis.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/BaseNav/PublicBounced/GasComponents/ECharts.vue 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/BaseNav/PublicBounced/GasComponents/EchartsTab.vue 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/BaseNav/PublicBounced/GasComponents/PublicChart.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/BaseNav/PublicBounced/GasComponents/PublicTable.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/BaseNav/PublicBounced/GasComponents/PublicTabs.vue 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/BaseNav/PublicBounced/PublicBounced.vue 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/logic/WasteGas.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/logic/WasteWater.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/service/AnimalService.js 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/icon-btn/IconBtn.vue 221 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/panel/LegendPanel.vue 117 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/Sgis.js
@@ -49,6 +49,7 @@
 */
const initBasemapsHelper = (map) => {
  // todo 这里进行底图地图的初始化
  console.log(map)
  return new BasemapHelper({ map })
}
/**
src/components/BaseNav/PublicBounced/GasComponents/ECharts.vue
File was renamed from src/components/BaseNav/PublicBounced/GasComponents/GasECharts.vue
@@ -1,10 +1,18 @@
<template>
    <div id="Tab">
        <div class="Infomation">
            <el-tag>氮氧化物 : 29.93 标准 : 100</el-tag>
            <el-tag>二氧化硫 : 17.34 标准 : 50</el-tag>
            <el-tag>烟尘 : 6.93 标准 : 30</el-tag>
            <el-tag>废气流量 : 120343.18</el-tag>
        </div>
    <div style="width:750px;height:260px;" id="echarts" ref="main"></div>
    </div>
</template>
<script>
export default {
  name: 'GasECharts',
  name: 'ECharts',
  methods: {
    drawChart: function () {
      const myChart = this.$echarts.init(this.$refs.main)
@@ -88,7 +96,7 @@
        xAxis: {
          type: 'category',
          boundaryGap: false,
          data: ['12:00:01', '12:00:02', '12:00:03', '12:00:04', '12:00:05', '12:00:06', '12:00:07'],
          data: ['2021.01.01', '2021.01.02', '2021.01.03', '2021.01.04', '2021.01.05', '2021.01.06', '2021.01.07'],
          axisLabel: { // x轴全部显示
            rotate: 20,
            interval: 0,
@@ -174,10 +182,22 @@
</script>
<style scoped lang="less">
    .Infomation{
        margin-left: 10px;
    }
    .el-tag{
        height: 25px;
        line-height: 25px;
        margin-right: 10px;
        font-size: 10px;
        background-color: rgba(0, 255, 246, 0.14);
        color: #00d0f9;
        border: none;
    }
  #echarts{
    margin: 0;
    padding: 0;
    border: 1px solid #396d83;
    /*margin: 10px 10px 10px 10px;*/
    margin: 10px 10px 10px 10px;
  }
</style>
src/components/BaseNav/PublicBounced/GasComponents/EchartsTab.vue
File was deleted
src/components/BaseNav/PublicBounced/GasComponents/PublicChart.vue
File was renamed from src/components/BaseNav/PublicBounced/GasComponents/GasTabs.vue
@@ -5,30 +5,27 @@
        <div class="border_corner border_corner_left_bottom"></div>
        <div class="border_corner border_corner_right_bottom"></div>
        <el-tabs type="card" v-model="activeName">
            <el-tab-pane label="实试数据" name="first">
                <EchartsTab></EchartsTab>
                <GasECharts></GasECharts>
            <el-tab-pane label="实试数据" name="first"></el-tab-pane>
            <el-tab-pane label="日数据" name="second">
                <ECharts></ECharts>
            </el-tab-pane>
            <el-tab-pane label="日数据" name="second"><EchartsTab></EchartsTab><GasECharts></GasECharts></el-tab-pane>
            <el-tab-pane label="月数据" name="third"><EchartsTab></EchartsTab><GasECharts></GasECharts></el-tab-pane>
            <el-tab-pane label="人工数据" name="fourth"><EchartsTab></EchartsTab><GasECharts></GasECharts></el-tab-pane>
            <el-tab-pane label="月数据" name="third"></el-tab-pane>
            <el-tab-pane label="人工数据" name="fourth"></el-tab-pane>
        </el-tabs>
    </div>
</template>
<script>
import GasECharts from './GasECharts'
import EchartsTab from './EchartsTab'
import ECharts from './ECharts'
export default {
  name: 'GasTabs',
  name: 'PublicChart',
  components: {
    GasECharts,
    EchartsTab
    ECharts
  },
  data () {
    return {
      activeName: 'first'
      activeName: 'second'
    }
  },
  methods: {
src/components/BaseNav/PublicBounced/GasComponents/PublicTable.vue
@@ -60,7 +60,7 @@
  .main-video {
    width: 100%;
    min-height: 195px;
    min-height: 164px;
    video {
      width: 100%;
src/components/BaseNav/PublicBounced/GasComponents/PublicTabs.vue
@@ -8,6 +8,19 @@
    <div class="border_corner border_corner_right_bottom"></div>
    <div class="main">
      <div class="main-matter">
        <div v-if="value === 'feiqi'">
          <el-row type="flex" class="row-bg row-item-one" justify="space-around">
            <el-col :span="8">监测点名称:{{ setWasteGasdata.Name }}</el-col>
            <el-col :span="8">生产单位:{{ setWasteGasdata.DeptSname }}</el-col>
            <el-col :span="8">排放类型名称:{{ setWasteGasdata.MonTypeName }}</el-col>
          </el-row>
          <el-row type="flex" class="row-bg" justify="space-around">
            <el-col :span="8">排放去向:{{ setWasteGasdata.EmissDirecti }}</el-col>
            <el-col :span="8">控制级别名称:{{ setWasteGasdata.ContrLevelShowName }}</el-col>
            <el-col :span="8">内/外排口:{{ setWasteGasdata.OrOutPortName }}</el-col>
          </el-row>
        </div>
       <div v-else-if="value === 'gufei'">
        <el-row type="flex" class="row-bg row-item-one" justify="space-around">
          <el-col :span="8">监测点名称:{{ displayContentTab2.StoragePlaceName }}</el-col>
          <el-col :span="8">生产单位:{{ displayContentTab2.StoragePlaceName }}</el-col>
@@ -18,16 +31,19 @@
          <el-col :span="8">控制级别名称:{{ displayContentTab2.SurplusFloorArea }}</el-col>
          <el-col :span="8">内/外排口:{{ displayContentTab2.StorageDate }}</el-col>
        </el-row>
<!--        <el-row type="flex" class="row-bg row-item-one" justify="space-around">-->
<!--          <el-col :span="8">监测点名称:{{ displayContent.Name }}</el-col>-->
<!--          <el-col :span="8">生产单位:{{ displayContent.porltName }}</el-col>-->
<!--          <el-col :span="8">排放类型加载:{{ displayContent.MonTypeName }}</el-col>-->
<!--        </el-row>-->
<!--        <el-row type="flex" class="row-bg" justify="space-around">-->
<!--          <el-col :span="8">排放去向:{{ displayContent.EmissDirecti }}</el-col>-->
<!--          <el-col :span="8">控制级别名称:{{ displayContent.ContrLevelShowName }}</el-col>-->
<!--          <el-col :span="8">内/外排口:{{ displayContent.OrOutPortName }}</el-col>-->
<!--        </el-row>-->
       </div>
        <div v-else-if="value == 'feishui'">
          <el-row type="flex" class="row-bg row-item-one" justify="space-around">
            <el-col :span="8">监测点名称:{{ setWasteGasdata.Name }}</el-col>
            <el-col :span="8">生产单位:{{ setWasteGasdata.DeptSname }}</el-col>
            <el-col :span="8">排放类型加载:{{ setWasteGasdata.MonTypeName }}</el-col>
          </el-row>
          <el-row type="flex" class="row-bg" justify="space-around">
            <el-col :span="8">排放去向:{{ setWasteGasdata.EmissDirecti }}</el-col>
            <el-col :span="8">控制级别名称:{{ setWasteGasdata.ContrLevelShowName }}</el-col>
            <el-col :span="8">内/外排口:{{ setWasteGasdata.OrOutPortName }}</el-col>
          </el-row>
        </div>
      </div>
    </div>
  </div>
@@ -36,7 +52,7 @@
<script>
export default {
  name: 'GasTable',
  props: ['displayContentTab'],
  props: ['displayContentTab', 'value', 'setWasteGasdata'],
  data () {
    return {
      displayContentTab2: []
@@ -46,6 +62,7 @@
    this.$nextTick(() => {
      this.displayContentTab.forEach(item => {
        this.displayContentTab2 = item
        console.log(item)
      })
    })
  }
src/components/BaseNav/PublicBounced/PublicBounced.vue
@@ -6,14 +6,14 @@
    </div>
    <div class="public-bounced-content">
      <div class="public-bounced-content-left">
        <GasTab :displayContentTab="displayContentTab"></GasTab>
        <PublicTabs :displayContentTab="displayContentTab" :value="value" :setWasteGasdata="setWasteGasdata"></PublicTabs>
        <div class="public-bounced-content-left-bottom">
          <PublicTable v-if="value === 'gufei'" :displayContentTable="displayContentTable"></PublicTable>
          <GasECharts v-else></GasECharts>
          <PublicTable v-if="value === 'gufei'"></PublicTable>
          <PublicChart v-else></PublicChart>
        </div>
      </div>
      <div class="public-bounced-content-right">
        <GasVideo></GasVideo>
        <PublicVideo></PublicVideo>
      </div>
    </div>
  </div>
@@ -22,26 +22,27 @@
<script>
import '@/components/BaseNav/SolidWaste/directive/dir'
import GasTab from '@components/BaseNav/PublicBounced/GasComponents/PublicTabs'
import PublicTabs from '@components/BaseNav/PublicBounced/GasComponents/PublicTabs'
import PublicTable from '@components/BaseNav/PublicBounced/GasComponents/PublicTable'
import GasECharts from '@components/BaseNav/PublicBounced/GasComponents/GasECharts'
import GasVideo from '@components/BaseNav/PublicBounced/GasComponents/PublicVideo'
// import GasTabs from './GasComponents/GasTabs'
import PublicVideo from '@components/BaseNav/PublicBounced/GasComponents/PublicVideo'
import PublicChart from './GasComponents/PublicChart'
export default {
  name: 'PublicBounced',
  components: {
    GasTab,
    PublicTabs,
    PublicTable,
    GasECharts,
    GasVideo
    PublicChart,
    PublicVideo
  },
  data () {
    return {
      setWasteGasdata: '',
      displayContentTitle: '',
      displayContentTab: '',
      displayContentTable: '',
      flag: false
      flag: false,
      value: ''
    }
  },
  methods: {
@@ -54,6 +55,12 @@
      this.flag = true
      this.value = value
    },
    setGasData (data, value) {
      this.setWasteGasdata = data
      this.displayContentTitle = data.Name
      this.flag = true
      this.value = value
    },
    closePopup () {
      this.flag = false
    }
src/components/LayerController/logic/WasteGas.js
@@ -56,7 +56,7 @@
    // const result = await mapApi.getWasteGas(dataValue)
    const PublicBounced = window.Vue.extend(publicBounced)
    const instance = new PublicBounced()
    instance.setData(e.layer.options.test)
    instance.setGasData(e.layer.options.test, 'feiqi')
    instance.$mount()
    document.body.appendChild(instance.$el)
  }
src/components/LayerController/logic/WasteWater.js
@@ -56,9 +56,10 @@
      StoragePlaceId: e.layer.options.test.StoragePlaceId
    }
    const result = await mapApi.getWasteWater(dataValue)
    // console.log(result)
    const PublicBounced = window.Vue.extend(publicBounced)
    const instance = new PublicBounced()
    instance.setData(result)
    instance.setGasData(result, 'feishui')
    instance.$mount()
    document.body.appendChild(instance.$el)
  }
src/components/LayerController/service/AnimalService.js
@@ -4,8 +4,9 @@
class AnimalService {
  constructor (config) {
    this.intervals = [] // 定时器列表
    // todo 这种情况一般用 window级的L、map还是传递呢
    this.L = config.L
    this.layer = config.layer
    this.layer = window.map
    this.times = config.times || 5
    this.colors = ['#98FB98', '#ff0000']
  }
src/components/icon-btn/IconBtn.vue
File was deleted
src/components/panel/LegendPanel.vue
@@ -2,13 +2,13 @@
  <div class="legend-panel">
    <transition name="fade">
      <div :class="'legend-content map-background'" v-show="legendControl">
        <div class="legend-content-box" v-for="(item,index) in legendContents" :key="index">
          <p><span>{{ item.title }}</span></p>
          <div :class="index === 5 ? '':'map-under-line'"></div>
        <div class="legend-content-box" v-for="(item,index) in serviceLayers" :key="index">
          <p><span>{{ item.name }}</span></p>
          <div class="map-under-line"></div>
          <ul>
            <li v-for="(ite,inde) in item.items" :key="inde">
            <li v-for="(ite,inde) in item.layers" :key="inde">
              <img :src='ite.legendImage' alt=''>
              <span>{{ ite.legendContent }}</span>
              <span>{{ ite.name }}</span>
            </li>
          </ul>
        </div>
@@ -28,111 +28,12 @@
  data () {
    return {
      // 控制图例 内容的 显示/隐藏
      legendControl: false,
      // 图里存储数据
      legendContents: [
        {
          title: '企业',
          items: [
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '中国石化'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '油田企业      '
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '炼化企业'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '销售企业'
      legendControl: false
            }
          ]
        },
        {
          title: '水情',
          items: [
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '水文站'
            }
          ]
        },
        {
          title: '管线',
          items: [
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '天然气管线'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '天然气场站'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '成品油管线'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '成品油场站'
            }
          ]
        },
        {
          title: '台风',
          items: [
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '台风实测中心'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '台风实测路径'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '台风预测中心'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '台风预测路径'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '台风当前中心'
            }
          ]
        },
        {
          title: '降水等级(单位:mm)',
          items: [
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '小雨0-5'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '中雨5-10'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '大雨10-20'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '暴雨20-50'
            },
            {
              legendImage: '../.././assets/images/map-pages/setting.png',
              legendContent: '大暴雨50-100'
            }
          ]
        }
      ]
  computed: {
    serviceLayers () {
      return this.$store.state.map.serviceLayers.LayerSewersLine
    }
  },
  methods: {