Browse Source

大中型列表自定义字段

wucl 11 months ago
parent
commit
6031be6ae5

+ 3 - 0
src/api/modules/majorProduction.js

@@ -72,5 +72,8 @@ export default {
    noTaskConfirmDelivery(params) {
     return request.get(`majorProduction/confirmDelivery/${params}`)
   },
+  pendingList(params){
+    return request.get(`majorProduction/pending`,{ params: params })
+  }
 
 }

+ 1 - 1
src/views/major/detail.vue

@@ -2910,7 +2910,7 @@
               statementNo:statementNo,
               sequence:this.currentNode.sequence,
             }
-            this.$api.majorProduction.list(pro).then(res=>{
+            this.$api.majorProduction.pendingList(pro).then(res=>{
               if (res.code === 200 ){
                  this.productions = res.data;
                  this.nodeBusinessInfo.doSecondCheck =  this.productions[0].secondCheck;

+ 42 - 24
src/views/major/list.vue

@@ -5,110 +5,114 @@
     </div>
     <y-page-list-layout :page-list="pageData" :page-para="listQuery" :get-page-list="getPage">
       <template slot="left">
-        <MoreSearchBar business="MAJOR_BUSINESS" @fliterSearch="fliterSearch" @resetParams="resetParams" :listQuery="listQuery" :nodes="majorNodes"></MoreSearchBar>
+        <MoreSearchBar business="MAJOR_BUSINESS" @fliterSearch="fliterSearch" @resetParams="resetParams" :listQuery="listQuery" :nodes="majorNodes">
+          <template v-slot:otherButton>
+            <el-button class="filter-item" round @click="showAllLabel()">显示全部列</el-button>
+          </template>
+        </MoreSearchBar>
       </template>
-      <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;" @sortTable="sortTable" >
-        <el-table-column label="项目名称" align="center" width="300">
+      <parentTable ref="table" v-loading="listLoading" :data="pageData.records" slot="table" style="width: 100%;" @sortTable="sortTable" @headerClick="switchHeader">
+        <el-table-column label="项目名称" align="center" width="300" v-if="!hiddenLabels.includes('productionName')" prop="productionName">
           <template slot-scope="{row}">
             <span class = "enableClick" @click="orderDetail(row)">{{ row.productionName==null?row.name: row.productionName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="订单号" align="center" width="150" >
+        <el-table-column label="订单号" align="center" width="150" v-if="!hiddenLabels.includes('orderId')" prop="orderId">
           <template slot-scope="{row}">
             <span class = "enableClick" @click="orderDetail(row)">{{ row.orderId }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="价值意见书号" align="center" width="280" prop="statementNo" sortable>
+        <el-table-column label="价值意见书号" align="center" width="280" v-if="!hiddenLabels.includes('statementNo')" prop="statementNo" sortable >
           <template slot-scope="{row}">
             <span>{{ row.statementNo==null?'-': row.statementNo }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="报告号/复评函号" align="center" width="280" prop="reportNo" sortable>
+        <el-table-column label="报告号/复评函号" align="center" width="280" v-if="!hiddenLabels.includes('reportNo')" prop="reportNo" sortable>
           <template slot-scope="{row}">
             <span>{{ row.reportNo==null?'-': row.reportNo }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="当前节点" align="center" width="130">
+        <el-table-column label="当前节点" align="center" width="130" v-if="!hiddenLabels.includes('nodeName')" prop="nodeName">
           <template slot-scope="{row}">
             <span>{{ row.nodeName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="待办人" align="center" width="130">
+        <el-table-column label="待办人" align="center" width="130" v-if="!hiddenLabels.includes('handler')" prop="handler">
           <template slot-scope="{row}">
             <span>{{ row.handler }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="委托人" align="center" width="130">
+        <el-table-column label="委托人" align="center" width="130" v-if="!hiddenLabels.includes('clientName')" prop="clientName">
           <template slot-scope="{row}">
             <span>{{ row.clientName==null?'-': row.clientName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="委托人电话" align="center" width="130">
+        <el-table-column label="委托人电话" align="center" width="130" v-if="!hiddenLabels.includes('clientTel')" prop="clientTel">
           <template slot-scope="{row}">
             <span>{{ row.clientTel==null?'-': row.clientTel }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="产权人" align="center" width="130">
+        <el-table-column label="产权人" align="center" width="130" v-if="!hiddenLabels.includes('owner')" prop="owner">
           <template slot-scope="{row}">
             <span>{{ row.owner==null?'-': row.owner }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="评估总价" align="center" width="130">
+        <el-table-column label="评估总价" align="center" width="130" v-if="!hiddenLabels.includes('evaluateAmount')" prop="evaluateAmount">
           <template slot-scope="{row}">
             <span>{{ row.evaluateAmount==null?'-': row.evaluateAmount/10000 +'万'}}</span>
           </template>
         </el-table-column>
-        <el-table-column label="金融类型" align="center" width="130">
+        <el-table-column label="金融类型" align="center" width="130" v-if="!hiddenLabels.includes('financial')" prop="financial">
           <template slot-scope="{row}">
             <span>{{ row.financial?'金融':'非金融' }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="分单类型" align="center">
+        <el-table-column label="分单类型" align="center" v-if="!hiddenLabels.includes('allotType')" prop="allotType">
           <template slot-scope="{row}">
             <span>{{ row.allotType }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="客户经理" align="center">
+        <el-table-column label="客户经理" align="center" v-if="!hiddenLabels.includes('clientManager')" prop="clientManager">
           <template slot-scope="{row}">
             <span>{{ row.clientManager }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="负责人" align="center">
+        <el-table-column label="负责人" align="center" v-if="!hiddenLabels.includes('principal')" prop="principal">
           <template slot-scope="{row}">
             <span>{{ row.principal==null?'-': row.principal }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="接单部门" align="center" width="130">
+        <el-table-column label="接单部门" align="center" width="130" v-if="!hiddenLabels.includes('department')" prop="department">
           <template slot-scope="{row}">
             <span>{{ row.department }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="评估对象类型" align="center" width="130">
+        <el-table-column label="评估对象类型" align="center" width="130" v-if="!hiddenLabels.includes('businessObjectType')" prop="businessObjectType">
           <template slot-scope="{row}">
             <span>{{ row.businessObjectType }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="客户名称" align="center" width="130">
+        <el-table-column label="客户名称" align="center" width="130" v-if="!hiddenLabels.includes('cclienteleName')" prop="cclienteleName">
           <template slot-scope="{row}">
             <span>{{ row.cclienteleName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="业务来源" align="center" width="130">
+        <el-table-column label="业务来源" align="center" width="130" v-if="!hiddenLabels.includes('cclienteleSubName')" prop="cclienteleSubName">
           <template slot-scope="{row}">
             <span>{{ row.cclienteleSubName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="客户联系人" align="center" width="130">
+        <el-table-column label="客户联系人" align="center" width="130" v-if="!hiddenLabels.includes('cclienteleContactName')" prop="cclienteleContactName">
           <template slot-scope="{row}">
             <span>{{ row.cclienteleContactName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="客户联系人电话" align="center" width="130">
+        <el-table-column label="客户联系人电话" align="center" width="130" v-if="!hiddenLabels.includes('cmobile')" prop="cmobile">
           <template slot-scope="{row}">
             {{ row.cmobile }}
           </template>
         </el-table-column>
-        <el-table-column label="下单时间" align="center" width="110" prop="created" sortable>
+        <el-table-column label="下单时间" align="center" width="110" v-if="!hiddenLabels.includes('created')" prop="created" sortable>
           <template slot-scope="{row}">
             {{ row.created }}
           </template>
@@ -127,6 +131,7 @@ import YPageListLayout from '@/components/YPageListLayout'
 import Breadcrumb from '@/components/Breadcrumb'
 import PermissionButton from '@/components/PermissionButton/PermissionButton'
 import MoreSearchBar from '@/components/MoreSearchBar'
+import { getCookie,setCookie,removeCookie } from '@/utils/auth'
 
 export default {
   name: 'MajorList',
@@ -151,11 +156,15 @@ export default {
         startDate:null,
         endDate:null
       },
-      majorNodes:[]
+      majorNodes:[],
+      hiddenLabels:[]
     }
   },
   created() {
     // this.listQuery.id = this.$route.query.id;
+    if (getCookie("MajorPendingList-hiddenLabels")!=undefined){
+      this.hiddenLabels = JSON.parse(getCookie("MajorPendingList-hiddenLabels"))
+    }
     this.listQuery.keyword = this.$route.query.keyword;
     this.getPage();
     this.getNodeEnum();
@@ -214,6 +223,15 @@ export default {
             this.pageData = res.data;
         }
       })
+    },
+
+    switchHeader(data){
+      this.hiddenLabels.push(data);
+      setCookie("MajorPendingList-hiddenLabels",this.hiddenLabels);
+    },
+    showAllLabel(){
+      removeCookie("MajorPendingList-hiddenLabels");
+      location.reload();
     }
   },
   

+ 33 - 18
src/views/major/todoList.vue

@@ -32,84 +32,85 @@
         </el-button>
         <el-button class="filter-item" style="float: left;" round type="success" @click="resetSearch()">重置
         </el-button>
+        <el-button class="filter-item" style="float: left;" round @click="showAllLabel()">显示全部列</el-button>
       </template>
-      <parentTable  :data="pageData.records" slot="table" style="width: 100%;" @sortTable="sortTable">
-        <el-table-column label="项目名称" align="center" width="300" >
+      <parentTable  :data="pageData.records" slot="table" style="width: 100%;" @sortTable="sortTable" @headerClick="switchHeader">
+        <el-table-column label="项目名称" align="center" width="300" v-if="!hiddenLabels.includes('productionName')" prop="productionName">
           <template slot-scope="{row}">
             <span class="enableClick" @click="toDetail(row)">{{ row.productionName==null?row.orderName: row.productionName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="订单号" align="center" width="150">
+        <el-table-column label="订单号" align="center" width="150" v-if="!hiddenLabels.includes('orderId')" prop="orderId">
           <template slot-scope="{row}">
             <span class="enableClick" @click="toDetail(row)">{{ row.orderId }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="价值意见书号" align="center" width="280" prop="statementNo" sortable>
+        <el-table-column label="价值意见书号" align="center" width="280" v-if="!hiddenLabels.includes('statementNo')" prop="statementNo" sortable>
           <template slot-scope="{row}">
             <span>{{ row.statementNo==null?'-': row.statementNo }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="报告号/复评函号" align="center" width="280" prop="reportNo" sortable>
+        <el-table-column label="报告号/复评函号" align="center" width="280" v-if="!hiddenLabels.includes('reportNo')" prop="reportNo" sortable>
           <template slot-scope="{row}">
             <span>{{ row.reportNo==null?'-': row.reportNo }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="评估对象类型" align="center" width="120">
+        <el-table-column label="评估对象类型" align="center" width="120" v-if="!hiddenLabels.includes('businessObjectType')" prop="businessObjectType">
           <template slot-scope="{row}">
             <span>{{ row.businessObjectType}}</span>
           </template>
         </el-table-column>
-        <el-table-column label="待办人" align="center">
+        <el-table-column label="待办人" align="center" v-if="!hiddenLabels.includes('handler')" prop="handler">
           <template slot-scope="{row}">
             <span>{{ row.handler }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="当前节点" align="center" width="140">
+        <el-table-column label="当前节点" align="center" width="140" v-if="!hiddenLabels.includes('nodeName')" prop="nodeName">
           <template slot-scope="{row}">
             <span>{{ row.nodeName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="客户经理" align="center">
+        <el-table-column label="客户经理" align="center" v-if="!hiddenLabels.includes('clientManager')" prop="clientManager">
           <template slot-scope="{row}">
             <span>{{ row.clientManager }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="负责人" align="center">
+        <el-table-column label="负责人" align="center" v-if="!hiddenLabels.includes('principal')" prop="principal">
           <template slot-scope="{row}">
             <span>{{ row.principal==null?'-': row.principal }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="评估对象类型" align="center" width="130">
+        <el-table-column label="评估对象类型" align="center" width="130" v-if="!hiddenLabels.includes('businessObjectType')" prop="businessObjectType">
           <template slot-scope="{row}">
             <span>{{ row.businessObjectType }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="客户名称" align="center" width="130">
+        <el-table-column label="客户名称" align="center" width="130" v-if="!hiddenLabels.includes('cclienteleName')" prop="cclienteleName">
           <template slot-scope="{row}">
             <span>{{ row.cclienteleName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="业务来源" align="center" width="130">
+        <el-table-column label="业务来源" align="center" width="130" v-if="!hiddenLabels.includes('cclienteleSubName')" prop="cclienteleSubName">
           <template slot-scope="{row}">
             <span>{{ row.cclienteleSubName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="客户联系人" align="center" width="130">
+        <el-table-column label="客户联系人" align="center" width="130" v-if="!hiddenLabels.includes('cclienteleContactName')" prop="cclienteleContactName">
           <template slot-scope="{row}">
             <span>{{ row.cclienteleContactName }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="客户联系人电话" align="center" width="130">
+        <el-table-column label="客户联系人电话" align="center" width="130" v-if="!hiddenLabels.includes('cmobile')" prop="cmobile">
           <template slot-scope="{row}">
             {{ row.cmobile }}
           </template>
         </el-table-column>
-        <el-table-column label="下单时间" align="center" width="160">
+        <el-table-column label="下单时间" align="center" width="160" v-if="!hiddenLabels.includes('created')" prop="created">
           <template slot-scope="{row}">
             <span>{{ row.created }}</span>
           </template>
         </el-table-column>
-        <el-table-column label="任务创建时间" align="center" width="160" prop="taskCreated" sortable>
+        <el-table-column label="任务创建时间" align="center" width="160" v-if="!hiddenLabels.includes('taskCreated')" prop="taskCreated" sortable>
           <template slot-scope="{row}">
             <span>{{ row.taskCreated }}</span>
           </template>
@@ -129,6 +130,8 @@
 import YPageListLayout from '@/components/YPageListLayout'
 import Breadcrumb from '@/components/Breadcrumb'
 import TransferDialog from '@/components/TaskTransferDialog'
+import { getCookie,setCookie,removeCookie } from '@/utils/auth'
+
 
 export default {
   name: 'MajorTaskTodoList',
@@ -178,10 +181,14 @@ export default {
           }]
       },
       visible:false,
-      recordId:null
+      recordId:null,
+      hiddenLabels:[]
     }
   },
   created() {
+    if (getCookie("MajorTodoList-hiddenLabels")!=undefined){
+      this.hiddenLabels = JSON.parse(getCookie("MajorTodoList-hiddenLabels"))
+    }
     this.getPage();
     this.getMajorNodes();
   },
@@ -318,6 +325,14 @@ export default {
             this.pageData = res.data;
         }
       })
+    },
+    switchHeader(data){
+      this.hiddenLabels.push(data);
+      setCookie("MajorTodoList-hiddenLabels",this.hiddenLabels);
+    },
+    showAllLabel(){
+      removeCookie("MajorTodoList-hiddenLabels");
+      location.reload();
     }
   },