浏览代码

新增合同退回操作

余思翰 6 个月前
父节点
当前提交
4f22ec5dc5

+ 0
- 15
oa-ui/src/views/flowable/form/budget/budgetDetails.vue 查看文件

1
-<template>
2
-  <div>
3
-
4
-  </div>
5
-</template>
6
-
7
-<script>
8
-  export default {
9
-    
10
-  }
11
-</script>
12
-
13
-<style lang="scss" scoped>
14
-
15
-</style>

+ 38
- 21
oa-ui/src/views/flowable/form/business/contractForm.vue 查看文件

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-05-10 15:31:57
3
  * @Date: 2024-05-10 15:31:57
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-10-09 14:19:38
5
+ * @LastEditTime: 2024-12-06 16:51:17
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div class="app-container">
8
   <div class="app-container">
13
         <div style="text-align:right;">
13
         <div style="text-align:right;">
14
           <el-button type="warning" size="mini" @click="gotoProjectRegister()" icon="el-icon-plus">项目登记、安排生产</el-button>
14
           <el-button type="warning" size="mini" @click="gotoProjectRegister()" icon="el-icon-plus">项目登记、安排生产</el-button>
15
         </div>
15
         </div>
16
+        <div class="mt20 mb20" v-if="showAlter && flowDisabled">
17
+          <el-alert title="任务被退回,请修改后重新提交" type="error" :closable="false">
18
+            <return-comment :taskForm="taskForm" @isReturn="isReturn"></return-comment>
19
+          </el-alert>
20
+        </div>
16
         <el-form ref="form" :model="form" :rules="rules" label-width="130px" :disabled="formDisabled">
21
         <el-form ref="form" :model="form" :rules="rules" label-width="130px" :disabled="formDisabled">
17
           <el-form-item label="投标项目名称:" prop="tenderId">
22
           <el-form-item label="投标项目名称:" prop="tenderId">
18
             <el-button type="primary" size="mini" @click="tbOpen = true" v-if="taskName == '合同拟稿'">选择投标项目</el-button>
23
             <el-button type="primary" size="mini" @click="tbOpen = true" v-if="taskName == '合同拟稿'">选择投标项目</el-button>
352
         <div style="text-align: center;" v-if="taskName">
357
         <div style="text-align: center;" v-if="taskName">
353
           <el-button type="warning" @click="saves()" :disabled="formDisabled" v-if="taskName == '合同拟稿'">保 存</el-button>
358
           <el-button type="warning" @click="saves()" :disabled="formDisabled" v-if="taskName == '合同拟稿'">保 存</el-button>
354
           <el-button type="primary" @click="submitForm" :disabled="formDisabled">提 交</el-button>
359
           <el-button type="primary" @click="submitForm" :disabled="formDisabled">提 交</el-button>
360
+          <el-button type="danger" @click="returnOpen = true" :disabled="formDisabled"
361
+            v-if="taskName == '分管审核' || taskName == '总经理审核'">退
362
+            回</el-button>
355
         </div>
363
         </div>
356
       </el-col>
364
       </el-col>
357
       <el-col :span="6" :xs="24" v-if="flowDisabled">
365
       <el-col :span="6" :xs="24" v-if="flowDisabled">
382
     <el-drawer :visible.sync="subInfoOpen" title="" :size="'55%'" append-to-body>
390
     <el-drawer :visible.sync="subInfoOpen" title="" :size="'55%'" append-to-body>
383
       <sub-contract :taskForm="subContractId" :taskName="''" :formDisabled="true" :flowDisabled="false"></sub-contract>
391
       <sub-contract :taskForm="subContractId" :taskName="''" :formDisabled="true" :flowDisabled="false"></sub-contract>
384
     </el-drawer>
392
     </el-drawer>
393
+    <el-dialog title="退回" :visible.sync="returnOpen" width="40%" append-to-body>
394
+      <return-btn :taskForm="taskForm" :comment="taskName == '分管审核' ? form.managerComment : form.gmComment" @goBack="$emit('goBack')" @saves="" @cancel="returnOpen = false"></return-btn>
395
+    </el-dialog>
385
   </div>
