cloud-web-corejs 1.0.54-dev.637 → 1.0.54-dev.638

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,802 @@
1
+ <template>
2
+ <div id="containt">
3
+ <el-tabs v-model="activeName" class="tab-box">
4
+ <el-tab-pane :label="$t1('常规2')" name="first">
5
+ <component
6
+ v-if="showWfContent && wfContent"
7
+ :is="wfContent"
8
+ visible-key="showWfContent"
9
+ v-bind="param"
10
+ :parent-target="_self"
11
+ :defaultShowWfContent="true"
12
+ :_viewType="1"
13
+ @reload="$reloadHandle"
14
+ ></component>
15
+ </el-tab-pane>
16
+ <el-tab-pane :label="$t1('我的流程2')" name="second">
17
+ <div class="tree-box fl">
18
+ <div class="tit">
19
+ <b>{{ $t1("待办类型") }}</b>
20
+ </div>
21
+ <el-tree
22
+ :props="defaultProps"
23
+ :load="loadNode"
24
+ node-key="uuid"
25
+ ref="tree"
26
+ highlight-current
27
+ lazy
28
+ :expand-on-click-node="false"
29
+ @node-click="handleNodeClick"
30
+ class="tree-list"
31
+ icon-class="el-icon-arrow-down"
32
+ ></el-tree>
33
+ </div>
34
+ <label id="labBtn">
35
+ <div class="icon">
36
+ <i class="el-icon-more"></i>
37
+ <i class="el-icon-more"></i>
38
+ </div>
39
+ </label>
40
+ <div class="main-right fr" style="padding-left: 6px">
41
+ <div class="grid-height">
42
+ <vxe-grid
43
+ ref="table-m1"
44
+ v-bind="vxeOption"
45
+ @resizable-change="$vxeTableUtil.onColumnWitchChange"
46
+ @custom="$vxeTableUtil.customHandle"
47
+ >
48
+ <template #form>
49
+ <div class="clearfix screen-btns">
50
+ <div class="fl">
51
+ <base-table-export
52
+ :option="{ title: $t1('流程待办导出'), targetRef: 'table-m1' }"
53
+ :parent-target="_self"
54
+ />
55
+ </div>
56
+ <div class="fr">
57
+ <vxe-button
58
+ icon="el-icon-brush"
59
+ class="button-sty"
60
+ @click="resetEvent"
61
+ type="text"
62
+ status="primary"
63
+ plain
64
+ >{{ $t1("重置") }}
65
+ </vxe-button>
66
+ <vxe-button
67
+ status="warning"
68
+ icon="el-icon-search"
69
+ class="button-sty"
70
+ @click="searchEvent"
71
+ >
72
+ {{ $t1("搜索") }}
73
+ </vxe-button>
74
+ </div>
75
+ </div>
76
+ <vxe-form
77
+ ref="form"
78
+ class="screen-box"
79
+ title-width="92px"
80
+ title-align="right"
81
+ :data="formData"
82
+ @submit="searchEvent"
83
+ @reset="searchEvent"
84
+ >
85
+ <vxe-form-item :title="$t1('待办类型') + ':'">
86
+ <template v-slot>
87
+ <el-input v-model="checkNodeData.label" size="small" disabled />
88
+ </template>
89
+ </vxe-form-item>
90
+ <vxe-form-item :title="$t1('流程主题') + ':'" field="name">
91
+ <template v-slot>
92
+ <el-input v-model="formData.name" size="small" clearable />
93
+ </template>
94
+ </vxe-form-item>
95
+ <vxe-form-item :title="$t1('单据类型') + ':'" field="objTypeName">
96
+ <template v-slot>
97
+ <el-input
98
+ class="search-input"
99
+ max="200"
100
+ v-model="formData.objTypeName"
101
+ @clear="
102
+ formData.objTypeCode = null;
103
+ $forceUpdate();
104
+ "
105
+ v-el-readonly
106
+ clearable
107
+ >
108
+ <i
109
+ slot="suffix"
110
+ class="el-input__icon el-icon-search"
111
+ @click="showWfObjConfigDialog = true"
112
+ ></i>
113
+ </el-input>
114
+ </template>
115
+ </vxe-form-item>
116
+ <vxe-form-item :title="$t1('流程状态') + ':'" field="stat">
117
+ <template v-slot>
118
+ <el-select v-model="formData.stat" clearable>
119
+ <el-option :value="1" :label="$t1('审核中')"></el-option>
120
+ <el-option :value="2" :label="$t1('已完成')"></el-option>
121
+ <el-option :value="3" :label="$t1('已驳回')"></el-option>
122
+ </el-select>
123
+ </template>
124
+ </vxe-form-item>
125
+ <vxe-form-item :title="$t1('启动人') + ':'" field="starterName">
126
+ <template v-slot>
127
+ <el-input v-model="formData.starterName" size="small" clearable />
128
+ </template>
129
+ </vxe-form-item>
130
+ <vxe-form-item title="启动时间:">
131
+ <template v-slot>
132
+ <el-date-picker
133
+ v-model="formData.startTime"
134
+ type="datetime"
135
+ placeholder=""
136
+ size="small"
137
+ clearable
138
+ value-format="yyyy-MM-dd HH:mm:ss"
139
+ :picker-options="$baseStartPickerOptions(formData.endTime)"
140
+ ></el-date-picker>
141
+ <span>-</span>
142
+ <el-date-picker
143
+ v-model="formData.endTime"
144
+ type="datetime"
145
+ placeholder=""
146
+ size="small"
147
+ clearable
148
+ value-format="yyyy-MM-dd HH:mm:ss"
149
+ default-time="23:59:59"
150
+ :picker-options="$baseEndPickerOptions(formData.startTime)"
151
+ ></el-date-picker>
152
+ </template>
153
+ </vxe-form-item>
154
+ </vxe-form>
155
+ </template>
156
+ </vxe-grid>
157
+ </div>
158
+ </div>
159
+ </el-tab-pane>
160
+ <el-tab-pane :label="$t1('全部流程2')" name="third" v-if="flag == 1">
161
+ <div class="grid-height">
162
+ <vxe-grid
163
+ ref="table-m2"
164
+ v-bind="vxeOption2"
165
+ @resizable-change="$vxeTableUtil.onColumnWitchChange"
166
+ @custom="$vxeTableUtil.customHandle"
167
+ >
168
+ <template #form>
169
+ <div class="clearfix screen-btns">
170
+ <div class="fl">
171
+ <base-table-export
172
+ :option="{ title: $t1('流程待办导出'), targetRef: 'table-m2' }"
173
+ :parent-target="_self"
174
+ />
175
+ </div>
176
+ <div class="fr">
177
+ <vxe-button
178
+ icon="el-icon-brush"
179
+ class="button-sty"
180
+ @click="resetEvent2"
181
+ type="text"
182
+ status="primary"
183
+ plain
184
+ >{{ $t1("重置") }}
185
+ </vxe-button>
186
+ <vxe-button
187
+ status="warning"
188
+ icon="el-icon-search"
189
+ class="button-sty"
190
+ @click="searchEvent2"
191
+ >
192
+ {{ $t1("搜索") }}
193
+ </vxe-button>
194
+ </div>
195
+ </div>
196
+ <vxe-form
197
+ ref="form"
198
+ class="screen-box"
199
+ title-width="92px"
200
+ title-align="right"
201
+ :data="formData2"
202
+ @submit="searchEvent2"
203
+ @reset="searchEvent2"
204
+ >
205
+ <vxe-form-item :title="$t1('流程主题') + ':'" field="name">
206
+ <template v-slot>
207
+ <el-input v-model="formData2.name" size="small" clearable />
208
+ </template>
209
+ </vxe-form-item>
210
+ <vxe-form-item :title="$t1('单据类型') + ':'" field="objTypeName">
211
+ <template v-slot>
212
+ <el-input
213
+ class="search-input"
214
+ max="200"
215
+ v-model="formData2.objTypeName"
216
+ @clear="
217
+ formData2.objTypeCode = null;
218
+ $forceUpdate();
219
+ "
220
+ v-el-readonly
221
+ clearable
222
+ >
223
+ <i
224
+ slot="suffix"
225
+ class="el-input__icon el-icon-search"
226
+ @click="showWfObjConfigDialog2 = true"
227
+ ></i>
228
+ </el-input>
229
+ </template>
230
+ </vxe-form-item>
231
+ <vxe-form-item :title="$t1('流程状态') + ':'" field="stat">
232
+ <template v-slot>
233
+ <el-select v-model="formData2.stat" clearable>
234
+ <el-option :value="1" :label="$t1('审核中')"></el-option>
235
+ <el-option :value="2" :label="$t1('已完成')"></el-option>
236
+ <el-option :value="3" :label="$t1('已驳回')"></el-option>
237
+ </el-select>
238
+ </template>
239
+ </vxe-form-item>
240
+ <vxe-form-item :title="$t1('当前任务用户') + ':'" field="candidateNames">
241
+ <template v-slot>
242
+ <el-input v-model="formData2.candidateNames" size="small" clearable />
243
+ </template>
244
+ </vxe-form-item>
245
+ </vxe-form>
246
+ </template>
247
+ </vxe-grid>
248
+ </div>
249
+ </el-tab-pane>
250
+ </el-tabs>
251
+ <wfObjConfigDialog
252
+ v-if="showWfObjConfigDialog"
253
+ :visiable.sync="showWfObjConfigDialog"
254
+ :type.sync="type"
255
+ @confirm="confirmInsertWfObjConfig"
256
+ :multi="false"
257
+ ></wfObjConfigDialog>
258
+ <wfObjConfigDialog
259
+ v-if="showWfObjConfigDialog2"
260
+ :visiable.sync="showWfObjConfigDialog2"
261
+ :type="99"
262
+ @confirm="confirmInsertWfObjConfig2"
263
+ :multi="false"
264
+ ></wfObjConfigDialog>
265
+ </div>
266
+ </template>
267
+ <script>
268
+ import { treeScollx } from "@base/utils/global.js";
269
+ import wfObjConfigDialog from "../wf_obj_config/dialog.vue";
270
+
271
+ export default {
272
+ name: "wf_manage:list",
273
+ components: { wfObjConfigDialog },
274
+ created() {},
275
+ async mounted() {
276
+ treeScollx({ target: this, type: "default" });
277
+ await this.initWfParam();
278
+ this.initTableList();
279
+ this.initRole();
280
+ },
281
+ data() {
282
+ return {
283
+ activeName: "second",
284
+ // dataId: 0,
285
+ // showEdit: false,
286
+ vxeOption: {},
287
+ formData: {},
288
+ checkNode: {},
289
+ defaultProps: {
290
+ label: "label", //这里是树结构中需显示的数据(即接口返回的需展示在页面上的参数)
291
+ children: [],
292
+ isLeaf: "leaf",
293
+ },
294
+ wfObjTypes: [],
295
+ showWfObjConfigDialog: false,
296
+ showWfObjConfigDialog2: false,
297
+ flag: 0,
298
+ vxeOption2: {},
299
+ formData2: {},
300
+
301
+ param: {},
302
+ wfContent: null,
303
+ showWfContent: false,
304
+ };
305
+ },
306
+ computed: {
307
+ type() {
308
+ return this.checkNode && this.checkNode.data ? this.checkNode.data.type : "";
309
+ },
310
+ checkNodeData() {
311
+ return this.checkNode && this.checkNode.data ? this.checkNode.data : {};
312
+ },
313
+ },
314
+ methods: {
315
+ searchEvent() {
316
+ this.$refs["table-m1"].commitProxy("reload");
317
+ },
318
+ resetEvent() {
319
+ this.formData = {};
320
+ this.$refs["table-m1"].commitProxy("reload");
321
+ },
322
+
323
+ initTableList() {
324
+ let that = this;
325
+ let paramColumns = this.wfParamDTOs.map((item) => {
326
+ let flag = item.paramName == "单号";
327
+ return {
328
+ title: this.$t1(item.paramName),
329
+ field: item.paramKey,
330
+ width: 150,
331
+ fixed: flag ? "left" : "",
332
+ slots: flag
333
+ ? {
334
+ default: ({ row }) => {
335
+ return [
336
+ <div>
337
+ <a
338
+ href="javascript:void(0);"
339
+ class="a-link"
340
+ onclick={() => {
341
+ this.openEditDialog(row);
342
+ }}
343
+ style="font-weight:bold; text-decoration: underline"
344
+ >
345
+ <el-tooltip
346
+ class="item"
347
+ effect="dark"
348
+ content={this.$t1("查看")}
349
+ placement="top-start"
350
+ >
351
+ <span>{row.param1}</span>
352
+ </el-tooltip>
353
+ </a>
354
+ </div>,
355
+ ];
356
+ },
357
+ }
358
+ : "",
359
+ };
360
+ });
361
+
362
+ // let statuses = {0: '未启动', 1: '审核中', 2: '已完成', 3: '已驳回', 4: '中断'};
363
+ var statuses = {
364
+ 0: [<el-tag type="warning">{this.$t1("未启动")}</el-tag>],
365
+ 1: [<el-tag>{this.$t1("审核中")}</el-tag>],
366
+ 2: [<el-tag type="success">{this.$t1("已完成")}</el-tag>],
367
+ 3: [<el-tag type="danger">{this.$t1("已驳回")}</el-tag>],
368
+ 4: [<el-tag type="danger">{this.$t1("中断")}</el-tag>],
369
+ };
370
+ let tableOption = {
371
+ vue: this,
372
+ tableRef: "table-m1",
373
+ tableName: "user-wf-wf_manage-list-m2",
374
+ path: USER_PREFIX + "/wf_info/listPage",
375
+ param: () => {
376
+ return {
377
+ type: this.type,
378
+ ...this.formData,
379
+ };
380
+ },
381
+ /*config: {
382
+ proxyConfig: {
383
+ autoLoad: false
384
+ }
385
+ },*/
386
+ columns: [
387
+ { type: "checkbox", width: 48, resizable: false, fixed: "left" },
388
+ {
389
+ title: this.$t1("流程主题"),
390
+ field: "name",
391
+ width: 150,
392
+ fixed: "left",
393
+ },
394
+ {
395
+ title: this.$t1("单据类型"),
396
+ field: "objTypeName",
397
+ width: 150,
398
+ },
399
+ {
400
+ title: this.$t1("启动人"),
401
+ field: "starterName",
402
+ width: 150,
403
+ },
404
+ {
405
+ title: this.$t1("当前任务"),
406
+ field: "taskName",
407
+ width: 150,
408
+ },
409
+ {
410
+ title: this.$t1("当前任务用户"),
411
+ field: "candidateNames",
412
+ width: 150,
413
+ },
414
+ {
415
+ title: this.$t1("流程状态"),
416
+ field: "stat",
417
+ width: 150,
418
+ slots: {
419
+ default: ({ row }) => {
420
+ let html = statuses[row.stat] || "";
421
+ return html;
422
+ },
423
+ },
424
+ },
425
+ {
426
+ title: this.$t1("启动时间"),
427
+ field: "createDate",
428
+ width: 150,
429
+ },
430
+ ...paramColumns,
431
+ {
432
+ width: 47,
433
+ fixed: "right",
434
+ title: "",
435
+ sortable: false,
436
+ slots: {
437
+ default: ({ row }) => {
438
+ return [
439
+ <a
440
+ href="javascript:void(0);"
441
+ class="a-link"
442
+ onclick={() => {
443
+ // this.$refs["wfIframeDialog"].wfEdit(row);
444
+ this.openEditDialog(row);
445
+ }}
446
+ >
447
+ <el-tooltip
448
+ enterable={false}
449
+ effect="dark"
450
+ content={this.$t1("查看")}
451
+ placement="top"
452
+ popper-class="tooltip-skin"
453
+ >
454
+ <i class="el-icon-edit" />
455
+ </el-tooltip>
456
+ </a>,
457
+ ];
458
+ },
459
+ },
460
+ },
461
+ ],
462
+ };
463
+ this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
464
+ this.vxeOption = opts;
465
+ });
466
+ },
467
+ openEditDialog(row) {
468
+ /*let a = 1;
469
+ let url = row.url + '.vue';
470
+ let id = row.objId;
471
+ this.dataId = !id || typeof id == 'object' ? 0 : id;
472
+ this.content = require('@/views' + url).default;*/
473
+ // this.activeName = 'first';
474
+ // this.$openEditView('showEdit');
475
+
476
+ let id = row.objId;
477
+ let wfDataId = !id || typeof id == "object" ? 0 : Number(id);
478
+
479
+ if (row.url == "form") {
480
+ let formCode = null;
481
+ if (row.formCode) {
482
+ formCode = row.formCode;
483
+ } else {
484
+ formCode = row.objTypeCode.substr(9);
485
+ }
486
+ this.param = {
487
+ formCode: formCode,
488
+ dataId: wfDataId,
489
+ };
490
+ let url = "/user/form/vform/render.vue";
491
+ this.wfContent = require("@base/views" + url).default;
492
+ } else {
493
+ this.param = {
494
+ _dataId: wfDataId,
495
+ };
496
+ let url = row.url + ".vue";
497
+ this.wfContent = require("@/views" + url).default;
498
+ }
499
+ this.activeName = "first";
500
+ this.$openEditView("showWfContent");
501
+ },
502
+ guid() {
503
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) {
504
+ var r = (Math.random() * 16) | 0,
505
+ v = c == "x" ? r : (r & 0x3) | 0x8;
506
+ return v.toString(16);
507
+ });
508
+ },
509
+ clearNodeClick() {
510
+ /* this.formData.saleOrgId = '';
511
+ this.formData.saleOrgName = '';
512
+ this.$refs.tree.setCurrentKey();
513
+ this.searchEvent(); */
514
+ },
515
+ handleNodeClick(data, node, v) {
516
+ this.checkNode = node;
517
+ this.formData.objTypeName = null;
518
+ this.formData.objTypeCode = null;
519
+ this.$forceUpdate();
520
+ this.searchEvent();
521
+ },
522
+ // 异步树叶子节点懒加载逻辑
523
+ loadNode(node, resolve) {
524
+ if (!node || !node.data || node.data.type === undefined) {
525
+ this.initNodeData(node, resolve);
526
+ return;
527
+ }
528
+ this.$http({
529
+ url: USER_PREFIX + "/wf_obj_config/getWfGroups",
530
+ method: "post",
531
+ data: {
532
+ type: node.data.type,
533
+ },
534
+ success: (res) => {
535
+ let rows = res.objx || [];
536
+ rows.forEach((item) => {
537
+ item.leaf = true;
538
+ item.label = item.objTypeName + "(" + item.num + ")";
539
+ item.type = node.data.type;
540
+ item.uuid = this.guid();
541
+ });
542
+ resolve(rows);
543
+ },
544
+ });
545
+ },
546
+ initNodeData(node, resolve) {
547
+ let data = [
548
+ {
549
+ uuid: -1,
550
+ label: this.$t1("待审批的"),
551
+ type: 0,
552
+ leaf: true,
553
+ },
554
+ {
555
+ uuid: -2,
556
+ label: this.$t1("我发起的"),
557
+ type: 1,
558
+ leaf: true,
559
+ },
560
+ {
561
+ uuid: -3,
562
+ label: this.$t1("已审批的"),
563
+ type: 2,
564
+ leaf: true,
565
+ },
566
+ {
567
+ uuid: -4,
568
+ label: this.$t1("已完成的"),
569
+ type: "3",
570
+ leaf: true,
571
+ },
572
+ {
573
+ uuid: -5,
574
+ label: this.$t1("我转办的"),
575
+ type: "4",
576
+ leaf: true,
577
+ },
578
+ ];
579
+ resolve(data);
580
+ this.$nextTick(() => {
581
+ if (node.childNodes.length) {
582
+ let firstNode = node.childNodes[0];
583
+ this.$refs.tree.setCurrentKey(firstNode.data.uuid);
584
+ this.checkNode = firstNode;
585
+ this.$forceUpdate();
586
+ // this.handleNodeClick(firstNode.data, firstNode);
587
+ }
588
+ });
589
+ /*this.$nextTick(() => {
590
+ if (node.childNodes.length) {
591
+ let nodedata = node.childNodes[0];
592
+ nodedata.expanded = true;
593
+ nodedata.loadData(arr => {
594
+ if (arr.length) {
595
+ setTimeout(() => {
596
+ this.$refs.tree.setCurrentKey(arr[0].uuid);
597
+ let node = this.$refs.tree.getNode(arr[0]);
598
+ this.handleNodeClick(arr[0], node);
599
+ }, 50);
600
+ }
601
+ });
602
+ }
603
+ });*/
604
+ },
605
+ confirmInsertWfObjConfig(rows) {
606
+ if (rows.length) {
607
+ let row = rows[0];
608
+ this.$set(this.formData, "objTypeName", row.objTypeName);
609
+ this.$set(this.formData, "objTypeCode", row.objTypeCode);
610
+ }
611
+ },
612
+ async initWfParam() {
613
+ return this.$http({
614
+ url: USER_PREFIX + "/wf_param/list",
615
+ method: `post`,
616
+ data: {},
617
+ success: (res) => {
618
+ this.wfParamDTOs = res.objx || [];
619
+ },
620
+ });
621
+ },
622
+ //m2
623
+ initRole() {
624
+ this.$http({
625
+ url: USER_PREFIX + "/user/currentUser",
626
+ method: "post",
627
+ success: (res) => {
628
+ let userInfo = res.objx;
629
+ this.getIsAdmin(userInfo);
630
+ },
631
+ });
632
+ },
633
+ getIsAdmin(userInfo) {
634
+ this.$http({
635
+ url: USER_PREFIX + "/userb/getUserRole",
636
+ method: `post`,
637
+ data: { id: userInfo.id },
638
+ success: (res2) => {
639
+ let rows = res2.objx || [];
640
+ let codes = rows.map((row) => row.roleCode);
641
+ if (codes.includes("superadmin") || codes.includes("wfadmin")) {
642
+ this.flag = 1;
643
+ setTimeout(() => {
644
+ this.initTableList2();
645
+ }, 200);
646
+ }
647
+ },
648
+ });
649
+ },
650
+ searchEvent2() {
651
+ this.$refs["table-m2"].commitProxy("reload");
652
+ },
653
+ resetEvent2() {
654
+ this.formData2 = {};
655
+ this.$refs["table-m2"].commitProxy("reload");
656
+ },
657
+ initTableList2() {
658
+ let that = this;
659
+ let paramColumns = this.wfParamDTOs.map((item) => {
660
+ let flag = item.paramName == "单号";
661
+ return {
662
+ title: this.$t1(item.paramName),
663
+ field: item.paramKey,
664
+ width: 150,
665
+ fixed: flag ? "left" : "",
666
+ slots: flag
667
+ ? {
668
+ default: ({ row }) => {
669
+ return [
670
+ <div>
671
+ <a
672
+ href="javascript:void(0);"
673
+ class="a-link"
674
+ onclick={() => {
675
+ this.openEditDialog(row);
676
+ }}
677
+ style="font-weight:bold; text-decoration: underline"
678
+ >
679
+ <el-tooltip
680
+ class="item"
681
+ effect="dark"
682
+ content={this.$t1("查看")}
683
+ placement="top-start"
684
+ >
685
+ <span>{row.param1}</span>
686
+ </el-tooltip>
687
+ </a>
688
+ </div>,
689
+ ];
690
+ },
691
+ }
692
+ : "",
693
+ };
694
+ });
695
+
696
+ var statuses = {
697
+ 0: [<el-tag type="warning">{this.$t1("未启动")}</el-tag>],
698
+ 1: [<el-tag>{this.$t1("审核中")}</el-tag>],
699
+ 2: [<el-tag type="success">{this.$t1("已完成")}</el-tag>],
700
+ 3: [<el-tag type="danger">{this.$t1("已驳回")}</el-tag>],
701
+ 4: [<el-tag type="danger">{this.$t1("中断")}</el-tag>],
702
+ };
703
+ let tableOption = {
704
+ vue: this,
705
+ tableRef: "table-m2",
706
+ tableName: "user-wf-wf_manage-list-m3",
707
+ path: USER_PREFIX + "/wf_info/listPageAll",
708
+ param: () => {
709
+ return {
710
+ ...this.formData2,
711
+ };
712
+ },
713
+ columns: [
714
+ { type: "checkbox", width: 48, resizable: false, fixed: "left" },
715
+ {
716
+ title: this.$t1("流程主题"),
717
+ field: "name",
718
+ width: 150,
719
+ fixed: "left",
720
+ },
721
+ {
722
+ title: this.$t1("单据类型"),
723
+ field: "objTypeName",
724
+ width: 150,
725
+ },
726
+ {
727
+ title: this.$t1("启动人"),
728
+ field: "starterName",
729
+ width: 150,
730
+ },
731
+ {
732
+ title: this.$t1("当前任务"),
733
+ field: "taskName",
734
+ width: 150,
735
+ },
736
+ {
737
+ title: this.$t1("当前任务用户"),
738
+ field: "candidateNames",
739
+ width: 150,
740
+ },
741
+ {
742
+ title: this.$t1("流程状态"),
743
+ field: "stat",
744
+ width: 150,
745
+ slots: {
746
+ default: ({ row }) => {
747
+ let html = statuses[row.stat] || "";
748
+ return html;
749
+ },
750
+ },
751
+ },
752
+ {
753
+ title: this.$t1("启动时间"),
754
+ field: "createDate",
755
+ width: 150,
756
+ },
757
+ ...paramColumns,
758
+ {
759
+ width: 47,
760
+ fixed: "right",
761
+ title: "",
762
+ sortable: false,
763
+ slots: {
764
+ default: ({ row }) => {
765
+ return [
766
+ <a
767
+ href="javascript:void(0);"
768
+ class="a-link"
769
+ onclick={() => {
770
+ this.openEditDialog(row);
771
+ }}
772
+ >
773
+ <el-tooltip
774
+ enterable={false}
775
+ effect="dark"
776
+ content={this.$t1("查看")}
777
+ placement="top"
778
+ popper-class="tooltip-skin"
779
+ >
780
+ <i class="el-icon-edit" />
781
+ </el-tooltip>
782
+ </a>,
783
+ ];
784
+ },
785
+ },
786
+ },
787
+ ],
788
+ };
789
+ this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
790
+ this.vxeOption2 = opts;
791
+ });
792
+ },
793
+ confirmInsertWfObjConfig2(rows) {
794
+ if (rows.length) {
795
+ let row = rows[0];
796
+ this.$set(this.formData2, "objTypeName", row.objTypeName);
797
+ this.$set(this.formData2, "objTypeCode", row.objTypeCode);
798
+ }
799
+ },
800
+ },
801
+ };
802
+ </script>