Browse Source

fix(督办):左侧筛选栏选中标亮优化;显示团队信息;用户显示昵称信息

likai 3 years ago
parent
commit
1a84b09d05
2 changed files with 65 additions and 34 deletions
  1. 1 1
      src/views/plat/task/detail.vue
  2. 64 33
      src/views/plat/task/index.vue

+ 1 - 1
src/views/plat/task/detail.vue

@@ -228,7 +228,7 @@
         }
         this.users = user.data.list
         for (let user of this.users) {
-          this.userMap[user.id] = user.userName
+          this.userMap[user.id] = user.nickName
         }
       },
       // 获取进展信息

+ 64 - 33
src/views/plat/task/index.vue

@@ -3,24 +3,50 @@
     <el-row :gutter="20" type="flex">
       <el-col :span="6">
         <span class="type">操作类型</span>
-        <div style="margin-top: 25px; cursor: pointer" @click="search('1')">
+        <div
+          :style="{
+            color: queryForm.operateType != '1' ? '#999999' : '#1D66DC',
+            'margin-top': '20px',
+            cursor: 'pointer',
+          }"
+          @click="search('1')">
           <i class="el-icon-message-solid" style="margin-right: 10px"></i>
           我的待办({{ statisticsForm.toDoNumber }})
         </div>
-        <div style="margin-top: 20px; cursor: pointer" @click="search('2')">
+        <div
+          :style="{
+            color: queryForm.operateType != '2' ? '#999999' : '#1D66DC',
+            'margin-top': '20px',
+            cursor: 'pointer',
+          }"
+          @click="search('2')">
           <i class="el-icon-video-play" style="margin-right: 10px"></i>
           我发起的
         </div>
-        <div style="margin-top: 20px; cursor: pointer" @click="search('3')">
+        <div
+          :style="{
+            color: queryForm.operateType != '3' ? '#999999' : '#1D66DC',
+            'margin-top': '20px',
+            cursor: 'pointer',
+          }"
+          @click="search('3')">
           <i class="el-icon-folder-checked" style="margin-right: 10px"></i>
           我处理的
         </div>
         <div class="type" style="margin-top: 50px">督办类型</div>
-        <div style="margin-top: 20px; cursor: pointer" @click="searchType('')">全部</div>
+        <div
+          :style="{ color: queryForm.taskType != '' ? '#999999' : '#1D66DC', 'margin-top': '20px', cursor: 'pointer' }"
+          @click="searchType('')">
+          全部
+        </div>
         <div
           v-for="item in types"
           :key="item.dictCode"
-          style="margin-top: 20px; cursor: pointer"
+          :style="{
+            color: queryForm.taskType != item.dictValue ? '#999999' : '#1D66DC',
+            'margin-top': '20px',
+            cursor: 'pointer',
+          }"
           @click="searchType(item.dictValue)">
           {{ item.dictLabel }}
         </div>
@@ -42,28 +68,10 @@
             <el-button icon="el-icon-plus" type="primary" @click="handleAdd">添加</el-button>
           </vab-query-form-left-panel>
           <vab-query-form-right-panel :span="12">
-            <el-button icon="el-icon-download" @click="exportData" />
+            <!-- <el-button icon="el-icon-download" @click="exportData" /> -->
             <table-tool :check-list.sync="checkList" :columns="columns" />
           </vab-query-form-right-panel>
         </vab-query-form>
-        <!-- <el-row :gutter="10" style="margin-bottom: 10px">
-          <el-col :span="4">
-            <el-input v-model.trim="queryForm.taskTitle" clearable placeholder="请输入督办标题" />
-          </el-col>
-          <el-col :span="12">
-            <el-button icon="el-icon-search" type="primary" @click="queryData">查询</el-button>
-            <el-button icon="el-icon-refresh-right" @click="reset">重置</el-button>
-          </el-col>
-        </el-row>
-        <vab-query-form>
-          <vab-query-form-left-panel :span="12">
-            <el-button icon="el-icon-plus" type="primary" @click="handleAdd">添加</el-button>
-          </vab-query-form-left-panel>
-          <vab-query-form-right-panel :span="12">
-            <el-button icon="el-icon-download" @click="exportData" />
-            <table-tool :check-list.sync="checkList" :columns="columns" />
-          </vab-query-form-right-panel>
-        </vab-query-form> -->
         <!-- 主页面 -->
         <el-table v-loading="listLoading" border :data="list" height="calc(100vh - 340px)">
           <el-table-column
@@ -93,6 +101,9 @@
               <span v-else-if="item.prop === 'mainUserId' || item.prop === 'supervisorUserId'">
                 {{ userMap[row[item.prop]] }}
               </span>
+              <span v-else-if="item.prop === 'ownerUserId'">
+                {{ generateTeamMembers(row[item.prop]) }}
+              </span>
               <span
                 v-else-if="item.prop === 'taskStartDate' || item.prop === 'taskEndDate' || item.prop === 'createdTime'">
                 {{ parseTime(row[item.prop], '{y}-{m}-{d} {h}:{i}') }}
@@ -100,11 +111,6 @@
               <span v-else>{{ row[item.prop] }}</span>
             </template>
           </el-table-column>
-          <!-- <el-table-column align="center" label="操作" width="85">
-            <template #default="{ row }">
-              <el-button type="text" @click="showDetail(row)">查看</el-button>
-            </template>
-          </el-table-column> -->
           <template #empty>
             <el-image class="vab-data-empty" :src="require('@/assets/empty_images/data_empty.png')" />
           </template>
@@ -165,8 +171,8 @@
           pageNum: 1,
           pageSize: 10,
           taskTitle: undefined,
-          taskType: undefined,
-          operateType: undefined,
+          taskType: '',
+          operateType: '1',
         },
         // 用户信息
         userMap: {},
@@ -220,6 +226,12 @@
             prop: 'mainUserId',
             sortable: false,
           },
+          {
+            label: '团队成员',
+            width: '180px',
+            prop: 'ownerUserId',
+            sortable: false,
+          },
           {
             label: '督办人',
             width: '120px',
@@ -300,7 +312,8 @@
         this.queryForm.pageNum = 1
         this.queryForm.pageSize = 10
         this.queryForm.taskTitle = undefined
-        this.queryForm.taskType = undefined
+        this.queryForm.operateType = '1'
+        this.queryForm.taskType = ''
         this.queryData()
       },
       // 左侧操作栏搜索
@@ -334,7 +347,7 @@
             if (res.data.list) {
               this.users = res.data.list
               for (let user of this.users) {
-                this.userMap[user.id] = user.userName
+                this.userMap[user.id] = user.nickName
               }
             }
           })
@@ -392,6 +405,24 @@
             console.error(err)
           })
       },
+      // 团队成员
+      generateTeamMembers(ids) {
+        if (!ids) {
+          return ''
+        } else {
+          let names = ''
+          let idArray = ids.split(',')
+          for (let id of idArray) {
+            if (names == '') {
+              names = this.userMap[parseInt(id)]
+            } else {
+              names += ',' + this.userMap[parseInt(id)]
+            }
+          }
+
+          return names
+        }
+      },
     },
   }
 </script>