派生自 wuyushui/SewerAndRainNetwork

yangdelong
2021-05-28 3054bbce49457c82df9ad32523f3a0186e268d6f
src/components/table/components/WasteGas.vue
@@ -1,131 +1,54 @@
<template>
    <div class="Waste-water">
        <el-table
                class="tableBox"
                :data="tableData"
                :header-cell-style="tableHeaderColor"
                :cell-style="rowClass"
                @cell-click="handle"
        >
            <el-table-column
                    width="30px"
                    label=""
            >
        <el-table class="tableBox" :data="tableData" :header-cell-style="tableHeaderColor" :cell-style="rowClass" @cell-click="handle">
            <el-table-column width="30px" label="">
              <template slot-scope="{row,$index}">
                <!--                   <i class="el-icon-caret-right" v-if="$index ===1"></i>-->
                <el-popover
                    placement="bottom"
                    trigger="click"
                    :disabled="!isShowIcon"
                    popper-class="popovers"
                >
                <el-popover placement="bottom" trigger="click" :disabled="!isShowIcon" popper-class="popovers">
                  <ChemicalWastewater v-show="$index ===1"></ChemicalWastewater>
                  <i class="el-icon-caret-right" :class="{active: isActive === $index}" slot="reference" @click="doIcon($index)"></i>
                  <!--                   <i class="el-icon-caret-bottom"   slot="reference" v-else @click="doIcon($index)"></i>-->
                </el-popover>
              </template>
            </el-table-column>
            <el-table-column
                    label="序号"
                    width="45px"
                    type="index">
            <el-table-column label="序号" width="45px" type="index"></el-table-column>
            <el-table-column prop="UserName" label="企业名称">
                  <template slot-scope="scope">
                        <div v-if="scope.row.UserName==='集团名称'" style="color: #00ffff">{{scope.row.UserName}}</div>
                        <div v-else-if="scope.row.UserName==='天津石化'" style="color: #00ffff">{{scope.row.UserName}}</div>
                        <div v-else >{{scope.row.UserName}}</div>
                  </template>
            </el-table-column>
            <el-table-column
                    prop="UserName"
                    label="企业名称"
                    width="120px">
              <template slot-scope="scope">
                <div v-if="scope.row.UserName==='集团名称'" style="color: #00ffff">{{scope.row.UserName}}</div>
                <div v-else-if="scope.row.UserName==='天津石化'" style="color: #00ffff">{{scope.row.UserName}}</div>
                <div v-else >{{scope.row.UserName}}</div>
              </template>
            <el-table-column prop="WasteWaters" label="工业外排废水量(m³)" width="100px"></el-table-column>
            <el-table-column label="二氧化硫 (产生量/t)">
                <el-table-column prop="AddOutPut" label="累计" width="70px"></el-table-column>
                <el-table-column prop="MonthOutPut" label="当月" width="70px"></el-table-column>
            </el-table-column>
            <el-table-column
                    prop="WasteWaters"
                    label="工业外排废水量(m³)"
                    width="100px">
            <el-table-column label="氨氧化物  (产生量/t)">
                <el-table-column prop="NH4NPut" label="累计" width="70px"></el-table-column>
                <el-table-column prop="NH4NMonth" label="当月" width="70px"></el-table-column>
            </el-table-column>
            <el-table-column label="二氧化硫 (t)">
                <el-table-column
                        prop="AddOutPut"
                        label="累计产生量"
                        width="70px">
                </el-table-column>
                <el-table-column
                        prop="MonthOutPut"
                        label="当月生产量"
                        width="70px">
                </el-table-column>
            </el-table-column>
            <el-table-column label="氨氧化物  (t)">
                <el-table-column
                        prop="NH4NPut"
                        label="累计产生量"
                        width="70px">
                </el-table-column>
                <el-table-column
                        prop="NH4NMonth"
                        label="当月生产量"
                        width="70px">
                </el-table-column>
            </el-table-column>
            <el-table-column label="VOCs  (t)">
                <el-table-column
                        prop="NH4NPut"
                        label="累计产生量"
                        width="70px">
                </el-table-column>
                <el-table-column
                        prop="NH4NMonth"
                        label="当月生产量"
                        width="70px">
                </el-table-column>
            <el-table-column label="VOCs  (产生量/t)">
                <el-table-column prop="NH4NPut" label="累计" width="70px"></el-table-column>
                <el-table-column prop="NH4NMonth" label="当月" width="70px"></el-table-column>
            </el-table-column>
            <el-table-column label="排放口检测状态">
                <el-table-column
                        prop="normal"
                        label="正常"
                        width="60px">
                <el-table-column prop="normal" label="正常" width="40px">
                  <template slot-scope="{row,$index}">
                    <u v-if="$index!==1" >{{row.normal}}</u>
                    <el-popover v-else
                                placement="bottom-end"
                                width="200"
                                trigger="click"
                                title="监测点排放明细"
                    >
                      <refinery></refinery>
                    <el-popover v-else placement="bottom-end" trigger="click" popper-class="popovers" title="监测点排放明细">
                      <refinery :tableHeader="tableHeader1" :tableContent="tableContent1"></refinery>
                      <u slot="reference" style="color: #00ffff">{{row.normal}}</u>
                    </el-popover>
                  </template>
                </el-table-column>
                <el-table-column
                        prop="overProof"
                        label="超标"
                        width="60px">
                </el-table-column>
                <el-table-column
                        prop="Abnormal"
                        label="异常"
                        width="60px">
                </el-table-column>
                <el-table-column
                        prop="StopProduction"
                        label="停产"
                        width="60px">
                </el-table-column>
                <el-table-column
                        prop="deficiency"
                        label="缺失"
                        width="60px">
                <el-table-column prop="overProof" label="超标" width="40px"></el-table-column>
                <el-table-column prop="Abnormal" label="异常" width="40px"></el-table-column>
                <el-table-column prop="StopProduction" label="停产" width="40px"></el-table-column>
                <el-table-column prop="deficiency" label="缺失" width="40px">
                  <template slot-scope="{row,$index}">
                    <u v-if="$index!==1" >{{row.deficiency}}</u>
                    <el-popover v-else
                                placement="bottom-end"
                                width="200"
                                trigger="click"
                                title="监测点排放明细"
                    >
                    <el-popover v-else placement="bottom-end" trigger="click" popper-class="popovers" title="监测点排放明细">
                      <MissingAlarm></MissingAlarm>
                      <u slot="reference" style="color: #00ffff">{{row.deficiency}}</u>
                    </el-popover>
