浏览代码

修改预算表的显示表格

余思翰 1年前
父节点
当前提交
e948ba8340

+ 75
- 27
oa-ui/src/views/flowable/form/budget/addBudget.vue 查看文件

@@ -2,7 +2,7 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-03-25 15:05:59
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-05-21 18:04:09
5
+ * @LastEditTime: 2024-05-22 18:48:24
6 6
 -->
7 7
 <template>
8 8
   <div>
@@ -106,7 +106,9 @@
106 106
             <el-breadcrumb-item>选择项目</el-breadcrumb-item>
107 107
             <el-breadcrumb-item>{{ projectForm.projectNumber }}</el-breadcrumb-item>
108 108
             <el-breadcrumb-item>{{ projectForm.projectName }}</el-breadcrumb-item>
109
-            <el-breadcrumb-item>{{ projectForm.projectLeaderUser.nickName }}</el-breadcrumb-item>
109
+            <el-breadcrumb-item>{{ projectForm.projectLeaderUser
110
+          ? projectForm.projectLeaderUser.nickName
111
+          : "" }}</el-breadcrumb-item>
110 112
           </el-breadcrumb>
111 113
           <el-form ref="form2" :model="peopleForm" style="padding: 20px 100px 0">
112 114
             <!-- 选择人员 -->
@@ -180,7 +182,7 @@
180 182
                 <tr v-for="car in chooseCar" :key="car.carId">
181 183
                   <td>{{ car.licensePlate }}</td>
182 184
                   <td>
183
-                    <el-input v-model="car.mileage" placeholder="请输入油耗" @change="calculateCarTotal(car)"></el-input>
185
+                    {{ car.mileage }}
184 186
                   </td>
185 187
                   <td>
186 188
                     <el-input v-model="car.distance" placeholder="请输入总里程" @change="calculateCarTotal(car)"></el-input>
@@ -249,18 +251,36 @@
249 251
             <el-breadcrumb-item>选择项目</el-breadcrumb-item>
250 252
             <el-breadcrumb-item>{{ projectForm.projectNumber }}</el-breadcrumb-item>
251 253
             <el-breadcrumb-item>{{ projectForm.projectName }}</el-breadcrumb-item>
252
-            <el-breadcrumb-item>{{ projectForm.projectLeaderUser.nickName }}</el-breadcrumb-item>
254
+            <el-breadcrumb-item>{{ projectForm.projectLeaderUser
255
+          ? projectForm.projectLeaderUser.nickName
256
+          : "" }}</el-breadcrumb-item>
253 257
           </el-breadcrumb>
254 258
           <el-breadcrumb separator-class="el-icon-arrow-right" style="margin: 15px 0">
255 259
             <el-breadcrumb-item>间接成本小计</el-breadcrumb-item>
256 260
             <el-breadcrumb-item>¥ {{ budgetForm.fixCost }}</el-breadcrumb-item>
257 261
           </el-breadcrumb>
258 262
           <el-form>
259
-            <choose-money :workList="workList" :chooseUser="chooseUser" :budgetForm="budgetForm"
260
-              @getSettle="getSettle" @getWorkList="setPreSettlement"></choose-money>
261
-            <el-form-item label="其他预算:">
263
+            <choose-money :workList="workList" :chooseUser="chooseUser" :budgetForm="budgetForm" @getSettle="getSettle"
264
+              @getWorkList="setPreSettlement"></choose-money>
265
+            <el-form-item label="关联合同:" label-width="90px" v-if="contract.contractId">
262 266
               <table border="1">
267
+                <tr class="head">
268
+                  <td>合同项目</td>
269
+                  <td>合同编码</td>
270
+                  <td>合同编号</td>
271
+                  <td>合同金额</td>
272
+                </tr>
263 273
                 <tr>
274
+                  <td>{{ contract.tender ? contract.tender.projectName : '' }}</td>
275
+                  <td>{{ contract.contractCode }}</td>
276
+                  <td>{{ contract.contractNumber }}</td>
277
+                  <td>{{ contract.amount }}</td>
278
+                </tr>
279
+              </table>
280
+            </el-form-item>
281
+            <el-form-item label="其他预算:" label-width="90px">
282
+              <table border="1">
283
+                <tr class="head">
264 284
                   <td>内容</td>
265 285
                   <td>费用金额</td>
266 286
                   <td>备注</td>
@@ -268,51 +288,51 @@
268 288
                 <tr>
269 289
                   <td>外协费用</td>
270 290
                   <td>
271
-                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.outExpense" style="width: 400px"
272
-                      @change="getDirectExpense(budgetForm)"></el-input-number>
291
+                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.outExpense"
292
+                      style="width: 100%" @change="getDirectExpense(budgetForm)"></el-input-number>
273 293
                   </td>
274 294
                   <td>
275
-                    <el-input type="textarea" v-model="budgetForm.outRemark" style="width: 400px"></el-input>
295
+                    <el-input type="textarea" v-model="budgetForm.outRemark" style="width: 100%"></el-input>
276 296
                   </td>
277 297
                 </tr>
278 298
                 <tr>
279 299
                   <td>税费成本</td>
280 300
                   <td>
281
-                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.taxExpense" style="width: 400px"
282
-                      @change="getDirectExpense(budgetForm)"></el-input-number>
301
+                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.taxExpense"
302
+                      style="width: 100%" @change="getDirectExpense(budgetForm)"></el-input-number>
283 303
                   </td>
284 304
                   <td>
285
-                    <el-input type="textarea" v-model="budgetForm.taxRemark" style="width: 400px"></el-input>
305
+                    <el-input type="textarea" v-model="budgetForm.taxRemark" style="width: 100%"></el-input>
286 306
                   </td>
287 307
                 </tr>
288 308
                 <tr>
289 309
                   <td>经营管理费用</td>
290 310
                   <td>
291
-                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.businessExpense" style="width: 400px"
292
-                      @change="getDirectExpense(budgetForm)"></el-input-number>
311
+                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.businessExpense"
312
+                      style="width: 100%" @change="getDirectExpense(budgetForm)"></el-input-number>
293 313
                   </td>
294 314
                   <td>
295
-                    <el-input type="textarea" v-model="budgetForm.businessRemark" style="width: 400px"></el-input>
315
+                    <el-input type="textarea" v-model="budgetForm.businessRemark" style="width: 100%"></el-input>
296 316
                   </td>
297 317
                 </tr>
298 318
                 <tr>
299 319
                   <td>车船租赁</td>
300 320
                   <td>
301
-                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.rentExpense" style="width: 400px"
302
-                      @change="getDirectExpense(budgetForm)"></el-input-number>
321
+                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.rentExpense"
322
+                      style="width: 100%" @change="getDirectExpense(budgetForm)"></el-input-number>
303 323
                   </td>
