Browse Source

新增项目前端排序

余思翰 5 months ago
parent
commit
1ebfdc5850

+ 1
- 1
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectProgressController.java View File

82
         //如100%进度,则表示已完成;当项目流转流程结束,项目状态才结束
82
         //如100%进度,则表示已完成;当项目流转流程结束,项目状态才结束
83
         //忽略从100调整到100以下,已完成状态未及时变为未完成的情况;如果考虑此情况,将导致每次执行都会产生修改项目表操作记录,意义不大,且占数据库资源
83
         //忽略从100调整到100以下,已完成状态未及时变为未完成的情况;如果考虑此情况,将导致每次执行都会产生修改项目表操作记录,意义不大,且占数据库资源
84
         if (cmcProjectProgress.getPercentage().equals("100")) {
84
         if (cmcProjectProgress.getPercentage().equals("100")) {
85
-            CmcProject cmcProject = new CmcProject();
85
+            CmcProject cmcProject = cmcProjectService.selectCmcProjectByProjectId(cmcProjectProgress.getProjectId());
86
             cmcProject.setIsComplete("1");
86
             cmcProject.setIsComplete("1");
87
             cmcProjectService.updateCmcProject(cmcProject);
87
             cmcProjectService.updateCmcProject(cmcProject);
88
         }
88
         }

+ 6
- 14
oa-ui/src/components/Pagination/index.vue View File

1
 <template>
1
 <template>
2
-  <div :class="{'hidden':hidden}" class="pagination-container">
3
-    <el-pagination
4
-      :background="background"
5
-      :current-page.sync="currentPage"
6
-      :page-size.sync="pageSize"
7
-      :layout="layout"
8
-      :page-sizes="pageSizes"
9
-      :pager-count="pagerCount"
10
-      :total="total"
11
-      v-bind="$attrs"
12
-      @size-change="handleSizeChange"
13
-      @current-change="handleCurrentChange"
14
-    />
2
+  <div :class="{ 'hidden': hidden }" class="pagination-container">
3
+    <el-pagination :background="background" :current-page.sync="currentPage" :page-size.sync="pageSize" :layout="layout"
4
+      :page-sizes="pageSizes" :pager-count="pagerCount" :total="total" v-bind="$attrs" @size-change="handleSizeChange"
5
+      @current-change="handleCurrentChange" />
15
   </div>
6
   </div>
16
 </template>
7
 </template>
17
 
8
 
36
     pageSizes: {
27
     pageSizes: {
37
       type: Array,
28
       type: Array,
38
       default() {
29
       default() {
39
-        return [10, 20, 30, 50]
30
+        return [10, 20, 30, 50, 150, 200]
40
       }
31
       }
41
     },
32
     },
42
     // 移动端页码按钮的数量端默认值5
33
     // 移动端页码按钮的数量端默认值5
108
   background: #fff;
99
   background: #fff;
109
   padding: 32px 16px;
100
   padding: 32px 16px;
110
 }
101
 }
102
+
111
 .pagination-container.hidden {
103
 .pagination-container.hidden {
112
   display: none;
104
   display: none;
113
 }
105
 }

+ 13
- 9
oa-ui/src/views/oa/project/index.vue View File

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-02-27 14:49:15
3
  * @Date: 2024-02-27 14:49:15
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2025-01-02 14:24:27
5
+ * @LastEditTime: 2025-01-07 15:34:38
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div class="project-wrapper">
8
   <div class="project-wrapper">
59
       <el-table v-loading="loading" :data="projectList" style="margin-top: 30px;">
59
       <el-table v-loading="loading" :data="projectList" style="margin-top: 30px;">
60
         <el-table-column type="index" width="50">
60
         <el-table-column type="index" width="50">
61
         </el-table-column>
61
         </el-table-column>
62
-        <el-table-column prop="isFinshed" align="center" label="状态" width="90px">
62
+        <el-table-column prop="isFinshed" align="center" label="状态" width="90px" sortable :sort-method="sortIsFinshed">
63
           <template slot-scope="scope">
