소스 검색

修改项目结算,新增实际结算总金额

修改人员信息,参与项目
余思翰 5 달 전
부모
커밋
0bf1081369

+ 1
- 1
oa-ui/src/components/Pagination/index.vue 파일 보기

@@ -54,7 +54,7 @@ export default {
54 54
     },
55 55
     autoScroll: {
56 56
       type: Boolean,
57
-      default: true
57
+      default: false
58 58
     },
59 59
     hidden: {
60 60
       type: Boolean,

+ 0
- 1
oa-ui/src/views/flowable/form/budget/addBudget.vue 파일 보기

@@ -771,7 +771,6 @@ export default {
771 771
         addBudgetStaff(user);
772 772
       }
773 773
       for (let car of form.chooseCar) {
774
-        console.log(form.budgetId);
775 774
         car.budgetId = form.budgetId;
776 775
         addBudgetCar(car);
777 776
       }

+ 0
- 1
oa-ui/src/views/flowable/form/procure/procureForm.vue 파일 보기

@@ -176,7 +176,6 @@ export default {
176 176
     },
177 177
     // 保存表单
178 178
     async saves() {
179
-      console.log(this.formTotal);
180 179
       if (this.formTotal != 0) {
181 180
         if (this.taskName == '编制计划') {
182 181
           this.form.planUserId = this.$refs.zhRef.localSignatureUserId;

+ 5
- 6
oa-ui/src/views/flowable/form/projectContractInfo.vue 파일 보기

@@ -2,13 +2,13 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-10-10 10:03:14
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-10-24 16:45:48
5
+ * @LastEditTime: 2024-10-25 11:35:32
6 6
 -->
7 7
 <template>
8 8
   <div>
9 9
     <el-form-item label="主合同信息" label-width="120px">
10 10
       <div v-if="hasContract" v-loading="contractLoading">
11
-        <el-descriptions border style="margin-top: 10px" :column="2" v-for="item in contractObjList">
11
+        <el-descriptions border style="margin-top: 10px" :column="2" v-for="item,index in contractObjList" :key="index">
12 12
           <el-descriptions-item label="合同名称">
13 13
             {{ item.contractName }}
14 14
           </el-descriptions-item>
@@ -49,7 +49,7 @@
49 49
     </el-form-item>
50 50
     <el-form-item label="分包合同信息" label-width="120px">
51 51
       <div v-if="hasSubContract" v-loading="subContractLoading">
52
-        <el-descriptions border style="margin-top: 10px" :column="2" v-for="item in subContractObjList">
52
+        <el-descriptions border style="margin-top: 10px" :column="2" v-for="item,index in subContractObjList" :key="index">
53 53
           <el-descriptions-item label="分包合同名称">
54 54
             {{ item.subContractName }}
55 55
           </el-descriptions-item>
@@ -112,14 +112,13 @@ export default {
112 112
       subContractObjList: [],
113 113
       hasContract: true,
114 114
       hasSubContract: true,
115
-      contractLoading: true,
116
-      subContractLoading: true,
115
+      contractLoading: false,
116
+      subContractLoading: false,
117 117
     }
118 118
   },
119 119
   methods: {
120 120
     init() {
121 121
       const projectId = this.projectId;
122
-      console.log(projectId);
123 122
       this.contractLoading = true;
124 123
       this.subContractLoading = true;
125 124
       Promise.all([listProjectContract({ projectId }), listProjectSubcontract({ projectId })]).then(async response => {

+ 13
- 11
oa-ui/src/views/flowable/form/settleForm.vue 파일 보기

@@ -1,8 +1,8 @@
1 1
 <!--
2 2
  * @Author: ysh
3 3
  * @Date: 2024-04-30 09:03:14
4
- * @LastEditors: wrh
5
- * @LastEditTime: 2024-10-22 15:20:01
4
+ * @LastEditors: Please set LastEditors
5
+ * @LastEditTime: 2024-10-25 14:04:14
6 6
 -->
7 7
 <template>
8 8
   <div class="app-container" v-loading="loading">
@@ -42,8 +42,8 @@
42 42
               </el-descriptions-item>
43 43
               <el-descriptions-item label="项目级别" label-class-name="my-label">
44 44
                 {{
45
-    chooseProject.projectLevel == "0" ? " 一般项目" : "重大项目"
46
-  }}
45
+                  chooseProject.projectLevel == "0" ? " 一般项目" : "重大项目"
46
+                }}
47 47
               </el-descriptions-item>
48 48
               <el-descriptions-item label="承担部门" label-class-name="my-label">
49 49
                 {{ chooseProject.undertakingDeptName }}
@@ -260,7 +260,7 @@
260 260
                 <td style="width: 280px">备注</td>
261 261
                 <td style="width: 100px">操作</td>
262 262
               </tr>
263
-              <tr v-for="(  work, index  ) in   settleSumList  " :key="index">
263
+              <tr v-for="(  work, index  ) in settleSumList  " :key="index">
264 264
                 <td>
265 265
                   {{ index + 1 }}
266 266
                 </td>
@@ -296,7 +296,7 @@
296 296
                 <td style="width: 280px">备注</td>
297 297
                 <td style="width: 100px">操作</td>
298 298
               </tr>
299
-              <tr v-for="(  dept, index  ) in   deptSettleList  " :key="index">
299
+              <tr v-for="(  dept, index  ) in deptSettleList  " :key="index" v-if="dept.content != '实际结算总金额'">
300 300
                 <td :rowspan="deptSettleList.length" v-if="index == 0">
301 301
                   {{ Number(actualSumSettle).toFixed(2) }}
302 302
                 </td>
@@ -308,7 +308,7 @@
308 308
                   </el-input> -->
309 309
                   <el-select v-model="dept.content" placeholder="请选择" filterable clearable style="width:100%;"
310 310
                     :disabled="isModify">
311
-                    <el-option v-for="item  in $store.state.user.deptList" :key="item.deptId" :label="item.deptName"
311
+                    <el-option v-for="item in $store.state.user.deptList" :key="item.deptId" :label="item.deptName"
312 312
                       :value="item.deptName">
313 313
                     </el-option>
314 314
                   </el-select>
@@ -405,7 +405,7 @@
405 405
               <el-col :span="6" :xs="24" :offset="12">
406 406
                 <el-form-item label="签名:" label-width="120px">
407 407
                   <span class="auditor"> {{ form.managerUserName ? form.managerUserName :
408
-    getUserName(form.managerUserId) }}
408
+                    getUserName(form.managerUserId) }}
409 409
                   </span>
410 410
                 </el-form-item>
411 411
               </el-col>
@@ -661,8 +661,8 @@ export default {
661 661
         ] = await Promise.all([
662 662
           getProject(res.rows[0].projectId),
663 663
           listBudget({ projectId: res.rows[0].projectId }),
664
-          listSettleWork({ settleId: settleId, pageSize: 30 }),
665
-          listSettleSummary({ settleId, pageSize: 20 })
664
+          listSettleWork({ settleId: settleId, pageSize: 50 }),
665
+          listSettleSummary({ settleId, pageSize: 50 })
666 666
         ]);
667 667
 
668 668
         if (projectResponse) {
@@ -713,7 +713,7 @@ export default {
713 713
           }
714 714
           this.settleSumList = settleSummaryResponse.rows.filter((item) => item.tableNumber == "0");
715 715
           this.deptSettleList = settleSummaryResponse.rows.filter(
716
-            (item) => item.tableNumber == "1"
716
+            (item) => item.tableNumber == "1" && item.content != '实际结算总金额'
717 717
           );
718 718
           this.calculateActualSumSettle();
719 719
         }
@@ -1054,6 +1054,8 @@ export default {
1054 1054
         item.settleId = settleId;
1055 1055
         addSettleSummary(item);
1056 1056
       }
1057
+      let obj = { settleId: settleId, content: '实际结算总金额', amount: (this.actualSumSettle).toFixed(2), tableNumber: 1 }
1058
+      addSettleSummary(obj)
1057 1059
     },
1058 1060
 
1059 1061
     // 更新数据

+ 0
- 1
oa-ui/src/views/flowable/form/technicalPlan.vue 파일 보기

@@ -590,7 +590,6 @@ export default {
590 590
     },
591 591
     async confirmExamine() {
592 592
       let res = this.common == '0' ? false : true;
593
-      console.log(res);
594 593
       this.$set(this.taskForm.variables, "common", res);
595 594
       if (this.taskName == '技术审核') {
596 595
         let res = await getUsersDeptLeaderByDept({ deptId: 109 })

+ 1
- 2
oa-ui/src/views/flowable/task/myProcess/index.vue 파일 보기

@@ -2,7 +2,7 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-01-03 09:23:11
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-09-30 15:19:58
5
+ * @LastEditTime: 2024-10-25 14:05:06
6 6
 -->
7 7
 <template>
8 8
   <div class="app-container">
@@ -291,7 +291,6 @@ export default {
291 291
     },
292 292
     /**  发起流程申请 */
293 293
     async handleStartProcess(row) {
294
-      console.log(row);
295 294
       if (row.name == "绩效审批") {
296 295
         let deptId = this.$store.getters.deptId;
297 296
         let reportTime = parseTime(new Date(), '{y}-{m}')

+ 4
- 4
oa-ui/src/views/oa/staff/info.vue 파일 보기

@@ -2,7 +2,7 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-03-22 14:50:46
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-08-08 10:42:03
5
+ * @LastEditTime: 2024-10-25 15:07:27
6 6
 -->
7 7
 <template>
8 8
   <div class="bg" v-loading="loading">
@@ -270,7 +270,6 @@ export default {
270 270
 <style lang="scss" scoped>
271 271
 .bg {
272 272
   background-color: #F0F2F5;
273
-  height: 1000px;
274 273
 }
275 274
 
276 275
 .header {
@@ -295,7 +294,7 @@ export default {
295 294
 
296 295
 .userInfo {
297 296
   background-color: #fff;
298
-  // height: 800px;
297
+  height: 900px;
299 298
   margin-right: 40px;
300 299
   padding: 5px;
301 300
 
@@ -355,7 +354,8 @@ export default {
355 354
 
356 355
 .stateInfo {
357 356
   background-color: #fff;
358
-  height: 800px;
357
+  height: 900px;
358
+  overflow-y: scroll;
359 359
   padding: 10px 30px 0;
360 360
 }
361 361
 </style>

+ 52
- 38
oa-ui/src/views/oa/staff/participate.vue 파일 보기

@@ -1,57 +1,44 @@
1 1
 <!--
2 2
  * @Author: wrh
3 3
  * @Date: 2024-03-25 17:38:39
4
- * @LastEditors: wrh
5
- * @LastEditTime: 2024-07-25 16:02:48
4
+ * @LastEditors: Please set LastEditors
5
+ * @LastEditTime: 2024-10-25 15:25:30
6 6
 -->
7 7
 <template>
8 8
   <div>
9
-    <!-- <el-table :data="tableData" style="width: 100%" height="660px" :row-style="{height: '60px'}"> -->
10
-    <!-- <el-table-column type="expand">
11
-        <template slot-scope="props">
12
-          <div style="background-color: #F0F2F5;">
13
-            <el-descriptions direction="vertical" :column="3" border>
14
-              <el-descriptions-item label="工作内容">XXXXXX</el-descriptions-item>
15
-              <el-descriptions-item label="工作量">XXXXXX</el-descriptions-item>
16
-              <el-descriptions-item label="单位" :span="2">km²</el-descriptions-item>
17
-            </el-descriptions>
18
-          </div>
19
-        </template>
20
-      </el-table-column> -->
21
-    <!-- <el-table-column label="项目编号" width="100px" prop="projectNumber">
22
-      </el-table-column>
23
-      <el-table-column label="项目名称" prop="projectName">
24
-      </el-table-column>
25
-      <el-table-column label="项目负责人" width="100px" prop="projectLeaderUser.nickName">
26
-      </el-table-column>
27
-      <el-table-column label="承担部门" prop="undertakingDeptName">
28
-      </el-table-column>
29
-    </el-table> -->
30
-    <el-collapse v-model="activeNames" @change="handleChange">
31
-      <el-collapse-item :name="item.projectNumber" v-for="item in tableData" :key="item.projectNumber">
9
+    <el-collapse v-model="activeNames" @change="handleChange" accordion>
10
+      <el-collapse-item :name="item.projectId" v-for="item in tableData" :key="item.projectNumber">
32 11
         <template slot="title">
33
-          <div>
34
-            <svg-icon icon-class="ArrowRight" class="info-icon"></svg-icon>
35
-            {{ item.projectNumber + ' ' + ' ' + item.projectName + ' ' + ' ' + item.projectLeaderUser.nickName }}
12
+          <div :class="{ active: activeNames == item.projectId }">
13
+            <svg-icon :icon-class="activeNames == item.projectId ? 'ArrowDown' : 'ArrowRight'"
14
+              class="info-icon"></svg-icon>
15
+            {{ item.projectNumber + ' ' + ' ' + item.projectName + ' ' + ' ' + getUserName(item.projectLeader) }}
36 16
           </div>
37 17
         </template>
38
-        <div style="background-color: #F0F2F5;">
39
-          <el-descriptions direction="vertical" :column="3" border>
40
-            <el-descriptions-item label="工作内容">暂无信息,敬请期待</el-descriptions-item>
41
-            <el-descriptions-item label="工作量">暂无信息,敬请期待</el-descriptions-item>
42
-            <el-descriptions-item label="单位" :span="2">暂无信息,敬请期待</el-descriptions-item>
43
-          </el-descriptions>
18
+        <div class="tables">
19
+          <el-table :data="workData" style="width: 100%" align="center" v-loading="tableLoading" height="300px">
20
+            <el-table-column type="index" label="序号" />
21
+            <el-table-column prop="workType" label="工作类型" />
22
+            <el-table-column prop="workItem" label="工作项目" />
23
+            <el-table-column prop="workContent" label="工作内容" />
24
+            <el-table-column prop="workLoad" label="工作量" />
25
+          </el-table>
26
+          <div class="mt10" style="text-align:right;">
27
+            <el-pagination small layout="total,prev, pager, next" :total="workTotal" :current-page="pageNum"
28
+              @current-change="changePageNum"></el-pagination>
29
+          </div>
44 30
         </div>
45 31
       </el-collapse-item>
46 32
     </el-collapse>
47 33
     <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
48
-      @pagination="getListByPaticipates" />
34
+      :autoScroll="false" @pagination="getListByPaticipates" />
49 35
   </div>
50 36
 </template>
51 37
 
52 38
 <script>
53
-
54 39
 import { listProject } from "@/api/oa/project/project";
40
+import { listDeclare } from "@/api/oa/declare/declare"
41
+import { getDeclare } from "../../../api/oa/declare/declare";
55 42
 export default {
56 43
   data() {
57 44
     return {
@@ -64,7 +51,11 @@ export default {
64 51
       // 总条数
65 52
       total: 0,
66 53
       tableData: [],
67
-      activeNames: ['1'],
54
+      activeNames: '',
55
+      workData: [],
56
+      workTotal: 0,
57
+      tableLoading: false,
58
+      pageNum: 1,
68 59
     }
69 60
   },
70 61
   created() {
@@ -72,7 +63,21 @@ export default {
72 63
   },
73 64
   methods: {
74 65
     handleChange(val) {
75
-
66
+      if (val) {
67
+        this.getDeclareList();
68
+      }
69
+    },
70
+    getDeclareList() {
71
+      this.tableLoading = true
72
+      listDeclare({ pageNum: this.pageNum, projectId: this.activeNames, userId: this.$route.query.userId }).then(res => {
73
+        this.workData = res.rows;
74
+        this.workTotal = res.total;
75
+        this.tableLoading = false
76
+      })
77
+    },
78
+    changePageNum(val) {
79
+      this.pageNum = val;
80
+      this.getDeclareList();
76 81
     },
77 82
     getListByPaticipates() {
78 83
       this.queryParams.participates = this.$route.query.userId;
@@ -89,4 +94,13 @@ export default {
89 94
 .info-icon {
90 95
   font-size: 20px;
91 96
 }
97
+
98
+.active {
99
+  color: var(--current-color);
100
+}
101
+
102
+.tables {
103
+  border: 1px solid #e2e1e1;
104
+  padding: 10px;
105
+}
92 106
 </style>

+ 7
- 4
oa-ui/src/views/oa/staff/projectInfo.vue 파일 보기

@@ -1,8 +1,8 @@
1 1
 <!--
2 2
  * @Author: wrh
3 3
  * @Date: 2024-03-25 17:38:39
4
- * @LastEditors: wrh
5
- * @LastEditTime: 2024-07-25 15:57:16
4
+ * @LastEditors: Please set LastEditors
5
+ * @LastEditTime: 2024-10-25 14:30:36
6 6
 -->
7 7
 <template>
8 8
   <div>
@@ -17,12 +17,15 @@
17 17
             </el-descriptions>
18 18
           </div>
19 19
         </template>
20
-      </el-table-column> -->
20
+</el-table-column> -->
21 21
       <el-table-column label="项目编号" width="100px" prop="projectNumber">
22 22
       </el-table-column>
23 23
       <el-table-column label="项目名称" prop="projectName">
24 24
       </el-table-column>
25
-      <el-table-column label="项目负责人" width="100px" prop="projectLeaderUser.nickName">
25
+      <el-table-column label="项目负责人" width="100px" prop="projectLeader">
26
+        <template slot-scope="scope">
27
+          {{ getUserName(scope.row.projectLeader) }}
28
+        </template>
26 29
       </el-table-column>
27 30
       <el-table-column label="承担部门" prop="undertakingDeptName">
28 31
       </el-table-column>

+ 1
- 2
oa-ui/src/views/statistics/index.vue 파일 보기

@@ -2,7 +2,7 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-10-11 09:23:15
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-10-24 16:01:43
5
+ * @LastEditTime: 2024-10-25 09:50:41
6 6
 -->
7 7
 <template>
8 8
   <div class="app-container bg">
@@ -85,7 +85,6 @@ export default {
85 85
     async getBorrowInfo() {
86 86
       let res = await getBorrowStatistic();
87 87
       this.borrowInfo = res.data;
88
-      console.log(res.data);
89 88
     },
90 89
     async getSettleInfo(){
91 90
       let res = await getSettleStatistic();

Loading…
취소
저장