304 324
                   <td>
305
-                    <el-input type="textarea" v-model="budgetForm.rentRemark" style="width: 400px"></el-input>
325
+                    <el-input type="textarea" v-model="budgetForm.rentRemark" style="width: 100%"></el-input>
306 326
                   </td>
307 327
                 </tr>
308 328
                 <tr>
309 329
                   <td>其他费用</td>
310 330
                   <td>
311
-                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.otherExpense" style="width: 400px"
312
-                      @change="getDirectExpense(budgetForm)"></el-input-number>
331
+                    <el-input-number :controls="false" :precision="2" v-model="budgetForm.otherExpense"
332
+                      style="width: 100%" @change="getDirectExpense(budgetForm)"></el-input-number>
313 333
                   </td>
314 334
                   <td>
315
-                    <el-input type="textarea" v-model="budgetForm.otherRemark" style="width: 400px"></el-input>
335
+                    <el-input type="textarea" v-model="budgetForm.otherRemark" style="width: 100%"></el-input>
316 336
                   </td>
317 337
                 </tr>
318 338
               </table>
@@ -331,7 +351,9 @@
331 351
             <el-breadcrumb-item>选择项目</el-breadcrumb-item>
332 352
             <el-breadcrumb-item>{{ projectForm.projectNumber }}</el-breadcrumb-item>
333 353
             <el-breadcrumb-item>{{ projectForm.projectName }}</el-breadcrumb-item>
334
-            <el-breadcrumb-item>{{ projectForm.projectLeaderUser.nickName }}</el-breadcrumb-item>
354
+            <el-breadcrumb-item>{{ projectForm.projectLeaderUser
355
+          ? projectForm.projectLeaderUser.nickName
356
+          : "" }}</el-breadcrumb-item>
335 357
           </el-breadcrumb>
336 358
           <el-breadcrumb separator-class="el-icon-arrow-right" style="margin: 15px 0">
337 359
             <el-breadcrumb-item>间接成本小计</el-breadcrumb-item>
@@ -341,7 +363,7 @@
341 363
             <el-breadcrumb-item>直接成本小计</el-breadcrumb-item>
342 364
             <el-breadcrumb-item>¥ {{ budgetForm.directExpense }}</el-breadcrumb-item>
343 365
           </el-breadcrumb>
344
-          <budget-table :budgetForm="budgetForm" :projectForm="projectForm" @getTotal="getTotalBudget"></budget-table>
366
+          <budget-table :budgetForm="budgetForm" :projectForm="projectForm"  @getTotal="getTotalBudget"></budget-table>
345 367
         </div>
346 368
         <div class="finish" v-show="activeStep == 4">
347 369
           <el-result icon="success" title="成功提示" subTitle="预算表生成完成">
@@ -415,6 +437,8 @@
415 437
 </template>
416 438
 
417 439
 <script>
440
+import { listProjectContract, addProjectContract } from "@/api/oa/contract/projectContract";
441
+import { listContract, getContract, delContract, addContract, updateContract } from "@/api/oa/contract/contract";
418 442
 import { getProject } from "@/api/oa/project/project";
419 443
 import { listProjectWork } from "@/api/oa/project/projectWork";
420 444
 import { getSalary } from "@/api/oa/staff/salary";
@@ -508,10 +532,12 @@ export default {
508 532
       openDevice: false,
509 533
       chooseCar: [],
510 534
       chooseDevice: [],
535
+      contract:{}
511 536
     };
512 537
   },
513 538
   created() {
514 539
     this.getProjectList();
540
+    this.getProjectContract();
515 541
     this.getProjectWorkList();
516 542
   },
517 543
   methods: {
@@ -526,6 +552,22 @@ export default {
526 552
         this.projectForm = response.data;
527 553
       });
528 554
     },
