Quellcode durchsuchen

2022.7.12 项目列表排序,资源分配筛选

ggooalice vor 3 Jahren
Ursprung
Commit
1c8e6f748a

+ 20 - 14
fhKeeper/formulahousekeeper/timesheet/src/views/project/list.vue

@@ -116,9 +116,9 @@
                         {{scope.$index+1+(page-1)*size}}
                     </template>
             </el-table-column> -->
-            <el-table-column prop="projectCode" label="项目编号" sortable width="120"></el-table-column>
-            <el-table-column prop="categoryName" label="项目分类" sortable width="120"></el-table-column>
-            <el-table-column prop="projectName" label="项目名称" width="250" sortable>
+            <el-table-column prop="projectCode" label="项目编号" sortable="custom" width="120"></el-table-column>
+            <el-table-column prop="categoryName" label="项目分类" sortable="custom" width="120"></el-table-column>
+            <el-table-column prop="projectName" label="项目名称" width="250" sortable="custom">
                  <template slot-scope="scope">
                      <!-- <div class="kans">
                          <el-link type="primary" v-if="user.company.packageProject==1" :href="'#/projectInside/'+scope.row.id">{{scope.row.projectName}}</el-link>
@@ -188,7 +188,7 @@
             <el-table-column prop="providerNames" label="供应商" min-width="190" v-if="user.company.packageProvider">
             </el-table-column>
 
-            <el-table-column prop="status" label="状态" min-width="100" >
+            <el-table-column prop="status" label="状态" min-width="100" sortable="custom">
                 <template slot-scope="scope">
                     {{scope.row.status == null?"-":statusTxt[scope.row.status]}}
                 </template>
@@ -941,7 +941,7 @@ a {
         },
         methods: {
             tableSort({column, prop, order}){
-                if(prop == 'inchargerName' || prop == 'customerName'){
+                if(prop == 'inchargerName' || prop == 'customerName' || prop == 'projectCode' || prop == 'categoryName' || prop == 'projectName' || prop == 'status'){
                     this.sortOrder = order
                     this.sortProp = prop
                     this.getList()
@@ -2300,20 +2300,26 @@ a {
                     category: this.statusClf,
                     projectMainId: this.projectMainId
                 }
-                if(this.sortOrder == 'descending'){
+                if(this.sortOrder){
                     if(this.sortProp == 'inchargerName'){
                         parameter.sortProp = "incharger_id"
-                    }else{
+                    }else if(this.sortProp == 'customerName'){
                         parameter.sortProp = "customer_id"
+                    }else if(this.sortProp == 'projectCode'){
+                        parameter.sortProp = 'project_code'
+                    }else if(this.sortProp == 'categoryName'){
+                        parameter.sortProp = 'category'
+                    }else if(this.sortProp == 'projectName'){
+                        parameter.sortProp = 'project_name'
+                    }else if(this.sortProp == 'status'){
+                        parameter.sortProp = 'status'
                     }
-                    parameter.sortOrder = 0
-                }else if(this.sortOrder == 'ascending'){
-                    if(this.sortProp == 'inchargerName'){
-                        parameter.sortProp = "incharger_id"
-                    }else{
-                        parameter.sortProp = "customer_id"
+
+                    if(this.sortOrder == 'descending'){
+                        parameter.sortOrder = 0
+                    }else if(this.sortOrder == 'ascending'){
+                        parameter.sortOrder = 1
                     }
-                    parameter.sortOrder = 1
                 }
                 this.http.post(this.port.project.listPage, parameter,
                 res => {

+ 24 - 5
fhKeeper/formulahousekeeper/timesheet/src/views/project/project_gantt.vue

@@ -26,7 +26,14 @@
         @change="dateupdata()">
       </el-date-picker>
       </div>
-
+      <!-- 任务类型筛选 -->
+      <div v-if="radio1 == '按项目查看'" class="head_taskType">
+        <span>任务类型</span>
+        <el-select clearable filterable v-model="taskType" placeholder="请选择" size="small" style="margin-left:9px;width:10vw" @change="taskTypeSel()">
+        <el-option label="任务" :value="0"></el-option>
+        <el-option label="里程碑" :value="1"></el-option>
+      </el-select>
+      </div>
       <!-- 任务分组筛选 -->
       <div v-if="reqpar1" class="head_taskgroup">
         <span>任务分组</span>
@@ -162,6 +169,7 @@ export default {
   components: {Gantt},
   data () {
     return {
+      taskType: '',
       isDataLoaded:false,
       tasks: {
         data : [],
@@ -200,6 +208,11 @@ export default {
           this.$refs.ganttTable1.setGroup();
           // this.$refs.ganttTable2.setGroup();
       },
+      taskTypeSel(){
+        console.log(this.taskType);
+        
+        this.getList()
+      },
       // 资源需求导出
       exportProjectData() {
         let parameter = {}
@@ -441,6 +454,8 @@ export default {
           if(this.valuex2 != ''){
             getlistcs.groupName = this.valuex2
           }
+          getlistcs.taskType = this.taskType
+          
         }else {
           if(this.valuex != ''){
             getlistcs.userId = this.valuex
@@ -592,14 +607,18 @@ export default {
     align-items: center;
   }
   .gantt_head .head_RorX{
-    width: 22vw;
+    width: 16vw;
   }
   .gantt_head .head_date{
-    width: 24vw;
+    width: 22vw;
   }
   .gantt_head .head_taskgroup{
-    width: 16vw;
+    width: 15vw;
   }
+  .gantt_head .head_taskType{
+    width: 15vw;
+  }
+  
   .gantt_head .head_select{
     width: 15vw;
   }
@@ -609,6 +628,6 @@ export default {
   .poss {
     height: 8%;
     float: right;
-    padding-top: 15px;
+    padding-top: 5px;
 }
 </style>