|
@@ -23,36 +23,45 @@
|
23
|
23
|
</el-col>
|
24
|
24
|
</el-row>
|
25
|
25
|
<el-form-item label="投标项目名称" prop="tenderId" v-if="tenderOpen">
|
26
|
|
- <el-select v-model="form.tenderId" filterable placeholder="请选择" @change="handleSelectTender"
|
|
26
|
+ <!-- <el-select v-model="form.tenderId" filterable placeholder="请选择" @change="handleSelectTender"
|
27
|
27
|
:disabled="taskName != '保证金申请'" clearable>
|
28
|
28
|
<el-option v-for="item in tenderList" :key="item.value" :label="item.projectName" :value="item.tenderId">
|
29
|
29
|
</el-option>
|
30
|
|
- </el-select>
|
|
30
|
+ </el-select> -->
|
|
31
|
+ <el-button type="primary" size="mini" @click="tbOpen = true" v-if="taskName == '保证金申请'">选择投标项目</el-button>
|
31
|
32
|
<el-descriptions border v-if="isTenderSelect" style="margin-top: 10px;" :column="1">
|
|
33
|
+ <el-descriptions-item label="投标项目名称" label-class-name="my-label">
|
|
34
|
+ {{ chooseTender.projectName }}
|
|
35
|
+ </el-descriptions-item>
|
32
|
36
|
<el-descriptions-item label="投标保证金" label-class-name="my-label">{{ chooseTender.deposit
|
33
|
|
- }}</el-descriptions-item>
|
|
37
|
+ }}</el-descriptions-item>
|
|
38
|
+ <el-descriptions-item label="招标业主" label-class-name="my-label">{{ chooseTender.partyA ?
|
|
39
|
+ chooseTender.partyA.partyAName : '' }}</el-descriptions-item>
|
34
|
40
|
<el-descriptions-item label="招标代理人" label-class-name="my-label">{{ chooseTender.agent
|
35
|
|
- }}</el-descriptions-item>
|
|
41
|
+ }}</el-descriptions-item>
|
36
|
42
|
<el-descriptions-item label="联系人及电话" label-class-name="my-label">{{ chooseTender.agentPerson +
|
37
|
|
- chooseTender.agentPhone
|
38
|
|
- }}</el-descriptions-item>
|
|
43
|
+ chooseTender.agentPhone
|
|
44
|
+ }}</el-descriptions-item>
|
39
|
45
|
</el-descriptions>
|
40
|
46
|
</el-form-item>
|
41
|
47
|
<el-form-item label="合同名称" prop="contractId" v-if="contractOpen">
|
42
|
|
- <el-select v-model="form.contractId" filterable placeholder="请选择" @change="handleSelectContract"
|
|
48
|
+ <!-- <el-select v-model="form.contractId" filterable placeholder="请选择" @change="handleSelectContract"
|
43
|
49
|
:disabled="taskName != '保证金申请'" clearable>
|
44
|
|
- <el-option v-for="item in contractList" :key="item.value" :label="item.tender.projectName"
|
45
|
|
- :value="item.contractId">
|
|
50
|
+ <el-option v-for="item in contractList" :key="item.value"
|
|
51
|
+ :label="item.tender ? item.tender.projectName : item.contractCode" :value="item.contractId">
|
46
|
52
|
</el-option>
|
47
|
|
- </el-select>
|
|
53
|
+ </el-select> -->
|
|
54
|
+ <el-button type="primary" size="mini" @click="htOpen = true" v-if="taskName == '保证金申请'">选择合同</el-button>
|
48
|
55
|
<el-descriptions border v-if="isContractSelect" style="margin-top: 10px;" :column="1">
|
|
56
|
+ <el-descriptions-item label="合同编码" label-class-name="my-label">{{ chooseContract.contractCode
|
|
57
|
+ }}</el-descriptions-item>
|
49
|
58
|
<el-descriptions-item label="履约保证金" label-class-name="my-label">{{ chooseContract.deposit
|
50
|
|
- }}</el-descriptions-item>
|
51
|
|
- <el-descriptions-item label="甲方单位" label-class-name="my-label">{{ chooseContract.tender.aPerson
|
52
|
|
- }}</el-descriptions-item>
|
53
|
|
- <el-descriptions-item label="联系人及电话" label-class-name="my-label">{{ chooseContract.tender.aPerson +
|
54
|
|
- chooseContract.tender.aPhone
|
55
|
|
- }}</el-descriptions-item>
|
|
59
|
+ }}</el-descriptions-item>
|
|
60
|
+ <el-descriptions-item label="甲方单位" label-class-name="my-label">{{ chooseContract.tender ? chooseContract.tender.aPerson : ''
|
|
61
|
+ }}</el-descriptions-item>
|
|
62
|
+ <el-descriptions-item label="联系人及电话" label-class-name="my-label">
|
|
63
|
+ {{ chooseContract.tender ? chooseContract.tender.aPerson + chooseContract.tender.aPhone : ''}}
|
|
64
|
+ </el-descriptions-item>
|
56
|
65
|
</el-descriptions>
|
57
|
66
|
</el-form-item>
|
58
|
67
|
<el-row>
|
|
@@ -133,7 +142,7 @@
|
133
|
142
|
</el-row>
|
134
|
143
|
<el-divider></el-divider>
|
135
|
144
|
<el-form-item label="汇款凭证" prop="remitDocument">
|
136
|
|
- <FileUpload v-if="form.remitDocument == null || form.remitDocument == ''" :disabled="taskName != '财务处理'"
|
|
145
|
+ <FileUpload v-if="taskName == '财务处理'" :disabled="taskName != '财务处理'"
|
137
|
146
|
:limit="1" :filePathName="'保证金/汇款凭证'" :fileType="['doc', 'docx', 'xls', 'xlsx', 'pdf']"
|
138
|
147
|
@input="getRemitPath"></FileUpload>
|
139
|
148
|
<div v-if="form.remitDocument && taskName != '财务处理'">
|
|
@@ -180,8 +189,7 @@
|
180
|
189
|
</el-row>
|
181
|
190
|
</el-form>
|
182
|
191
|
<div style="text-align: center;">
|
183
|
|
- <el-button type="primary" @click="submitForm" v-if="taskName != '财务处理'">确 定</el-button>
|
184
|
|
- <el-button @click="cancel" v-if="taskName != '财务处理'">取 消</el-button>
|
|
192
|
+ <el-button type="primary" @click="submitForm" v-if="taskName != '财务处理'">提 交</el-button>
|
185
|
193
|
<el-button @click="submitForm" type="danger" v-if="taskName == '财务处理'">结束</el-button>
|
186
|
194
|
</div>
|
187
|
195
|
</el-col>
|
|
@@ -194,6 +202,12 @@
|
194
|
202
|
</el-card>
|
195
|
203
|
</el-col>
|
196
|
204
|
</el-row>
|
|
205
|
+ <el-dialog title="选择投标项目" :visible.sync="tbOpen" width="70%" append-to-body>
|
|
206
|
+ <choose-tender @choose="confirmTender"></choose-tender>
|
|
207
|
+ </el-dialog>
|
|
208
|
+ <el-dialog title="选择合同" :visible.sync="htOpen" width="70%" append-to-body>
|
|
209
|
+ <choose-contract @choose="confirmContract" @close="htOpen == false"></choose-contract>
|
|
210
|
+ </el-dialog>
|
197
|
211
|
</div>
|
198
|
212
|
</template>
|
199
|
213
|
|
|
@@ -207,11 +221,15 @@ import { complete, getNextFlowNode } from "@/api/flowable/todo";
|
207
|
221
|
import flow from '@/views/flowable/task/todo/detail/flow'
|
208
|
222
|
import { flowXmlAndNode } from "@/api/flowable/definition";
|
209
|
223
|
import FileItem from '../business/fileItem.vue';
|
|
224
|
+import ChooseTender from '../components/chooseTender.vue';
|
|
225
|
+import ChooseContract from '../components/chooseContract.vue';
|
210
|
226
|
|
211
|
227
|
export default {
|
212
|
228
|
components: {
|
213
|
229
|
flow,
|
214
|
|
- FileItem
|
|
230
|
+ FileItem,
|
|
231
|
+ ChooseTender,
|
|
232
|
+ ChooseContract
|
215
|
233
|
},
|
216
|
234
|
props: {
|
217
|
235
|
taskName: {
|
|
@@ -227,6 +245,8 @@ export default {
|
227
|
245
|
data() {
|
228
|
246
|
return {
|
229
|
247
|
baseUrl: process.env.VUE_APP_BASE_API,
|
|
248
|
+ tbOpen: false,
|
|
249
|
+ htOpen:false,
|
230
|
250
|
applierUser: '',
|
231
|
251
|
applyTime: undefined,
|
232
|
252
|
managerUser: '',
|
|
@@ -392,11 +412,6 @@ export default {
|
392
|
412
|
this.loading = false;
|
393
|
413
|
});
|
394
|
414
|
},
|
395
|
|
- // 取消按钮
|
396
|
|
- cancel() {
|
397
|
|
- this.open = false;
|
398
|
|
- this.reset();
|
399
|
|
- },
|
400
|
415
|
// 查询项目列表
|
401
|
416
|
getTenderList() {
|
402
|
417
|
this.loading = true
|
|
@@ -417,17 +432,6 @@ export default {
|
417
|
432
|
this.contractList = response.rows;
|
418
|
433
|
})
|
419
|
434
|
},
|
420
|
|
- // 选择项目
|
421
|
|
- handleSelectTender(val) {
|
422
|
|
- if (val != "" && val != undefined && val != null) {
|
423
|
|
- getTender(val).then(res => {
|
424
|
|
- this.chooseTender = res.data;
|
425
|
|
- this.isTenderSelect = true;
|
426
|
|
- })
|
427
|
|
- } else {
|
428
|
|
- this.isTenderSelect = false
|
429
|
|
- }
|
430
|
|
- },
|
431
|
435
|
// 选择合同
|
432
|
436
|
handleSelectContract(val) {
|
433
|
437
|
if (val != "" && val != undefined && val != null) {
|
|
@@ -457,65 +461,6 @@ export default {
|
457
|
461
|
this.contractOpen = true;
|
458
|
462
|
}
|
459
|
463
|
},
|
460
|
|
- // 表单重置
|
461
|
|
- reset() {
|
462
|
|
- this.form = {
|
463
|
|
- depositId: null,
|
464
|
|
- depositType: null,
|
465
|
|
- tenderId: null,
|
466
|
|
- contractId: null,
|
467
|
|
- returnTime: null,
|
468
|
|
- accountName: null,
|
469
|
|
- accountBank: null,
|
470
|
|
- cardNumber: null,
|
471
|
|
- depositWay: null,
|
472
|
|
- applier: null,
|
473
|
|
- applyTime: null,
|
474
|
|
- applyReason: null,
|
475
|
|
- applyDocument: null,
|
476
|
|
- managerComment: null,
|
477
|
|
- managerTime: null,
|
478
|
|
- managerUserId: null,
|
479
|
|
- remitTime: null,
|
480
|
|
- cwTime: null,
|
481
|
|
- backTime: null,
|
482
|
|
- cwComment: null,
|
483
|
|
- cwUserId: null
|
484
|
|
- };
|
485
|
|
- this.resetForm("form");
|
486
|
|
- },
|
487
|
|
- /** 搜索按钮操作 */
|
488
|
|
- handleQuery() {
|
489
|
|
- this.queryParams.pageNum = 1;
|
490
|
|
- this.getList();
|
491
|
|
- },
|
492
|
|
- /** 重置按钮操作 */
|
493
|
|
- resetQuery() {
|
494
|
|
- this.resetForm("queryForm");
|
495
|
|
- this.handleQuery();
|
496
|
|
- },
|
497
|
|
- // 多选框选中数据
|
498
|
|
- handleSelectionChange(selection) {
|
499
|
|
- this.ids = selection.map(item => item.depositId)
|
500
|
|
- this.single = selection.length !== 1
|
501
|
|
- this.multiple = !selection.length
|
502
|
|
- },
|
503
|
|
- /** 新增按钮操作 */
|
504
|
|
- handleAdd() {
|
505
|
|
- this.reset();
|
506
|
|
- this.open = true;
|
507
|
|
- this.title = "添加cmc保证金审批";
|
508
|
|
- },
|
509
|
|
- /** 修改按钮操作 */
|
510
|
|
- handleUpdate(row) {
|
511
|
|
- this.reset();
|
512
|
|
- const depositId = row.depositId || this.ids
|
513
|
|
- getDeposit(depositId).then(response => {
|
514
|
|
- this.form = response.data;
|
515
|
|
- this.open = true;
|
516
|
|
- this.title = "修改cmc保证金审批";
|
517
|
|
- });
|
518
|
|
- },
|
519
|
464
|
/** 提交按钮 */
|
520
|
465
|
submitForm() {
|
521
|
466
|
this.$refs["form"].validate(valid => {
|
|
@@ -573,21 +518,32 @@ export default {
|
573
|
518
|
}
|
574
|
519
|
});
|
575
|
520
|
},
|
576
|
|
- /** 删除按钮操作 */
|
577
|
|
- handleDelete(row) {
|
578
|
|
- const depositIds = row.depositId || this.ids;
|
579
|
|
- this.$modal.confirm('是否确认删除cmc保证金审批编号为"' + depositIds + '"的数据项?').then(function () {
|
580
|
|
- return delDeposit(depositIds);
|
581
|
|
- }).then(() => {
|
582
|
|
- this.getList();
|
583
|
|
- this.$modal.msgSuccess("删除成功");
|
584
|
|
- }).catch(() => { });
|
|
521
|
+ confirmTender(val) {
|
|
522
|
+ if (val != "" && val != undefined && val != null) {
|
|
523
|
+ this.chooseTender = val;
|
|
524
|
+ this.isTenderSelect = true;
|
|
525
|
+ this.form.tenderId = val.tenderId;
|
|
526
|
+ this.tbOpen = false;
|
|
527
|
+ }
|
585
|
528
|
},
|
586
|
|
- /** 导出按钮操作 */
|
587
|
|
- handleExport() {
|
588
|
|
- this.download('oa/deposit/export', {
|
589
|
|
- ...this.queryParams
|
590
|
|
- }, `deposit_${new Date().getTime()}.xlsx`)
|
|
529
|
+ confirmContract(val) {
|
|
530
|
+ if (val != "" && val != undefined && val != null) {
|
|
531
|
+ this.chooseContract = val;
|
|
532
|
+ this.isContractSelect = true;
|
|
533
|
+ this.form.contractId = val.contractId;
|
|
534
|
+ this.htOpen = false;
|
|
535
|
+ }
|
|
536
|
+ },
|
|
537
|
+ // 选择项目
|
|
538
|
+ handleSelectTender(val) {
|
|
539
|
+ if (val != "" && val != undefined && val != null) {
|
|
540
|
+ getTender(val).then(res => {
|
|
541
|
+ this.chooseTender = res.data;
|
|
542
|
+ this.isTenderSelect = true;
|
|
543
|
+ })
|
|
544
|
+ } else {
|
|
545
|
+ this.isTenderSelect = false
|
|
546
|
+ }
|
591
|
547
|
},
|
592
|
548
|
getApplyPath(val) {
|
593
|
549
|
let arr = val.split('/upload')
|