555
+    // 查询项目是否有合同关联
556
+    getProjectContract() {
557
+      listProjectContract({ projectId: this.taskForm.formId }).then(res => {
558
+        if (res.rows) {
559
+          console.log(res.rows);
560
+          if(res.rows.length == 1){
561
+            getContract(res.rows[0].contractId).then(result=>{
562
+              if (result.data) {
563
+                this.contract = result.data;
564
+                this.budgetForm.contract = result.data;
565
+              }
566
+            })
567
+          }
568
+        }
569
+      })
570
+    },
529 571
     getProjectWorkList() {
530 572
       listProjectWork({ projectId: this.$route.query.formId }).then(res => {
531 573
         this.workList = res.rows;
@@ -565,6 +607,9 @@ export default {
565 607
     },
566 608
     getChooseCar(val) {
567 609
       this.chooseCar = val;
610
+      for(let car of this.chooseCar){
611
+        car.mileage = 1.5
612
+      }
568 613
       this.openCar = false;
569 614
     },
570 615
     getChooseDevice(val) {
@@ -580,7 +625,6 @@ export default {
580 625
       this.budgetForm.settleExpense = val.settle;
581 626
       this.budgetForm.workList = val.workList;
582 627
       this.budgetForm.inOutPriceSum = val.inOutPriceSum
583
-      console.log(this.budgetForm);
584 628
       if (this.chooseUser.length != 0) {
585 629
         for (let s of this.chooseUser) {
586 630
           s.inOutPrice = val.inOutPrice
@@ -588,7 +632,7 @@ export default {
588 632
       }
589 633
       this.getDirectExpense(this.budgetForm);
590 634
     },
591
-    setPreSettlement(val){
635
+    setPreSettlement(val) {
592 636
       this.budgetForm.contentList = val
593 637
     },
594 638
     // 计算单个人员的成本
@@ -655,7 +699,7 @@ export default {
655 699
         device.budgetId = form.budgetId;
656 700
         addBudgetDevice(device);
657 701
       }
658
-      for (let work of form.workList) {
702
+      for (let work of form.contentList) {
659 703
         work.budgetId = form.budgetId;
660 704
         addBudgetSettle(work)
661 705
       }
@@ -751,6 +795,7 @@ export default {
751 795
 }
752 796
 
753 797
 table {
798
+  width: 100%;
754 799
   /*居中*/
755 800
   // margin: 0 auto;
756 801
   /*边框*/
@@ -764,6 +809,9 @@ table {
764 809
     padding: 3px;
765 810
   }
766 811
 }
812
+.head{
813
+  font-weight: bold;
814
+}
767 815
 
768 816
 ::v-deep .el-input.is-disabled .el-input__inner {
769 817
   background-color: #fff;

+ 116
- 93
oa-ui/src/views/flowable/form/budget/budgetInfo.vue 查看文件

@@ -1,125 +1,142 @@
1 1
 <!--
2 2
  * @Author: ysh
3 3
  * @Date: 2024-04-03 16:28:09
4
- * @LastEditors: wrh
5
- * @LastEditTime: 2024-04-29 14:28:28
4
+ * @LastEditors: Please set LastEditors
5
+ * @LastEditTime: 2024-05-22 19:10:22
6 6
 -->
7 7
 <template>
8 8
   <div class="main">
9 9
     <h2 style="text-align: center">项目直接生产成本预算表</h2>
10 10
     <table border="1" class="table">
11 11
       <tr>
12
-        <td class="head">项目名称</td>
13
-        <td colspan="3">{{ budgetForm.project ? budgetForm.project.projectName : '' }}</td>
14
-        <td class="head">项目编号</td>
15
-        <td colspan="2">{{ budgetForm.project ? budgetForm.project.projectNumber : '' }}</td>
12
+        <td style="width: 100px;">项目名称</td>
13
+        <td colspan="6">{{ budgetForm.project ? budgetForm.project.projectName : '' }}</td>
14
+        <td>项目编号</td>
15
+        <td colspan="1">{{ budgetForm.project ? budgetForm.project.projectNumber : '' }}</td>
16 16
       </tr>
17 17
       <tr>
18
-        <td :rowspan="userLen" class="head vertical-text">人员</td>
19
-        <td class="head" style="width:250px">姓名</td>
20
-        <td class="head">部门</td>
21
-        <td class="head">岗位工资</td>
22
-        <td class="head">人员成本(天)</td>
23
-        <!-- <td class="head">进出场单价</td> -->
24
-        <td class="head">预算天数</td>
25
-        <td class="head">金额</td>
26
-      </tr>
27
-      <tr v-for="user, index in chooseUser" :key="'user' + index">
18
+        <td :rowspan="workLen + 2">直接成本</td>
19
+        <td>工作简述</td>
20
+        <td>工作内容</td>
21
+        <td>数量</td>
22
+        <td>单价</td>
23
+        <td>单位</td>
24
+        <td>系数</td>
25
+        <td>金额</td>
26
+        <td style="width: 250px;">备注</td>
27
+      </tr>
28
+      <tr v-for="work in workList">
29
+        <td>{{ work.content }}</td>
30
+        <td>{{ work.cmcPrice ? work.cmcPrice.workItem:''}}</td>
31
+        <td>{{ work.workload }}</td>
32
+        <td>{{ work.price }}</td>
33
+        <td>{{ work.unit }}</td>
34
+        <td>{{ work.coefficient }}</td>
35
+        <td>{{ work.settle }}</td>
36
+        <td>{{ work.remark ? work.remark : '' }}</td>
37
+      </tr>
38
+      <tr>
39
+        <td :colspan="6" class="head">直接成本合计</td>
40
+        <td :colspan="1" class="head">{{ budgetForm.settleExpense }}</td>
41
+        <td></td>
42
+      </tr>
43
+      <tr>
44
+        <td :rowspan="userLen + carLen + deviceLen + 2">间接成本</td>
45
+      </tr>
46
+      <tr v-if="userLen != 1">
47
+        <td :rowspan="userLen">人员</td>
48
+        <td>姓名</td>
49
+        <td>基本工资</td>
50
+        <td>岗位工资</td>
51
+        <td>人员成本(天)</td>
52
+        <td>预算天数</td>
53
+        <td>金额</td>
54
+        <td></td>
55
+      </tr>
56
+      <tr v-for="user in chooseUser" :key="'user' + user.userId">
28 57
         <td>{{ user.user ? user.user.nickName : '' }}</td>
29
-        <td>{{ user.dept? user.dept.deptName : '' }}</td>
58
+        <td>1780</td>
30 59
         <td>{{ user.salary.salary }}</td>
31
-        <td>{{ parseFloat(user.salary.salary / 31).toFixed(2) }}</td>
60
+        <td>{{ parseFloat((user.salary.salary + 1780) / 21.75).toFixed(2) }}</td>
32 61
         <td>{{ user.days }}</td>
33 62
         <td>{{ user.staffCost }}</td>
63
+        <td></td>
34 64
       </tr>
35
-      <tr>
36
-        <td :rowspan="carLen" class="head vertical-text">车辆</td>
37
-        <td class="head">车牌号</td>
38
-        <td class="head">油耗</td>
39
-        <td class="head">总里程</td>
40
-        <td class="head">折旧成天(天)</td>
41
-        <td class="head">预算天数</td>
42
-        <td class="head">金额</td>
43
-      </tr>
44
-      <tr v-for="car, index in chooseCar" :key="'car' + index">
65
+      <tr v-if="carLen != 1">
66
+        <td :rowspan="carLen">车辆</td>
67
+        <td>车牌号</td>
68
+        <td>油耗</td>
69
+        <td>总里程</td>
70
+        <td>折旧成天(天)</td>
71
+        <td>预算天数</td>
72
+        <td>金额</td>
73
+      </tr>
74
+      <tr v-for="car in chooseCar" :key="'car' + car.carId">
45 75
         <td>{{ car.car ? car.car.licensePlate : '' }}</td>
46 76
         <td>{{ car.mileage }}</td>
47 77
         <td>{{ car.distance }}</td>
48 78
         <td>{{ car.car ? car.car.dayCost : '' }}</td>
49 79
         <td>{{ car.days }}</td>
50 80
         <td>{{ car.expense }}</td>
81
+        <td></td>
51 82
       </tr>
52
-      <tr>
53
-        <td :rowspan="deviceLen" class="head vertical-text">设备</td>
54
-        <td class="head">设备名称</td>
55
-        <td class="head">规格型号</td>
56
-        <td class="head">品牌</td>
57
-        <td class="head">折旧成本(天)</td>
58
-        <td class="head">预算天数</td>
59
-        <td class="head">金额</td>
60
-      </tr>
61
-      <tr v-for="device, index in chooseDevice" :key="'device' + index">
83
+      <tr v-if="deviceLen != 1">
84
+        <td :rowspan="deviceLen">设备</td>
85
+        <td>设备名称</td>
86
+        <td>规格型号</td>
87
+        <td>品牌</td>
88
+        <td>折旧成本(天)</td>
89
+        <td>预算天数</td>
90
+        <td>金额</td>
91
+      </tr>
92
+      <tr v-for="device in chooseDevice" :key="'device' + device.deviceId">
62 93
         <td>{{ device.device ? device.device.name : '' }}</td>
63 94
         <td>{{ device.device ? device.device.series : '' }}</td>
64 95
         <td>{{ device.device ? device.device.brand : '' }}</td>
65 96
         <td>{{ device.device ? device.device.dayCost : '' }}</td>
66 97
         <td>{{ device.days }}</td>
67 98
         <td>{{ device.depreciation }}</td>
99
+        <td></td>
68 100
       </tr>
69 101
       <tr>
70
-        <td colspan="6" class="head">固定成本小计</td>
71
-        <td>{{ budgetForm.fixCost }}</td>
102
+        <td :colspan="6" class="head">间接成本合计</td>
103
+        <td :colspan="1" class="head">{{ budgetForm.fixCost }}</td>
104
+        <td></td>
72 105
       </tr>
73
-      <tr>
74
-        <td :rowspan="workLen" class="head vertical-text">预计结算金额</td>
75
-        <td class="head">工作内容</td>
76
-        <td class="head">比例尺</td>
77
-        <td class="head">总工作量</td>
78
-        <td class="head">单价</td>
79
-        <td class="head">系数</td>
80
-        <td class="head">金额</td>
81
-      </tr>
82
-      <tr v-for="(work, index) in workList" :key="'work' + index">
83
-        <td>{{ workContentList.length != 0 ? workContentList[index].content : "" }}</td>
84
-        <td>{{ work.scaleGrade }}</td>
85
-        <td>{{ work.workload }}</td>
86
-        <td>{{ work.price }}</td>
87
-        <td>{{ work.coefficient }}</td>
88
-        <td>{{ work.settle }}</td>
106
+      <tr class="head">
107
+        <td :colspan="3">外协费用</td>
108
+        <td :colspan="5">{{ budgetForm.outExpense }}</td>
109
+        <td>{{ budgetForm.outRemark }}</td>
89 110
       </tr>
90
-      <tr>
91
-        <td colspan="5" class="head">进出场津贴</td>
92
-        <td>{{ budgetForm.inOutPriceSum }}</td>
111
+      <tr class="head">
112
+        <td colspan="3">车船租赁</td>
113
+        <td :colspan="5">{{ budgetForm.rentExpense }}</td>
114
+        <td>{{ budgetForm.rentRemark }}</td>
93 115
       </tr>
94
-      <tr>
95
-        <td colspan="5" class="head">外协费用</td>
96
-        <td>{{ budgetForm.outExpense }}</td>
116
+      <tr class="head">
117
+        <td colspan="3">其他费用</td>
118
+        <td :colspan="5">{{ budgetForm.otherExpense }}</td>
119
+        <td>{{ budgetForm.otherRemark }}</td>
97 120
       </tr>
98
-      <tr>
99
-        <td colspan="5" class="head">商务费用</td>
100
-        <td>{{ budgetForm.businessExpense }}</td>
121
+      <tr class="head">
122
+        <td colspan="3">税费成本</td>
123
+        <td :colspan="5">{{ budgetForm.taxExpense }}</td>
124
+        <td>{{ budgetForm.taxRemark }}</td>
101 125
       </tr>
102
-      <tr>
103
-        <td colspan="5" class="head">车船租赁</td>
104
-        <td>{{ budgetForm.rentExpense }}</td>
126
+      <tr class="head">
127
+        <td colspan="3">经营管理费用</td>
128
+        <td :colspan="5">{{ budgetForm.businessExpense }}</td>
129
+        <td>{{ budgetForm.businessRemark }}</td>
105 130
       </tr>
106 131
       <tr>
107
-        <td colspan="5" class="head">其他费用</td>
108
-        <td>{{ budgetForm.otherExpense }}</td>
132
+        <td colspan="3" class="head">成本合计</td>
133
+        <td colspan="5" class="head">{{ budgetForm.totalBudget }}</td>
109 134
       </tr>
110
-      <tr>
111
-        <td colspan="6" class="head">直接成本小计</td>
112
-        <td>{{ budgetForm.directExpense }}</td>
113
-      </tr>
114
-      <tr>
115
-        <td colspan="6" class="head">总成本=(固定成本+直接成本)*120%</td>
116
-        <td>{{ budgetForm.totalBudget }}</td>
117
-      </tr>
118
-      <tr>
119
-        <td class="head">编制人</td>
120
-        <td colspan="5">{{ budgetForm.compilerUser ? budgetForm.compilerUser.nickName :'' }}</td>
121
-        <!-- <td class="head">审核人</td> -->
122
-        <!-- <td colspan="3">{{ name }}</td> -->
135
+      <tr v-if="budgetForm.contract">
136
+        <td colspan="3" class="head">利润</td>
137
+        <td colspan="2" class="head">{{ profit }}</td>
138
+        <td colspan="3" class="head">合同总价约</td>
139
+        <td colspan="1" class="head">{{ budgetForm.contract ? budgetForm.contract.amount : '' }}</td>
123 140
       </tr>
124 141
     </table>
125 142
   </div>
@@ -172,32 +189,38 @@ export default {
172 189
     initBudgetForm() {
173 190
       listBudget({ pageNum: 1, pageSize: 20, projectId: this.taskForm.formId }).then(res => {
174 191
         this.budgetForm = res.rows[0];
175
-        listBudgetDevice({budgetId: this.budgetForm.budgetId}).then(res => {
192
+        console.log(this.budgetForm);
193
+        listBudgetDevice({ budgetId: this.budgetForm.budgetId }).then(res => {
176 194
           this.chooseDevice = res.rows;
177 195
           this.deviceLen = res.rows.length + 1;
178 196
         })
179
-        listBudgetStaff({budgetId: this.budgetForm.budgetId}).then(res => {
197
+        listBudgetStaff({ budgetId: this.budgetForm.budgetId }).then(res => {
180 198
           this.chooseUser = res.rows;
181 199
           this.userLen = res.rows.length + 1;
182 200
           let days = 0;
183
-          for(let d of this.chooseUser){
201
+          for (let d of this.chooseUser) {
184 202
             days = days + d.days
185 203
           }
186 204
           this.budgetForm.inOutPriceSum = Number(days) * Number(this.chooseUser[0].inOutPrice)
187 205
         })
188
-        listBudgetCar({budgetId: this.budgetForm.budgetId}).then(res => {
206
+        listBudgetCar({ budgetId: this.budgetForm.budgetId }).then(res => {
207
+          console.log(res.rows);
189 208
           this.chooseCar = res.rows;
190 209
           this.carLen = res.rows.length + 1;
191 210
         })
192
-        listBudgetSettle({budgetId: this.budgetForm.budgetId}).then(res => {
211
+        listBudgetSettle({ budgetId: this.budgetForm.budgetId }).then(res => {
193 212
           this.workList = res.rows;
194
-          this.workLen = res.rows.length + 6;
195
-          for(let work of this.workList){
196
-            if(work.groundType == '0'){
213
+          this.workLen = res.rows.length;
214
+
215
+          for (let work of this.workList) {
216
+            if (work.groundType == '0') {
197 217
               work.price = work.cmcPrice.commonPrice
198 218
               work.scaleGrade = work.cmcPrice.scaleGrade
199
-            }else{
219
+              work.unit = work.cmcPrice.unit
220
+            } else {
200 221
               work.price = work.cmcPrice.complexPrice
222
+              work.scaleGrade = work.cmcPrice.scaleGrade
223
+              work.unit = work.cmcPrice.unit
201 224
             }
202 225
           }
203 226
           this.getProjectWorkList();
@@ -205,7 +228,7 @@ export default {
205 228
       });
206 229
     },
207 230
     getProjectWorkList() {
208
-      listProjectWork({projectId: this.$route.query.formId}).then(res => {
231
+      listProjectWork({ projectId: this.$route.query.formId }).then(res => {
209 232
         this.workContentList = res.rows;
210 233
       })
211 234
     },

+ 31
- 26
oa-ui/src/views/flowable/form/budget/components/budgetTable.vue 查看文件

@@ -2,7 +2,7 @@
2 2
  * @Author: ysh
3 3
  * @Date: 2024-05-10 15:50:41
4 4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-05-21 19:18:34
5
+ * @LastEditTime: 2024-05-22 19:07:27
6 6
 -->
7 7
 <template>
8 8
   <div>
@@ -15,9 +15,9 @@
15 15
         <td colspan="1">{{ projectForm.projectNumber }}</td>
16 16
       </tr>
17 17
       <tr>
18
-        <td :rowspan="workLen">直接成本</td>
18
+        <td :rowspan="workLen+2">直接成本</td>
19 19
         <td>工作简述</td>
20
-        <td>工作类别</td>
20
+        <td>工作内容</td>
21 21
         <td>数量</td>
22 22
         <td>单价</td>
23 23
         <td>单位</td>
@@ -27,7 +27,7 @@
27 27
       </tr>
28 28
       <tr v-for="work in budgetForm.contentList">
29 29
         <td>{{ work.content }}</td>
30
-        <td>{{ work.workType }}</td>
30
+        <td>{{ work.workItem }}</td>
31 31
         <td>{{ work.workload }}</td>
32 32
         <td>{{ work.price }}</td>
33 33
         <td>{{ work.unit }}</td>
@@ -36,13 +36,8 @@
36 36
         <td>{{ work.remark ? work.remark : '' }}</td>
37 37
       </tr>
38 38
       <tr>
39
-        <td :colspan="2">进出场费用</td>
40
-        <td :colspan="5">{{ budgetForm.inOutPriceSum }}</td>
41
-        <td></td>
42
-      </tr>
43
-      <tr>
44
-        <td :colspan="2" class="head">直接成本合计</td>
45
-        <td :colspan="5" class="head">{{ budgetForm.settleExpense }}</td>
39
+        <td :colspan="6" class="head">直接成本合计</td>
40
+        <td :colspan="1" class="head">{{ budgetForm.settleExpense }}</td>
46 41
         <td></td>
47 42
       </tr>
48 43
       <tr>
@@ -108,8 +103,8 @@
108 103
         <td></td>
109 104
       </tr>
110 105
       <tr>
111
-        <td :colspan="2" class="head">间接成本合计</td>
112
-        <td :colspan="5" class="head">{{ budgetForm.fixCost }}</td>
106
+        <td :colspan="6" class="head">间接成本合计</td>
107
+        <td :colspan="1" class="head">{{ budgetForm.fixCost }}</td>
113 108
         <td></td>
114 109
       </tr>
115 110
       <tr class="head">
@@ -117,16 +112,6 @@
117 112
         <td :colspan="5">{{ budgetForm.outExpense }}</td>
118 113
         <td>{{ budgetForm.outRemark }}</td>
119 114
       </tr>
120
-      <tr class="head">
121
-        <td colspan="3">税费成本</td>
122
-        <td :colspan="5">{{ budgetForm.taxExpense }}</td>
123
-        <td>{{ budgetForm.taxRemark }}</td>
124
-      </tr>
125
-      <tr class="head">
126
-        <td colspan="3">经营管理费用</td>
127
-        <td :colspan="5">{{ budgetForm.businessExpense }}</td>
128
-        <td>{{ budgetForm.businessRemark }}</td>
129
-      </tr>
130 115
       <tr class="head">
131 116
         <td colspan="3">车船租赁</td>
132 117
         <td :colspan="5">{{ budgetForm.rentExpense }}</td>
@@ -137,10 +122,26 @@
137 122
         <td :colspan="5">{{ budgetForm.otherExpense }}</td>
138 123
         <td>{{ budgetForm.otherRemark }}</td>
139 124
       </tr>
125
+      <tr class="head">
126
+        <td colspan="3">税费成本</td>
127
+        <td :colspan="5">{{ budgetForm.taxExpense }}</td>
128
+        <td>{{ budgetForm.taxRemark }}</td>
129
+      </tr>
130
+      <tr class="head">
131
+        <td colspan="3">经营管理费用</td>
132
+        <td :colspan="5">{{ budgetForm.businessExpense }}</td>
133
+        <td>{{ budgetForm.businessRemark }}</td>
134
+      </tr>
140 135
       <tr>
141 136
         <td colspan="3" class="head">成本合计</td>
142 137
         <td colspan="5" class="head">{{ costSum }}</td>
143 138
       </tr>
139
+      <tr v-if="budgetForm.contract">
140
+        <td colspan="3" class="head">利润</td>
141
+        <td colspan="2" class="head">{{ profit }}</td>
142
+        <td colspan="3" class="head">合同总价约</td>
143
+        <td colspan="1" class="head">{{ budgetForm.contract ? budgetForm.contract.amount : '' }}</td>
144
+      </tr>
144 145
     </table>
145 146
   </div>
146 147
 </template>
@@ -165,6 +166,7 @@ export default {
165 166
       workLen: 1,
166 167
       costSum: 0,
167 168
       inOutPrice: '',
169
+      profit:''
168 170
     }
169 171
   },
170 172
   created() {
@@ -172,9 +174,12 @@ export default {
172 174
     this.userLen = this.budgetForm.chooseUser.length + 1;
173 175
     this.carLen = this.budgetForm.chooseCar.length + 1;
174 176
     this.deviceLen = this.budgetForm.chooseDevice.length + 1;
175
-    this.workLen = this.budgetForm.contentList.length + 3;
176
-    this.costSum = (Number(this.budgetForm.directExpense) + Number(this.budgetForm.fixCost)).toFixed(2);
177
-    this.$emit('getTotal', this.totalBudget);
177
+    this.workLen = this.budgetForm.contentList.length;
178
+    this.costSum = (Number(this.budgetForm.directExpense) + Number(this.budgetForm.fixCost) ).toFixed(2);
179
+    if(this.budgetForm.contract){
180
+      this.profit = (Number(this.budgetForm.contract.amount) - Number(this.costSum) ).toFixed(2)
181
+    }
182
+    this.$emit('getTotal', this.costSum);
178 183
   },
179 184
 }
180 185
 </script>

+ 13
- 45
oa-ui/src/views/flowable/form/budget/components/chooseMoney.vue 查看文件

@@ -3,7 +3,7 @@
3 3
     <el-form>
4 4
       <el-form-item label="项目概况:" label-width="90px">
5 5
         <table border="1">
6
-          <tr>
6
+          <tr class="head">
7 7
             <td style="width: 320px">工作内容</td>
8 8
             <td style="width:120px;">等级或比例尺</td>
9 9
             <td style="width:90px;">单位</td>
@@ -35,7 +35,7 @@
35 35
       </el-form-item>
36 36
       <el-form-item label="预结算:" label-width="90px">
37 37
         <table border="1">
38
-          <tr>
38
+          <tr class="head">
39 39
             <td style="width: 250px">工作简述</td>
40 40
             <td>工作类别</td>
41 41
             <td>工作项目</td>
@@ -115,23 +115,10 @@
115 115
           </tr>
116 116
           <tr>
117 117
             <td colspan="9">合计</td>
118
-            <td>{{ (Number(settle) - Number(inOutPriceSum)).toFixed(2) }}</td>
118
+            <td>{{ Number(settle).toFixed(2) }}</td>
119 119
           </tr>
120 120
         </table>
121
-        <el-button icon="el-icon-plus" type="primary" size="mini" @click="addWorkList"></el-button>
122
-      </el-form-item>
123
-      <el-form-item label="进出场费用:">
124
-        <el-input v-numeric v-model="inOutPrice" style="width:200px;" @change="getInoutpriceSum">
125
-          <template slot="prepend">单价</template>
126
-        </el-input>
127
-        ×
128
-        <el-input v-numeric v-model="peopleNumber" style="width:200px;" @change="getInoutpriceSum">
129
-          <template slot="prepend">人天</template>
130
-        </el-input>
131
-        = {{ inOutPriceSum }}
132
-      </el-form-item>
133
-      <el-form-item label="预结算合计:">
134
-        <el-tag type="danger" style="margin-right:20px;font-size:14px;">¥{{ settle }}</el-tag>
121
+        <el-button icon="el-icon-plus" plain type="primary" size="mini" @click="addWorkList"></el-button>
135 122
       </el-form-item>
136 123
     </el-form>
137 124
   </div>
@@ -207,9 +194,7 @@ export default {
207 194
         }
208 195
       ],
209 196
       settle: 0,
210
-      inOutPrice: 0,
211
-      peopleNumber: 0,
212
-      inOutPriceSum: 0
197
+      checkUserList: []
213 198
     }
214 199
   },
215 200
   created() {
@@ -337,33 +322,12 @@ export default {
337 322
       for (let work of this.contentList) {
338 323
         sum = sum + Number(work.settle)
339 324
       }
340
-      sum = sum + this.inOutPriceSum;
341 325
       this.settle = sum.toFixed(2);
342
-      let days = 0
343
-      // for (let user of this.chooseUser) {
344
-      //   days = days + Number(user.days)
345
-      // }
346
-      // this.peopleNumber = days
347
-      // if (this.budgetForm.inOutPriceSum && this.budgetForm.inOutPriceSum != 0) {
348
-      //   if (this.inOutPriceSum == 0) {
349
-      //     this.settle = Number(this.settle) + Number(this.budgetForm.inOutPriceSum)
350
-      //     this.inOutPrice = Number(this.budgetForm.inOutPriceSum) / this.peopleNumber
351
-      //     this.inOutPriceSum = this.budgetForm.inOutPriceSum
352
-      //   }
353
-      // }
354 326
       let obj = {}
355
-      obj.workList = this.workList;
327
+      obj.workList = this.contentList;
356 328
       obj.settle = this.settle;
357
-      obj.inOutPrice = this.inOutPrice;
358
-      obj.peopleNumber = this.peopleNumber;
359
-      obj.inOutPriceSum = this.inOutPriceSum;
360
-      console.log(this.inOutPriceSum);
361 329
       this.$emit('getSettle', obj);
362
-      this.$emit('getWorkList',this.contentList)
363
-    },
364
-    getInoutpriceSum() {
365
-      this.inOutPriceSum = Number(this.inOutPrice) * Number(this.peopleNumber);
366
-      this.getSettleSum()
330
+      this.$emit('getWorkList', this.contentList)
367 331
     },
368 332
     /* 计算总额 */
369 333
     calculateTotal(price, coefficient, workload, percent) {
@@ -409,6 +373,7 @@ table {
409 373
   // margin: 0 auto;
410 374
   /*边框*/
411 375
   /* border: 1px solid black; */
376
+  width: 100%;
412 377
   text-align: center;
413 378
   border-collapse: collapse;
414 379
 
@@ -418,7 +383,9 @@ table {
418 383
     padding: 3px;
419 384
   }
420 385
 }
421
-
386
+.head{
387
+  font-weight: bold;
388
+}
422 389
 .delete-btn {
423 390
   position: absolute;
424 391
   left: -30px;
@@ -426,7 +393,8 @@ table {
426 393
   transform: translate(0, -50%);
427 394
   color: #F56C6C;
428 395
   cursor: pointer;
429
-  i{
396
+
397
+  i {
430 398
     font-size: 25px;
431 399
   }
432 400
 }

+ 96
- 0
oa-ui/src/views/flowable/form/components/chooseContract.vue 查看文件

@@ -0,0 +1,96 @@
1
+<template>
2
+  <div>
3
+    <el-row>
4
+      <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="88px">
5
+        <el-form-item label="合同编码" prop="contractCode">
6
+          <el-input v-model="queryParams.contractCode" placeholder="请输入合同编码" clearable
7
+            @keyup.enter.native="handleQuery" />
8
+        </el-form-item>
9
+        <el-form-item label="合同编号" prop="contractNumber">
10
+          <el-input v-model="queryParams.contractNumber" placeholder="请输入合同编号" clearable
11
+            @keyup.enter.native="handleQuery" />
12
+        </el-form-item>
13
+        <el-form-item>
14
+          <el-button type="primary" icon="el-icon-search" @click="handleQuery()">搜索</el-button>
15
+        </el-form-item>
16
+      </el-form>
17
+    </el-row>
18
+    <el-table ref="choosePContract" v-loading="loading" :data="contractList" highlight-current-row
19
+      @current-change="handleCurrentChange" :row-key="getRowKeys" @row-dblclick="confirmChoose">
20
+      <el-table-column label="项目名称" align="center" key="tender.projectName" prop="tender.projectName"
21
+        min-width="150px" />
22
+      <el-table-column label="合同编码" align="center" key="contractCode" prop="contractCode" />
23
+      <el-table-column label="合同编号" align="center" prop="contractNumber" min-width="100px" />
24
+      <el-table-column label="合同金额" align="center" prop="amount" min-width="100px" />
25
+      <el-table-column label="拟稿人" align="center" prop="draftUser.nickName" min-width="100px" />
26
+      <el-table-column label="合同备注" align="center" prop="remark" min-width="100px" />
27
+    </el-table>
28
+    <div style="text-align: right;" class="mt20 mr20">
29
+      <el-pagination @current-change="getList" :current-page.sync="queryParams.pageNum"
30
+        :page-size="queryParams.pageSize" layout="total, prev, pager, next" :total="total">
31
+      </el-pagination>
32
+    </div>
33
+    <div>
34
+      已选项目:<el-tag>{{ choosePContract.tender.projectName }}</el-tag>
35
+    </div>
36
+    <div style="text-align: center;margin-top: 20px;">
37
+      <el-button type="primary" @click="confirmChoose">确认选择</el-button>
38
+      <el-button @click="$emit('close')">取消</el-button>
39
+    </div>
40
+  </div>
41
+</template>
42
+
43
+<script>
44
+import { listProjectContract, addProjectContract } from "@/api/oa/contract/projectContract";
45
+import { listContract, getContract, delContract, addContract, updateContract } from "@/api/oa/contract/contract";
46
+export default {
47
+  data() {
48
+    return {
49
+      // 查询参数
50
+      queryParams: {
51
+        pageNum: 1,
52
+        pageSize: 10
53
+      },
54
+      contractList: [],
55
+      userList: [],
56
+      total: 0,
57
+      loading: true,
58
+      choosePContract: {
59
+        tender: {
60
+          projectName: ''
61
+        }
62
+      },
63
+    }
64
+  },
65
+  created() {
66
+    this.getList()
67
+  },
68
+  methods: {
69
+    getList() {
70
+      listContract(this.queryParams).then(response => {
71
+        console.log(response);
72
+        this.contractList = response.rows;
73
+        this.total = response.total;
74
+        this.loading = false;
75
+      })
76
+    },
77
+    handleQuery() {
78
+      this.queryParams.pageNum = 1;
79
+      this.getList();
80
+    },
81
+    handleCurrentChange(val) {
82
+      this.choosePContract = val
83
+    },
84
+    getRowKeys(row) {
85
+      return row.contractId;
86
+    },
87
+    confirmChoose() {
88
+      console.log(this.choosePContract);
89
+      this.$emit('choose', this.choosePContract)
90
+    },
91
+  },
92
+
93
+}
94
+</script>
95
+
96
+<style lang="scss" scoped></style>

+ 1
- 1
oa-ui/src/views/flowable/form/components/chooseTender.vue 查看文件

@@ -23,7 +23,7 @@
23 23
     <el-table ref="choosePTender" v-loading="loading" :data="tenderList" highlight-current-row
24 24
       @current-change="handleCurrentChange" :row-key="getRowKeys" @row-dblclick="confirmChoose">
25 25
       <el-table-column label="投标项目名称" align="center" key="projectName" prop="projectName"
26
-        :show-overflow-tooltip="true" />
26
+        :show-overflow-tooltip="true"  width="170px" />
27 27
       <el-table-column label="招标业主" align="center" prop="partyA" min-width="100px" />
28 28
       <el-table-column label="招标代理" align="center" prop="agent" min-width="100px" />
29 29
       <el-table-column label="招标地点" align="center" prop="place" min-width="100px" />

+ 35
- 3
oa-ui/src/views/flowable/form/projectProcess/addproject.vue 查看文件

@@ -1,8 +1,14 @@
1
+<!--
2
+ * @Author: ysh
3
+ * @Date: 2024-03-18 11:00:04
4
+ * @LastEditors: Please set LastEditors
5
+ * @LastEditTime: 2024-05-22 13:51:57
6
+-->
1 7
 <!--
2 8
  * @Author: ysh
3 9
  * @Date: 2024-02-27 14:49:15
4 10
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-05-20 16:15:23
11
+ * @LastEditTime: 2024-05-22 11:00:26
6 12
 -->
7 13
 
8 14
 <template>
@@ -16,7 +22,7 @@
16 22
             <el-input v-model="addForm.projectNumber"></el-input>
17 23
           </el-form-item>
18 24
         </el-col>
19
-        <el-col :span="12">
25
+        <el-col :span="12" v-if="addForm.projectSource == 0">
20 26
           <el-form-item label="合同编码:">
21 27
             <el-input v-model="contractCode" disabled></el-input>
22 28
           </el-form-item>
@@ -27,7 +33,7 @@
27 33
             <el-input v-model="addForm.projectName"></el-input>
28 34
           </el-form-item>
29 35
         </el-col>
30
-        <el-col :span="12">
36
+        <el-col :span="12" v-if="addForm.projectSource == 0">
31 37
           <el-form-item label="合同编号:">
32 38
             <el-input v-model="contractNumber" disabled></el-input>
33 39
           </el-form-item>
@@ -45,6 +51,15 @@
45 51
         <el-radio v-model="addForm.projectSource" label="0">院内</el-radio>
46 52
         <el-radio v-model="addForm.projectSource" label="1">院外</el-radio>
47 53
       </el-form-item>
54
+      <el-form-item label="合同编码:" v-if="addForm.projectSource == '1'">
55
+        <el-input v-model="chooseContractInfo.contractCode">
56
+          <el-button slot="append" @click="openContract = true">选择</el-button>
57
+        </el-input>
58
+      </el-form-item>
59
+
60
+      <el-form-item label="合同编号:" v-if="addForm.projectSource == '1'">
61
+        <el-input v-model="chooseContractInfo.contractNumber" disabled></el-input>
62
+      </el-form-item>
48 63
       <el-form-item label="甲方单位:" prop="partyA">
49 64
         <el-autocomplete class="inline-input" v-model="addForm.partyA" :fetch-suggestions="querySearch"
50 65
           placeholder="请输入内容" style="width: 100%"></el-autocomplete>
@@ -125,6 +140,9 @@
125 140
       <el-button type="primary" @click="confirmAddForm" :disabled="disabled">提 交</el-button>
126 141
       <!-- <el-button @click="cancel" :disabled="disabled">取 消</el-button> -->
127 142
     </div>
143
+    <el-dialog title="选择合同" :visible.sync="openContract" width="1000px" append-to-body>
144
+      <choose-contract @choose="setContract" @close="openContract = false"></choose-contract>
145
+    </el-dialog>
128 146
   </div>
129 147
 </template>
130 148
 
@@ -138,7 +156,9 @@ import { complete, rejectTask, returnList, returnTask, getNextFlowNode, delegate
138 156
 import { listProjectWork, addProjectWork } from "@/api/oa/project/projectWork";
139 157
 import { listProjectContract, addProjectContract } from "@/api/oa/contract/projectContract";
140 158
 import { listContract, getContract, delContract, addContract, updateContract } from "@/api/oa/contract/contract";
159
+import chooseContract from '../components/chooseContract.vue';
141 160
 export default {
161
+  components: { chooseContract },
142 162
   dicts: ['cmc_scale_grade', 'cmc_unit'],
143 163
   props: {
144 164
     disabled: {
@@ -155,6 +175,7 @@ export default {
155 175
   },
156 176
   data() {
157 177
     return {
178
+      openContract:false,
158 179
       registerTime: undefined,
159 180
       // 查询参数
160 181
       queryParams: {
@@ -172,7 +193,9 @@ export default {
172 193
       addForm: {
173 194
         registerTime: undefined,
174 195
         projectRegistrant: "",
196
+        projectSource: "0"
175 197
       },
198
+      chooseContractInfo:{},
176 199
       contractCode: "",
177 200
       contractNumber: "",
178 201
       rules: {
@@ -226,6 +249,7 @@ export default {
226 249
         this.loading = false;
227 250
       });
228 251
     },
252
+    
229 253
     getProjectInfo() {
230 254
       getProject(this.taskForm.formId).then(res => {
231 255
         this.addForm = res.data;
@@ -258,6 +282,10 @@ export default {
258 282
         }
259 283
       })
260 284
     },
285
+    setContract(val){
286
+      this.chooseContractInfo = val;
287
+      this.openContract = false;
288
+    },
261 289
     confirmAddForm() {
262 290
       this.addForm.projectId = this.taskForm.formId;
263 291
       for (let work of this.workList) {
@@ -268,6 +296,10 @@ export default {
268 296
         this.$modal.msgSuccess("新增成功");
269 297
         this.getList();
270 298
       });
299
+      let pcobj = {projectId:this.taskForm.formId,contractId:this.chooseContractInfo.contractId}
300
+      addProjectContract(pcobj).then(response =>{
301
+        this.$modal.msgSuccess("合同关联成功");
302
+      })
271 303
       const params = { taskId: this.taskForm.taskId };
272 304
       // 获取下一个流程节点
273 305
       getNextFlowNode(params).then(res => {

+ 2
- 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-05-10 14:57:12
5
+ * @LastEditTime: 2024-05-22 18:18:31
6 6
 -->
7 7
 <template>
8 8
   <div class="app-container">
@@ -74,7 +74,7 @@
74 74
 
75 75
     <!-- 发起流程 -->
76 76
     <el-dialog :title="title" :visible.sync="open" width="400px" append-to-body>
77
-      <progress-tree :definitionList="definitionList" @confirm="handleStartProcess"></progress-tree>
77
+      <progress-tree :definitionList="definitionList" @confirm="handleStartProcess"  @close="open =false"></progress-tree>
78 78
       <!-- <el-form :model="queryProcessParams" ref="queryProcessForm" :inline="true" v-show="showSearch" label-width="68px">
79 79
         <el-form-item label="名称" prop="name">
80 80
           <el-input v-model="queryProcessParams.name" placeholder="请输入名称" clearable size="small"

+ 1
- 1
oa-ui/src/views/flowable/task/myProcess/progressTree.vue 查看文件

@@ -19,7 +19,7 @@
19 19
     <el-divider></el-divider>
20 20
     <div class="text-center">
21 21
       <el-button type="primary" @click="confirm">确定</el-button>
22
-      <el-button>取消</el-button>
22
+      <el-button @click="$emit('close')">取消</el-button>
23 23
     </div>
24 24
   </div>
25 25
 </template>

+ 7
- 5
oa-ui/src/views/oa/tender/index.vue 查看文件

@@ -256,7 +256,7 @@
256 256
             <div v-if="form.tenderId != null">
257 257
 
258 258
               <FileUpload ref="zb" :limit="1" :fileType="['doc', 'docx', 'xls', 'xlsx', 'pdf']" :isShowTip="false"
259
-              :filePathName="'投标文件'" :isModify="true" @input="getUploadPathBidDocument"></FileUpload>
259
+                :filePathName="'投标文件'" :isModify="true" @input="getUploadPathBidDocument"></FileUpload>
260 260
               <transition-group class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear"
261 261
                 tag="ul">
262 262
                 <li key="li01" class="el-upload-list__item ele-upload-list__item-content">
@@ -361,8 +361,8 @@
361 361
             <FileUpload v-if="form.tenderId == null" ref="bsFile" :limit="1" :filePathName="'投标文件'"
362 362
               :fileType="['doc', 'docx', 'xls', 'xlsx', 'pdf']" @input="getUploadPathTenderDocument"></FileUpload>
363 363
             <div v-if="form.tenderId != null">
364
-              <FileUpload ref="bs" :limit="1" :fileType="['doc', 'docx', 'xls', 'xlsx', 'pdf']" :isShowTip="false"  :filePathName="'投标文件'"
365
-                :isModify="true" @input="getUploadPathTenderDocument"></FileUpload>
364
+              <FileUpload ref="bs" :limit="1" :fileType="['doc', 'docx', 'xls', 'xlsx', 'pdf']" :isShowTip="false"
365
+                :filePathName="'投标文件'" :isModify="true" @input="getUploadPathTenderDocument"></FileUpload>
366 366
               <transition-group class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear"
367 367
                 tag="ul">
368 368
                 <li key="li02" class="el-upload-list__item ele-upload-list__item-content">
@@ -672,8 +672,10 @@ export default {
672 672
       }
673 673
     },
674 674
     getFileName(name) {
675
-      let arr = name.split('/')
676
-      return arr[arr.length - 1];
675
+      if (name) {
676
+        let arr = name.split('/')
677
+        return arr[arr.length - 1];
678
+      }
677 679
     },
678 680
     handleFileDelete(name) {
679 681
       if (name == 'zb')

正在加载...
取消
保存