396
   </div>
386
 </template>
397
 </template>
387
 
398
 
402
 import { listSubContract, getSubContract, delSubContract, addSubContract, updateSubContract } from "@/api/oa/contract/subContract";
413
 import { listSubContract, getSubContract, delSubContract, addSubContract, updateSubContract } from "@/api/oa/contract/subContract";
403
 import { listContractSubcontract, delContractSubcontract, addContractSubcontract } from "@/api/oa/contract/contractSubcontract"
414
 import { listContractSubcontract, delContractSubcontract, addContractSubcontract } from "@/api/oa/contract/contractSubcontract"
404
 import flow from '@/views/flowable/task/todo/detail/flow'
415
 import flow from '@/views/flowable/task/todo/detail/flow'
405
-import { definitionStart,flowXmlAndNode } from "@/api/flowable/definition";
406
-import ChooseProject from '../components/chooseProject.vue';
407
-import ChooseTender from '../components/chooseTender.vue';
416
+import { definitionStart, flowXmlAndNode } from "@/api/flowable/definition";
408
 import { listPartyA } from "@/api/oa/partyA/partyA";
417
 import { listPartyA } from "@/api/oa/partyA/partyA";
409
-import FileItem from './fileItem.vue';
410
 import { mapGetters } from "vuex";
418
 import { mapGetters } from "vuex";
411
-import ChoosePartyA from '@/views/flowable/form/components/choosePartyA.vue';
412
-import workTable from './components/workTable.vue';
413
-import paymentTable from './components/paymentTable.vue';
414
 import projectInfo from '@/views/oa/project/info'
419
 import projectInfo from '@/views/oa/project/info'
415
-import ChooseSubcontract from '@/views/flowable/form/components/chooseSubcontract.vue';
416
-import subContract from '@/views/flowable/form/business/subContract.vue';
417
 import { listDefinition } from "@/api/flowable/definition";
420
 import { listDefinition } from "@/api/flowable/definition";
418
 import { Snowflake } from '@/utils/snowFlake.js'
421
 import { Snowflake } from '@/utils/snowFlake.js'
419
 import { todoList, getNextFlowNodeByStart } from "@/api/flowable/todo";
422
 import { todoList, getNextFlowNodeByStart } from "@/api/flowable/todo";
