From 4df0471b7dff0494625ff09969b1a13b5359a26e Mon Sep 17 00:00:00 2001
From: XingChuan <m17600301067@163.com>
Date: 星期一, 31 五月 2021 22:41:47 +0800
Subject: [PATCH] 统计表弹框UI优化;增加点击企业名称缩放至企业;二级表展示功能优化。

---
 src/components/table/components/WasteWater.vue |  236 +++++++++++++++++------------------------------------------
 1 files changed, 68 insertions(+), 168 deletions(-)

diff --git a/src/components/table/components/WasteWater.vue b/src/components/table/components/WasteWater.vue
index 3291fb1..2f894bc 100644
--- a/src/components/table/components/WasteWater.vue
+++ b/src/components/table/components/WasteWater.vue
@@ -1,89 +1,41 @@
 <template>
    <div class="waste-water">
-           <el-table
-                   class="tableBox"
-                   :data="tableData"
-                   style="width: 100%"
-                   :header-cell-style="tableHeaderColor"
-                   :cell-style="rowClass"
-                   @cell-click="handle"
-           >
-               <el-table-column
-                       width="30px"
-                        label=""
-               >
+           <el-table class="tableBox" :data="tableData" style="width: 100%" :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"
-                        >
-                   <ChemicalWastewater v-show="$index ===1"></ChemicalWastewater>
-                   <i class="el-icon-caret-right" :class="{active: isActive === $index}" slot="reference" @click="doIcon($index)"></i>
+                 <el-popover placement="bottom" trigger="click" :disabled="!isShowIcon" popper-class="popovers">
+                   <ChemicalWastewater v-show="$index ===2"></ChemicalWastewater>
+                   <i class="el-icon-caret-right showBottomTableBtn" @click="showBottomTable" slot="reference"></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>
-               <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>
+               <el-table-column label="搴忓彿" width="45px" type="index"></el-table-column>
+               <el-table-column prop="UserName" label="浼佷笟鍚嶇О" >
+                 <template slot-scope="{row}">
+                   <u @click="searchNameToPosition" style="cursor: pointer">{{row.UserName}}</u>
                  </template>
                </el-table-column>
-               <el-table-column
-                       prop="WasteWaters"
-                       label="澶栨帓搴熸按閲忥紙m鲁锛�"
-                       width="100px">
+               <el-table-column prop="WasteWaters" width="80">
+                   <div slot="header">
+                      <span>澶栨帓搴熸按閲�</span>
+                       <div>锛坢鲁锛�</div>
+                   </div>
                </el-table-column>
-               <el-table-column label="COD  (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 label="COD  (浜х敓閲�/t)">
+                   <el-table-column prop="AddOutPut" label="绱" width="70"></el-table-column>
+                   <el-table-column prop="MonthOutPut" label="褰撴湀" width="70"></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 label="姘ㄦ爱  (浜х敓閲�/t)">
+                   <el-table-column prop="NH4NPut" label="绱" width="70"></el-table-column>
+                   <el-table-column prop="NH4NMonth" label="褰撴湀" width="70"></el-table-column>
                </el-table-column>
-               <el-table-column label="鎺掓斁鍙f娴嬬粺璁$姸鎬�">
-                   <el-table-column
-                           prop="normal"
-                           label="姝e父"
-                           width="60px">
+               <el-table-column label="鎺掓斁鍙f娴嬬粺璁$姸鎬� (涓�)">
+                   <el-table-column prop="normal" label="姝e父" width="60">
                      <template slot-scope="{row,$index}">
                        <u v-if="$index!=2" >{{row.normal}}</u>
-                       <el-popover v-else
-                           placement="bottom-end"
-                           width="200"
-                           trigger="click"
-                                   popper-class="popovers"
-                           title="XXX1鏄庣粏琛�"
-                       >
+                       <el-popover v-else placement="bottom-end" trigger="click" popper-class="popovers" title="鐩戞祴鐐规槑缁嗚〃">
                          <refinery></refinery>
                          <u slot="reference" style="color: #00ffff">{{row.normal}}</u>
                          <!--                       <i class="el-icon-caret-bottom" v-else-if="isShowIcon&&scope.row.index===1"></i>-->
@@ -92,34 +44,13 @@
                        </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="60"></el-table-column>
+                   <el-table-column prop="Abnormal" label="寮傚父" width="60"></el-table-column>
+                   <el-table-column prop="StopProduction" label="鍋滀骇" width="60"></el-table-column>
+                   <el-table-column prop="deficiency" label="缂哄け" width="60">
                      <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="澶╂触鐭冲寲鐩戞祴鐐圭己澶辨姤璀︽槑缁�"
-                                   popper-class="popovers"
-                       >
+                       <el-popover v-else placement="bottom-end" trigger="click" title="澶╂触鐭冲寲鐩戞祴鐐圭己澶辨姤璀︽槑缁�" popper-class="popovers">
                          <MissingAlarm></MissingAlarm>
                          <u slot="reference" style="color: #00ffff">{{row.deficiency}}</u>
                        </el-popover>
@@ -137,6 +68,7 @@
 import ChemicalWastewater from './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: 'WasteWater',
   components: {
@@ -148,97 +80,65 @@
     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
     }
+  },
+  props: {
+    searchNameToPosition: {
+      type: Function
+    }
+  },
+  async mounted () {
+    this.tableData = await mapApi.getWasteWaterStatistics()
   },
   methods: {
     tableHeaderColor ({ row, column, owIndex, 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 'height:.3rem'
     },
     // 鑾峰彇鐐瑰嚮鐨勮〃鏍�
     handle (row, column, event, cell) {
       console.log(row.UserName)
     },
-    doIcon (index) {
-      if (index !== 1) {
-        this.isShowIcon = false
-        this.isActive = ''
-        return
+    showBottomTable (e) {
+      if (e.path[0].classList.contains('go') === true) {
+        e.path[0].classList.remove('go')
+        e.path[0].classList.add('aa')
+      } else {
+        const newList = document.querySelectorAll('i.showBottomTableBtn')
+        for (let i = 0; i < newList.length; i++) {
+          newList[i].classList.remove('go')
+        }
+        e.path[0].classList.remove('aa')
+        e.path[0].classList.add('go')
       }
-      this.isShowIcon = !this.isShowIcon
-      if (index === this.isActive) {
-        this.isActive = ''
-        return
-      }
-      this.isActive = index
     }
   }
 }
 </script>
 
-<style scoped>
-.popovers{
-  width: auto !important;
-  background-color: gray !important;
+<style scoped lang="less">
+/deep/ .el-tabs__item:focus.is-active.is-focus:not(:active) {
+  -webkit-box-shadow: none !important;
+  box-shadow: none !important;
 }
-.popovers.el-popover{
-padding:0;
+.waste-water{
+.el-icon-caret-right{
+  position: absolute;
+  top: .11rem;
+  left: .04rem;
+  font-size: .14rem;
+  cursor: pointer;
 }
-.active {
-  /*color: red;*/
+}
+.aa{
+  transition: all .2s;
+}
+.go{
   transform:rotate(90deg);
+  transition: all .2s;
 }
-
 </style>

--
Gitblit v1.8.0