63
           <template slot-scope="scope">
64
             <el-tag :type="scope.row.isFinished === '0' ? 'success' : 'warning'" disable-transitions>
64
             <el-tag :type="scope.row.isFinished === '0' ? 'success' : 'warning'" disable-transitions>
65
               {{ scope.row.isFinished == '0' ? '进行中' : '已结束' }}
65
               {{ scope.row.isFinished == '0' ? '进行中' : '已结束' }}
66
             </el-tag>
66
             </el-tag>
67
           </template>
67
           </template>
68
         </el-table-column>
68
         </el-table-column>
69
-        <el-table-column prop="percentage" align="center" label="生产进度" width="120px">
69
+        <el-table-column prop="percentage" align="center" label="生产进度" width="120px" sortable>
70
           <template slot-scope="scope">
70
           <template slot-scope="scope">
71
             <el-progress :text-inside="true" :stroke-width="26" :status="formatStatus(scope.row.percentage)"
71
             <el-progress :text-inside="true" :stroke-width="26" :status="formatStatus(scope.row.percentage)"
72
               :percentage="scope.row.percentage" text-color="#fff"></el-progress>
72
               :percentage="scope.row.percentage" text-color="#fff"></el-progress>
73
           </template>
73
           </template>
74
         </el-table-column>
74
         </el-table-column>
75
-        <el-table-column label="项目编号" align="center" key="projectNumber" prop="projectNumber" width="120px" />
76
-        <el-table-column label="项目名称" align="center" key="projectName" prop="projectName" />
77
-        <el-table-column label="承担部门" align="center" key="undertakingDeptName" prop="undertakingDeptName" />
78
-        <el-table-column label="项目负责人" align="center" key="projectLeaderName" prop="projectLeaderUser.nickName"
75
+        <el-table-column label="项目编号" align="center" key="projectNumber" prop="projectNumber" width="120px" sortable  />
76
+        <el-table-column label="项目名称" align="center" key="projectName" prop="projectName" sortable />
77
+        <el-table-column label="承担部门" align="center" key="undertakingDeptName" prop="undertakingDeptName" sortable />
78
+        <el-table-column label="项目负责人" align="center" key="projectLeaderName" prop="projectLeaderUser.nickName" sortable
79
           width="120px" />
79
           width="120px" />
80
-        <el-table-column label="项目级别" align="center" key="projectLevel" prop="projectLevel" width="120px">
80
+        <el-table-column label="项目级别" align="center" key="projectLevel" prop="projectLevel" width="120px" sortable>
81
           <template slot-scope="scope">
81
           <template slot-scope="scope">
82
             <el-tag :type="scope.row.projectLevel ? (scope.row.projectLevel === '0' ? 'info' : 'danger') : 'info'"
82
             <el-tag :type="scope.row.projectLevel ? (scope.row.projectLevel === '0' ? 'info' : 'danger') : 'info'"
83
               disable-transitions>
83
               disable-transitions>
85
             </el-tag>
85
             </el-tag>
86
           </template>
86
           </template>
87
         </el-table-column>
87
         </el-table-column>
88
-        <el-table-column label="项目类型" align="center" key="projectType" prop="projectType" width="120px" />
88
+        <el-table-column label="项目类型" align="center" key="projectType" prop="projectType" width="120px" sortable />
89
         <el-table-column label="操作" align="center" width="160" class-name="small-padding fixed-width">
89
         <el-table-column label="操作" align="center" width="160" class-name="small-padding fixed-width">
90
           <template slot-scope="scope" v-if="scope.row.userId !== 1">
90
           <template slot-scope="scope" v-if="scope.row.userId !== 1">
91
             <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
91
             <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
546
       }
546
       }
547
       return path
547
       return path
548
     },
548
     },
549
+    sortIsFinshed(a,b){
550
+      console.log(a,b);
551
+      return Number(a.isFinished) - Number(b.isFinished)
552
+    }
549
   },
553
   },
550
 }
554
 }
551
 </script>
555
 </script>

Loading…
Cancel
Save