@@ -140,6 +63,7 @@
import ChemicalWastewater from '@components/table/components/componented/ChemicalWastewater'
import Refinery from '@components/table/components/componented/refinery'
import MissingAlarm from '@components/table/components/componented/MissingAlarm'
import mapApi from '@/api/mapApi'
export default {
  name: 'WasteGas',
  components: {
@@ -151,64 +75,31 @@
    return {
      isActive: '',
      isShowIcon: false,
      tableData: [{
        UserName: '集团名称',
        WasteWaters: '',
        AddOutPut: '',
        MonthOutPut: '',
        NH4NPut: '',
        NH4NMonth: '',
        normal: '',
        overProof: '',
        Abnormal: '',
        StopProduction: '',
        deficiency: ''
      }, {
        UserName: '天津石化',
        WasteWaters: '116.6',
        AddOutPut: '58.3',
        MonthOutPut: '13.1',
        NH4NPut: '58.3',
        NH4NMonth: '13.1',
        normal: '21',
        overProof: '2',
        Abnormal: '2',
        StopProduction: '2',
        deficiency: '2'
      }, {
        UserName: 'xxxx炼化3',
        WasteWaters: '116.6',
        MonthOutPut: '13.1',
        NH4NPut: '58.3',
        NH4NMonth: '13.1',
        normal: '21',
        overProof: '2',
        Abnormal: '2',
        StopProduction: '2',
        deficiency: '2'
      }, {
        UserName: 'xxxx4',
        WasteWaters: '116.6',
        AddOutPut: '58.3',
        MonthOutPut: '13.1',
        NH4NPut: '58.3',
        NH4NMonth: '13.1',
        normal: '21',
        overProof: '2',
        Abnormal: '2',
        StopProduction: '2',
        deficiency: '2'
      }]
      tableData: null,
      tableHeader1: [
        { name: '排放点', width: '140', propS: 'value1' },
        { name: '单位部门', width: '80', propS: 'value2' },
        { name: '废气排放量(m³)', width: '120', propS: 'value3' },
        { name: '二氧化硫(t)', width: '100', propS: 'value4' },
        { name: '氮氧化物(t)', width: '100', propS: 'value5' },
        { name: 'VOCs(t)', width: '100', propS: 'value5' }
      ],
      tableContent1: [
        { value1: '1', value2: '2', value3: '3', value4: '4', value5: '5' },
        { value1: '1', value2: '2', value3: '3', value4: '4', value5: '5' }
      ]
    }
  },
  async mounted () {
    this.tableData = await mapApi.getWasteGasStatistics()
  },
  methods: {
    tableHeaderColor ({ columnIndex }) {
      return 'background-color: rgba(26, 73, 81, 0.901960784313726);color:#fff;font-wight:500;font-size:12px;text-align:center;height:0px'
      //   return 'background-color: rgba(26, 73, 81, 0.901960784313726);color:#fff;font-wight:500;font-size:12px;text-align:center;height:0px'
    },
    // 表头样式设置
    rowClass  () {
      return 'text-align: center;background-color: rgba(26, 73, 81, 0.901960784313726);color:#fff;width:64px'
      // return 'text-align: center;background-color: rgba(26, 73, 81, 0.901960784313726);color:#fff;width:64px'
    },
    // 获取点击的表格
    handle (row, column, event, cell) {