423
+
424
+import FileItem from './fileItem.vue';
425
+import ChooseProject from '../components/chooseProject.vue';
426
+import ChooseTender from '../components/chooseTender.vue';
427
+import workTable from './components/workTable.vue';
428
+import paymentTable from './components/paymentTable.vue';
429
+import subContract from '@/views/flowable/form/business/subContract.vue';
430
+import ChoosePartyA from '@/views/flowable/form/components/choosePartyA.vue';
431
+import ChooseSubcontract from '@/views/flowable/form/components/chooseSubcontract.vue';
432
+import ReturnComment from '@/views/flowable/form/components/flowBtn/returnComment.vue';
433
+import ReturnBtn from '@/views/flowable/form/components/flowBtn/returnBtn.vue';
434
+
420
 export default {
435
 export default {
421
   dicts: ['cmc_scale_grade', 'cmc_unit'],
436
   dicts: ['cmc_scale_grade', 'cmc_unit'],
422
   components: {
437
   components: {
423
-    flow,
424
-    ChooseProject,
425
-    ChooseTender,
426
-    FileItem,
427
-    ChoosePartyA,
428
-    workTable,
429
-    paymentTable, projectInfo, ChooseSubcontract, subContract
438
+    flow, ChooseProject, ChooseTender, FileItem, ChoosePartyA, workTable, paymentTable,
439
+    projectInfo, ChooseSubcontract, subContract, ReturnComment, ReturnBtn
430
   },
440
   },
431
   props: {
441
   props: {
432
     taskName: {
442
     taskName: {
549
       clickTd: {},
559
       clickTd: {},
550
       subContractId: {
560
       subContractId: {
551
         formId: ''
561
         formId: ''
552
-      }
562
+      },
563
+      showAlter: true,
564
+      returnOpen: false,
553
     };
565
     };
554
   },
566
   },
555
   created() {
567
   created() {
926
       if (!this.isDocumentValid) {
938
       if (!this.isDocumentValid) {
927
         return;
939
         return;
928
       }
940
       }
941
+      console.log(this.commentList);
942
+      
929
       this.$refs["form"].validate(valid => {
943
       this.$refs["form"].validate(valid => {
930
         if (valid) {
944
         if (valid) {
931
           if (this.formTotal != 0) {
945
           if (this.formTotal != 0) {
946
                   });
960
                   });
947
                 })
961
                 })
948
               }
962
               }
949
-              else if (this.taskName == '线上会审') {
963
+              else if (this.taskName == '线上会审' ) {
950
                 for (let comment of this.commentList) {
964
                 for (let comment of this.commentList) {
951
                   updateContractComment(comment);
965
                   updateContractComment(comment);
952
                 }
966
                 }
1078
           let approvalList = [];
1092
           let approvalList = [];
1079
           for (let comment of this.commentList) {
1093
           for (let comment of this.commentList) {
1080
             comment.contractId = this.form.contractId
1094
             comment.contractId = this.form.contractId
1081
-            addContractComment(comment);
1095
+            if (!this.showAlter) { addContractComment(comment); }
1082
             approvalList.push(comment.userId)
1096
             approvalList.push(comment.userId)
1083
           }
1097
           }
1084
           this.$set(this.taskForm.variables, "approvalList", approvalList);
1098
           this.$set(this.taskForm.variables, "approvalList", approvalList);
1221
           variables.variables = formData;
1235
           variables.variables = formData;
1222
           let routePath = this.getRoutePath(row);
1236
           let routePath = this.getRoutePath(row);
1223
           this.$emit('goBack');
1237
           this.$emit('goBack');
1224
-          this.$cache.local.set('contractId',`${this.taskForm.formId}`)
1238
+          this.$cache.local.set('contractId', `${this.taskForm.formId}`)
1225
           definitionStart(row.id, JSON.stringify(variables)).then(res => {
1239
           definitionStart(row.id, JSON.stringify(variables)).then(res => {
1226
             this.$modal.msgSuccess(res.msg);
1240
             this.$modal.msgSuccess(res.msg);
1227
             let procInstanceId = res.data;
1241
             let procInstanceId = res.data;
1263
       }
1277
       }
1264
       return path
1278
       return path
1265
     },
1279
     },
1280
+    isReturn(val) {
1281
+      this.showAlter = val
1282
+    }
1266
   }
1283
   }
1267
 }
1284
 }
1268
 </script>
1285
 </script>

+ 28
- 28
oa-ui/src/views/flowable/form/business/subContract.vue 查看文件

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-05-10 15:31:57
3
  * @Date: 2024-05-10 15:31:57
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-10-08 09:29:11
5
+ * @LastEditTime: 2024-12-06 16:50:54
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div class="app-container">
8
   <div class="app-container">
9
     <el-row :gutter="20">
9
     <el-row :gutter="20">
10
       <el-col :span="flowDisabled ? 18 : 24" :xs="24">
10
       <el-col :span="flowDisabled ? 18 : 24" :xs="24">
11
         <h2 class="text-center">分包合同评审表</h2>
11
         <h2 class="text-center">分包合同评审表</h2>
12
+        <div class="mt20 mb20" v-if="showAlter && flowDisabled">
13
+          <el-alert title="任务被退回,请修改后重新提交" type="error" :closable="false">
14
+            <return-comment :taskForm="taskForm" @isReturn="isReturn"></return-comment>
15
+          </el-alert>
16
+        </div>
12
         <el-form ref="form" :model="form" :rules="rules" label-width="130px" :formDisabled="formDisabled">
17
         <el-form ref="form" :model="form" :rules="rules" label-width="130px" :formDisabled="formDisabled">
13
           <el-divider></el-divider>
18
           <el-divider></el-divider>
14
           <el-form-item label="分包合同名称" prop="subContractName">
19
           <el-form-item label="分包合同名称" prop="subContractName">
322
         <div style="text-align: center;" v-if="flowDisabled">
327
         <div style="text-align: center;" v-if="flowDisabled">
323
           <el-button type="warning" @click="saves()" :disabled="formDisabled" v-if="taskName == '合同拟稿'">保 存</el-button>
328
           <el-button type="warning" @click="saves()" :disabled="formDisabled" v-if="taskName == '合同拟稿'">保 存</el-button>
324
           <el-button type="primary" @click="submitForm" :disabled="formDisabled">提 交</el-button>
329
           <el-button type="primary" @click="submitForm" :disabled="formDisabled">提 交</el-button>
330
+          <el-button type="danger" @click="returnOpen = true" :disabled="formDisabled"
331
+            v-if="taskName == '分管审核' || taskName == '总经理审核'">退
332
+            回</el-button>
325
         </div>
333
         </div>
326
       </el-col>
334
       </el-col>
327
       <el-col :span="6" :xs="24" v-if="flowDisabled">
335
       <el-col :span="6" :xs="24" v-if="flowDisabled">
346
     <el-drawer :visible.sync="formOpen" title="" :size="'55%'" append-to-body>
354
     <el-drawer :visible.sync="formOpen" title="" :size="'55%'" append-to-body>
347
       <contract-form :taskForm="contractId" :taskName="''" :formDisabled="true" :flowDisabled="false"></contract-form>
355
       <contract-form :taskForm="contractId" :taskName="''" :formDisabled="true" :flowDisabled="false"></contract-form>
348
     </el-drawer>
356
     </el-drawer>
357
+    <el-dialog title="退回" :visible.sync="returnOpen" width="40%" append-to-body>
358
+      <return-btn :taskForm="taskForm" :comment="taskName == '分管审核' ? form.managerComment : form.gmComment"
359
+        @goBack="$emit('goBack')" @saves="" @cancel="returnOpen = false"></return-btn>
360
+    </el-dialog>
349
   </div>
361
   </div>
350
 </template>
362
 </template>
351
 
363
 
368
 import flow from '@/views/flowable/task/todo/detail/flow'
380
 import flow from '@/views/flowable/task/todo/detail/flow'
369
 import { flowXmlAndNode } from "@/api/flowable/definition";
381
 import { flowXmlAndNode } from "@/api/flowable/definition";
370
 import { complete, rejectTask, returnList, returnTask, getNextFlowNode, delegate, flowTaskForm, } from "@/api/flowable/todo";
382
 import { complete, rejectTask, returnList, returnTask, getNextFlowNode, delegate, flowTaskForm, } from "@/api/flowable/todo";
371
-import projectChoose from '../components/chooseProject.vue';
372
-import FileItem from './fileItem.vue';
373
 import { mapGetters } from "vuex";
383
 import { mapGetters } from "vuex";
374
-import ChoosePartner from '../components/choosePartner.vue';
384
+
385
+import projectInfo from '@/views/oa/project/info'
386
+import FileItem from './fileItem.vue';
375
 import workTable from './components/workTable.vue';
387
 import workTable from './components/workTable.vue';
376
 import paymentTable from './components/paymentTable.vue';
388
 import paymentTable from './components/paymentTable.vue';
389
+import projectChoose from '../components/chooseProject.vue';
390
+import ChoosePartner from '../components/choosePartner.vue';
377
 import contractForm from '@/views/flowable/form/business/contractForm.vue';
391
 import contractForm from '@/views/flowable/form/business/contractForm.vue';
378
-import projectInfo from '@/views/oa/project/info'
392
+import ReturnBtn from '@/views/flowable/form/components/flowBtn/returnBtn.vue';
393
+import ReturnComment from '@/views/flowable/form/components/flowBtn/returnComment.vue';
379
 export default {
394
 export default {
380
   dicts: ['cmc_scale_grade', 'cmc_unit'],
395
   dicts: ['cmc_scale_grade', 'cmc_unit'],
381
   components: {
396
   components: {
387
     paymentTable,
402
     paymentTable,
388
     contractForm,
403
     contractForm,
389
     projectInfo,
404
     projectInfo,
405
+    ReturnComment,
406
+    ReturnBtn
390
   },
407
   },
391
   props: {
408
   props: {
392
     taskName: {
409
     taskName: {
532
         formId: ''
549
         formId: ''
533
       },
550
       },
534
       drawerOpen: false,
551
       drawerOpen: false,
552
+      showAlter: true,
553
+      returnOpen: false,
535
     };
554
     };
536
   },
555
   },
537
   created() {
556
   created() {
971
         let approvalList = [];
990
         let approvalList = [];
972
         for (let comment of this.commentList) {
991
         for (let comment of this.commentList) {
973
           comment.contractId = this.form.subContractId
992
           comment.contractId = this.form.subContractId
974
-          addContractComment(comment);
993
+          if (!this.showAlter) { addContractComment(comment); }
975
           approvalList.push(comment.userId)
994
           approvalList.push(comment.userId)
976
         }
995
         }
977
         this.$set(this.taskForm.variables, "approvalList", approvalList);
996
         this.$set(this.taskForm.variables, "approvalList", approvalList);
989
         handleComplete(this.taskForm);
1008
         handleComplete(this.taskForm);
990
       }
1009
       }
991
     },
1010
     },
992
-    // updateChooseProjectList() {
993
-    //   this.workList = this.$refs.workTableRef.workList;
994
-    //   this.paymentList = this.$refs.paymentRef.paymentList;
995
-    //   const subContractId = this.taskForm.formId
996
-    //   delProjectSubcontract(subContractId).then(() => {
997
-    //     this.chooseProjectList.forEach(item => {
998
-    //       addProjectSubcontract({ subContractId: subContractId, projectId: item.projectId })
999
-    //     })
1000
-    //   })
1001
-    //   delContractWork(subContractId).then(() => {
1002
-    //     for (let work of this.workList) {
1003
-    //       work.contractId = subContractId;
1004
-    //       addContractWork(work);
1005
-    //     }
1006
-    //   })
1007
-    //   delContractPayment(subContractId).then(() => {
1008
-    //     for (let payment of this.paymentList) {
1009
-    //       payment.contractId = subContractId;
1010
-    //       addContractPayment(payment);
1011
-    //     }
1012
-    //   })
1013
-    // },
1014
     async updateChooseProjectList() {
1011
     async updateChooseProjectList() {
1015
       this.workList = this.$refs.workTableRef.workList;
1012
       this.workList = this.$refs.workTableRef.workList;
1016
       this.paymentList = this.$refs.paymentRef.paymentList;
1013
       this.paymentList = this.$refs.paymentRef.paymentList;
1172
       this.$router.replace({ query: { ...this.$route.query, projectId: row.projectId } });
1169
       this.$router.replace({ query: { ...this.$route.query, projectId: row.projectId } });
1173
       this.drawerOpen = true;
1170
       this.drawerOpen = true;
1174
     },
1171
     },
1172
+    isReturn(val) {
1173
+      this.showAlter = val
1174
+    }
1175
   }
1175
   }
1176
 };
1176
 };
1177
 </script>
1177
 </script>

+ 15
- 5
oa-ui/src/views/flowable/form/components/flowBtn/returnBtn.vue 查看文件

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-09-27 15:19:36
3
  * @Date: 2024-09-27 15:19:36
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-10-15 15:30:48
5
+ * @LastEditTime: 2024-12-06 15:25:39
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div>
8
   <div>
14
         </el-radio-group>
14
         </el-radio-group>
15
       </el-form-item>
15
       </el-form-item>
16
       <el-form-item label="退回意见" prop="comment">
16
       <el-form-item label="退回意见" prop="comment">
17
-        <el-input  type="textarea" v-model="taskForm.comment" placeholder="请输入意见" />
17
+        <el-input type="textarea" v-model="taskForm.comment" placeholder="请输入意见" />
18
       </el-form-item>
18
       </el-form-item>
19
     </el-form>
19
     </el-form>
20
     <div class="text-center">
20
     <div class="text-center">
31
     taskForm: {
31
     taskForm: {
32
       type: Object,
32
       type: Object,
33
       require: true
33
       require: true
34
+    },
35
+    comment: {
36
+      type: String,
37
+      default: ''
34
     }
38
     }
35
   },
39
   },
36
   data() {
40
   data() {
37
     return {
41
     return {
38
       form: {},
42
       form: {},
39
       returnTaskList: [],
43
       returnTaskList: [],
40
-      rules:{
41
-        targetKey:[{ required: true, message: '请选择退回节点', trigger: 'change' }],
42
-        comment:[{ required: true, message: '请输入意见', trigger: 'blur' }],
44
+      rules: {
45
+        targetKey: [{ required: true, message: '请选择退回节点', trigger: 'change' }],
46
+        comment: [{ required: true, message: '请输入意见', trigger: 'blur' }],
43
       }
47
       }
44
     }
48
     }
45
   },
49
   },
46
   created() {
50
   created() {
47
     this.handleReturn();
51
     this.handleReturn();
48
   },
52
   },
53
+  mounted() {
54
+    debugger
55
+    if(this.comment != ''){
56
+      this.taskForm.comment = this.comment
57
+    }
58
+  },
49
   methods: {
59
   methods: {
50
     /** 可退回任务列表 */
60
     /** 可退回任务列表 */
51
     handleReturn() {
61
     handleReturn() {

+ 0
- 1
oa-ui/src/views/oa/contract/components/subEdit.vue 查看文件

311
             for (let comment of this.commentList) {
311
             for (let comment of this.commentList) {
312
               updateContractComment(comment);
312
               updateContractComment(comment);
313
             }
313
             }
314
-            debugger
315
             if (this.form.partnerId)
314
             if (this.form.partnerId)
316
               this.form.partnerId = this.form.partnerId.join(',')
315
               this.form.partnerId = this.form.partnerId.join(',')
317
             this.updateSubContractFn()
316
             this.updateSubContractFn()

+ 3
- 3
oa-ui/src/views/oa/contract/index.vue 查看文件

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-06-21 18:52:00
3
  * @Date: 2024-06-21 18:52:00
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-09-25 17:05:16
5
+ * @LastEditTime: 2024-12-06 16:19:55
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div class="app-container">
8
   <div class="app-container">
47
       <el-table-column label="合同名称" align="center" prop="contractName" width="220px" />
47
       <el-table-column label="合同名称" align="center" prop="contractName" width="220px" />
48
       <el-table-column label="合同金额" align="center" prop="amount" />
48
       <el-table-column label="合同金额" align="center" prop="amount" />
49
       <el-table-column label="甲方单位" align="center" prop="partyA.partyAName" width="220px" />
49
       <el-table-column label="甲方单位" align="center" prop="partyA.partyAName" width="220px" />
50
-      <el-table-column label="合同编码" align="center" prop="contractCode" />
51
-      <el-table-column label="合同编号" align="center" prop="contractNumber" />
50
+      <el-table-column label="合同编码(公司)" align="center" prop="contractCode" />
51
+      <el-table-column label="合同编号(业主)" align="center" prop="contractNumber" />
52
       <!-- <el-table-column label="履约保证金" align="center" prop="deposit" /> -->
52
       <!-- <el-table-column label="履约保证金" align="center" prop="deposit" /> -->
53
       <el-table-column label="合同文件" align="center" prop="contractDocument" show-overflow-tooltip>
53
       <el-table-column label="合同文件" align="center" prop="contractDocument" show-overflow-tooltip>
54
         <template slot-scope="scope">
54
         <template slot-scope="scope">

+ 1
- 2
oa-ui/src/views/oa/staff/participate.vue 查看文件

2
  * @Author: wrh
2
  * @Author: wrh
3
  * @Date: 2024-03-25 17:38:39
3
  * @Date: 2024-03-25 17:38:39
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-10-25 15:25:30
5
+ * @LastEditTime: 2024-10-25 17:01:50
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div>
8
   <div>
38
 <script>
38
 <script>
39
 import { listProject } from "@/api/oa/project/project";
39
 import { listProject } from "@/api/oa/project/project";
40
 import { listDeclare } from "@/api/oa/declare/declare"
40
 import { listDeclare } from "@/api/oa/declare/declare"
41
-import { getDeclare } from "../../../api/oa/declare/declare";
42
 export default {
41
 export default {
43
   data() {
42
   data() {
44
     return {
43
     return {

+ 2
- 2
oa-ui/src/views/statistics/components/borrowStatistics.vue 查看文件

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-10-18 11:17:48
3
  * @Date: 2024-10-18 11:17:48
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-10-24 15:53:13
5
+ * @LastEditTime: 2024-10-25 17:20:59
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div style="width:100%;" v-loading="loading">
8
   <div style="width:100%;" v-loading="loading">
99
     initBorrowYearBar() {
99
     initBorrowYearBar() {
100
       let option = {
100
       let option = {
101
         title: {
101
         title: {
102
-          text: '各年借款申请次数',
102
+          text: '各年借款次数',
103
           subtext: '共计借款次数:' + Object.values(this.borrowYear).reduce((accumulator, currentValue) => accumulator + currentValue, 0) + '次'
103
           subtext: '共计借款次数:' + Object.values(this.borrowYear).reduce((accumulator, currentValue) => accumulator + currentValue, 0) + '次'
104
         },
104
         },
105
         grid: {
105
         grid: {

+ 2
- 2
oa-ui/src/views/statistics/components/settleStatistics.vue 查看文件

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-10-18 11:17:48
3
  * @Date: 2024-10-18 11:17:48
4
  * @LastEditors: Please set LastEditors
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-10-24 16:00:44
5
+ * @LastEditTime: 2024-10-25 17:20:49
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div style="width:100%;" v-loading="loading">
8
   <div style="width:100%;" v-loading="loading">
105
     initSettleYearBar() {
105
     initSettleYearBar() {
106
       let option = {
106
       let option = {
107
         title: {
107
         title: {
108
-          text: '各年结算申请次数',
108
+          text: '各年结算次数',
109
           subtext: '共计结算次数:' + Object.values(this.settleYear).reduce((accumulator, currentValue) => accumulator + currentValue, 0) + '次'
109
           subtext: '共计结算次数:' + Object.values(this.settleYear).reduce((accumulator, currentValue) => accumulator + currentValue, 0) + '次'
110
         },
110
         },
111
         grid: {
111
         grid: {

+ 2
- 2
oa-ui/src/views/statistics/components/topHead.vue 查看文件

47
       </div>
47
       </div>
48
       <div class="four item-box" @click="$emit('handleClick', 'borrow')">
48
       <div class="four item-box" @click="$emit('handleClick', 'borrow')">
49
         <div class="data-left">
49
         <div class="data-left">
50
-          <div class="data-title">{{ thisYear }}借款申请次数</div>
50
+          <div class="data-title">{{ thisYear }}借款次数</div>
51
           <div class="number">{{ borrowNum.toLocaleString('en-US') }}</div>
51
           <div class="number">{{ borrowNum.toLocaleString('en-US') }}</div>
52
           <div>
52
           <div>
53
             <span class="text-1">较去年</span>
53
             <span class="text-1">较去年</span>
62
 
62
 
63
       <div class="five item-box" @click="$emit('handleClick', 'settle')">
63
       <div class="five item-box" @click="$emit('handleClick', 'settle')">
64
         <div class="data-left">
64
         <div class="data-left">
65
-          <div class="data-title">{{ thisYear }}结算申请次数</div>
65
+          <div class="data-title">{{ thisYear }}结算次数</div>
66
           <div class="number">{{ settleNum.toLocaleString('en-US') }}</div>
66
           <div class="number">{{ settleNum.toLocaleString('en-US') }}</div>
67
           <div>
67
           <div>
68
             <span class="text-1">较去年</span>
68
             <span class="text-1">较去年</span>

正在加载...
取消
保存