ui-process-h5 2.1.0-beta → 2.1.1-beta

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.
Files changed (91) hide show
  1. package/README.md +204 -11
  2. package/package.json +25 -56
  3. package/v2/style.css +1 -0
  4. package/v2/ui-process-h5.js +9926 -0
  5. package/v2/ui-process-h5.umd.cjs +18 -0
  6. package/v2.7/style.css +1 -0
  7. package/v2.7/ui-process-h5.js +9303 -0
  8. package/v2.7/ui-process-h5.umd.cjs +18 -0
  9. package/v3/style.css +1 -0
  10. package/v3/ui-process-h5.js +6819 -0
  11. package/v3/ui-process-h5.umd.cjs +6 -0
  12. package/build/configure/README.md +0 -211
  13. package/build/configure/package.json +0 -32
  14. package/debug.js +0 -9
  15. package/index.html +0 -12
  16. package/src/App.vue +0 -233
  17. package/src/assets/font-icon/iconfont.scss +0 -57
  18. package/src/assets/font-icon/iconfont.ttf +0 -0
  19. package/src/assets/img/add-file.png +0 -0
  20. package/src/assets/img/arrow-right.png +0 -0
  21. package/src/assets/img/arrow.png +0 -0
  22. package/src/assets/img/check.png +0 -0
  23. package/src/assets/img/del.png +0 -0
  24. package/src/assets/img/doc.png +0 -0
  25. package/src/assets/img/file.png +0 -0
  26. package/src/assets/img/image.png +0 -0
  27. package/src/assets/img/pdf.png +0 -0
  28. package/src/assets/img/process.png +0 -0
  29. package/src/assets/img/xls.png +0 -0
  30. package/src/assets/img/zip.png +0 -0
  31. package/src/assets/js/auth.js +0 -65
  32. package/src/assets/js/errorCode.js +0 -6
  33. package/src/assets/js/message.js +0 -352
  34. package/src/assets/js/request.js +0 -99
  35. package/src/assets/js/toast.js +0 -239
  36. package/src/assets/js/top.js +0 -229
  37. package/src/assets/js/utils.js +0 -83
  38. package/src/assets/js/vuePopper.js +0 -123
  39. package/src/assets/query.png +0 -0
  40. package/src/assets/status/check.png +0 -0
  41. package/src/assets/status/del.png +0 -0
  42. package/src/assets/status/error.png +0 -0
  43. package/src/assets/status/loading.png +0 -0
  44. package/src/assets/status/success.png +0 -0
  45. package/src/main.js +0 -17
  46. package/src/packages/attchUpload/index.js +0 -375
  47. package/src/packages/attchUpload/index.scss +0 -143
  48. package/src/packages/attchUpload/index.vue +0 -173
  49. package/src/packages/downSelect/index.js +0 -119
  50. package/src/packages/downSelect/index.scss +0 -88
  51. package/src/packages/downSelect/index.vue +0 -62
  52. package/src/packages/index.js +0 -6
  53. package/src/packages/popup/index.js +0 -125
  54. package/src/packages/popup/index.scss +0 -178
  55. package/src/packages/popup/index.vue +0 -80
  56. package/src/packages/preview/index.js +0 -40
  57. package/src/packages/preview/index.vue +0 -15
  58. package/src/packages/previewImage/index.js +0 -286
  59. package/src/packages/previewImage/index.scss +0 -76
  60. package/src/packages/previewImage/index.vue +0 -53
  61. package/src/packages/process/index.js +0 -1016
  62. package/src/packages/process/index.scss +0 -188
  63. package/src/packages/process/index.vue +0 -291
  64. package/src/packages/process/operation/backNode.vue +0 -396
  65. package/src/packages/process/operation/cancel.vue +0 -425
  66. package/src/packages/process/operation/ccTask.vue +0 -256
  67. package/src/packages/process/operation/complete.vue +0 -1384
  68. package/src/packages/process/operation/counterSign.vue +0 -498
  69. package/src/packages/process/operation/delegateTask.vue +0 -493
  70. package/src/packages/process/operation/index.js +0 -8
  71. package/src/packages/process/operation/index.scss +0 -212
  72. package/src/packages/process/operation/msgList.vue +0 -174
  73. package/src/packages/process/operation/treeNode.vue +0 -901
  74. package/src/packages/process/operation/treePerson.vue +0 -304
  75. package/src/packages/submitPopup/index.js +0 -708
  76. package/src/packages/submitPopup/index.scss +0 -190
  77. package/src/packages/submitPopup/index.vue +0 -125
  78. package/src/packages/tab/index.js +0 -236
  79. package/src/packages/tab/index.scss +0 -177
  80. package/src/packages/tab/index.vue +0 -155
  81. package/src/packages/tip/index.js +0 -80
  82. package/src/packages/tip/index.scss +0 -121
  83. package/src/packages/tip/index.vue +0 -57
  84. package/src/packages/viewAttchList/index.js +0 -138
  85. package/src/packages/viewAttchList/index.scss +0 -76
  86. package/src/packages/viewAttchList/index.vue +0 -121
  87. package/src/style.css +0 -80
  88. package/vite.config.ts +0 -118
  89. /package/{build/scripts → scripts}/postinstall.mjs +0 -0
  90. /package/{build/scripts → scripts}/switch-cli.mjs +0 -0
  91. /package/{build/scripts → scripts}/utils.mjs +0 -0
@@ -1,901 +0,0 @@
1
- <template>
2
- <div class="treenode" v-if="nodeItems && nodeItems.length">
3
- <!-- 多分支 -->
4
- <div class="treenode-multi" v-if="!endNode">
5
- <div class="treenode-node" style="margin-top: 0">
6
- <template v-for="value in nodeItems">
7
- <!-- 多选 -->
8
- <div
9
- v-if="checkType == 'InclusiveGatewayModel' && nodeItems.length > 1"
10
- class="treenode-checkbox"
11
- :class="
12
- checkBoxArr.includes(value.id) ? 'treenode-checkbox-active' : ''
13
- "
14
- @click="handleCheckBoxClick(value)"
15
- >
16
- <span>
17
- <img
18
- class="treenode-checkbox-active-img"
19
- v-if="checkBoxArr.includes(value.id)"
20
- :src="check"
21
- />
22
- </span>
23
- {{ value.nodeName || value.name }}
24
- </div>
25
- <!-- 单选 -->
26
- <div
27
- v-else-if="
28
- checkType == 'ExclusiveGatewayModel' && nodeItems.length > 1
29
- "
30
- class="treenode-radio"
31
- :class="radioArr == value.id ? 'treenode-radio-active' : ''"
32
- @click="handleRadioClick(value)"
33
- >
34
- <span />
35
- {{ value.nodeName || value.name }}
36
- </div>
37
- </template>
38
- </div>
39
-
40
- <!-- 多选下一级分支 -->
41
- <template
42
- v-if="
43
- checkType == 'InclusiveGatewayModel' &&
44
- checkBoxItem &&
45
- checkBoxItem.length
46
- "
47
- >
48
- <div class="treenode-node" v-for="value in checkBoxItem">
49
- <div v-if="value.childNode && value.childNode.length">
50
- <TreeNode
51
- :items="value.childNode"
52
- :endNode="value.childNode.length == 1"
53
- :nodeType="nodeType"
54
- :param="param"
55
- :checkType="value.type"
56
- @onMultiNode="onMultiNode"
57
- @onVars="onVars"
58
- />
59
- </div>
60
- <div v-else class="personselect">
61
- <div class="personselect-name">
62
- {{ value.nodeName || value.name }}
63
- </div>
64
- <div class="items-person">
65
- <template
66
- v-if="
67
- value.humanPerformerName !== '固定账户' &&
68
- value.humanPerformerName !== '与流程申请人相关'
69
- "
70
- >
71
- <div
72
- class="items-person-set"
73
- @click.stop="handleOpenPopup(value)"
74
- >
75
- 设置
76
- </div>
77
- </template>
78
- <div
79
- class="items-person-name"
80
- v-if="
81
- value.humanPerformerName !== '固定账户' &&
82
- value.humanPerformerName !== '与流程申请人相关'
83
- "
84
- >
85
- {{ partNode[value.id] ? partNode[value.id].join(",") : "" }}
86
- </div>
87
- <div
88
- class="items-person-name"
89
- v-else-if="value.routeTxt && value.routeTxt.userNames"
90
- >
91
- {{ value.routeTxt.userNames }}
92
- </div>
93
- </div>
94
- </div>
95
- </div>
96
- </template>
97
-
98
- <template
99
- v-if="
100
- checkType == 'ExclusiveGatewayModel' && radioItem && radioItem.length
101
- "
102
- >
103
- <div class="treenode-node" v-for="value in radioItem">
104
- <div v-if="value.childNode && value.childNode.length">
105
- <TreeNode
106
- :items="value.childNode"
107
- :endNode="value.childNode.length == 1"
108
- :nodeType="nodeType"
109
- :param="param"
110
- :checkType="value.type"
111
- @onMultiNode="onMultiNode"
112
- @onVars="onVars"
113
- />
114
- </div>
115
- <div v-else class="personselect">
116
- <div class="personselect-name">
117
- {{ value.nodeName || value.name }}
118
- </div>
119
- <div class="items-person">
120
- <template
121
- v-if="
122
- value.humanPerformerName !== '固定账户' &&
123
- value.humanPerformerName !== '与流程申请人相关'
124
- "
125
- >
126
- <div
127
- class="items-person-set"
128
- @click.stop="handleOpenPopup(value)"
129
- >
130
- 设置
131
- </div>
132
- </template>
133
- <div
134
- class="items-person-name"
135
- v-if="
136
- value.humanPerformerName !== '固定账户' &&
137
- value.humanPerformerName !== '与流程申请人相关'
138
- "
139
- >
140
- {{ partNode[value.id] ? partNode[value.id].join(",") : "" }}
141
- </div>
142
- <div
143
- class="items-person-name"
144
- v-else-if="value.routeTxt && value.routeTxt.userNames"
145
- >
146
- {{ value.routeTxt.userNames }}
147
- </div>
148
- </div>
149
- </div>
150
- </div>
151
- </template>
152
- </div>
153
- <!-- 单分支 -->
154
- <div class="treenode-single" v-if="endNode">
155
- <div class="treenode-single-items" v-for="value in nodeItems">
156
- <div class="personselect">
157
- <div class="personselect-name">
158
- {{ value.nodeName || value.name }}
159
- </div>
160
- <div class="items-person" v-if="value.type !== 'EndEventModel'">
161
- <template
162
- v-if="
163
- value.humanPerformerName !== '固定账户' &&
164
- value.humanPerformerName !== '与流程申请人相关'
165
- "
166
- >
167
- <div
168
- class="items-person-set"
169
- @click.stop="handleOpenPopup(value)"
170
- >
171
- 设置
172
- </div>
173
- </template>
174
- <div class="items-person-name" v-if="personMakeList[value.id]">
175
- {{ personMakeList[value.id] }}
176
- </div>
177
-
178
- <div
179
- class="items-person-name"
180
- v-else-if="
181
- value.humanPerformerName !== '固定账户' &&
182
- value.humanPerformerName !== '与流程申请人相关'
183
- "
184
- >
185
- {{ partNode[value.id] ? partNode[value.id].join(",") : "" }}
186
- </div>
187
- <div
188
- class="items-person-name"
189
- v-else-if="value.routeTxt && value.routeTxt.userNames"
190
- >
191
- {{ value.routeTxt.userNames }}
192
- </div>
193
- </div>
194
- </div>
195
- </div>
196
- </div>
197
- <!-- 选人 -->
198
- <TopPopup
199
- v-bind:visible="visible"
200
- v-on:update:visible="(val) => (visible = val)"
201
- ref="TopPopup"
202
- titleText="选人"
203
- :isDrawer="true"
204
- >
205
- <departPerson
206
- :isTitle="false"
207
- v-if="visible"
208
- v-bind="entity"
209
- @callback="handleCallback"
210
- >
211
- </departPerson>
212
- </TopPopup>
213
- <!-- Tips -->
214
- <TopTips
215
- ref="topTips"
216
- :text="textTips"
217
- :statusTips="statusTips"
218
- :type="typeTips"
219
- />
220
- </div>
221
- </template>
222
- <script>
223
- import TopPopup from "../../popup/index.vue";
224
- import success from "@/assets/status/success.png";
225
- import { departPerson } from "checked-pick-app";
226
- import TopTips from "../../tip/index.vue";
227
- import "checked-pick-app/style.css";
228
-
229
- export default {
230
- name: "TreeNode",
231
- components: {
232
- TopPopup,
233
- TopTips,
234
- departPerson,
235
- },
236
- props: {
237
- // 传入节点数据
238
- items: {
239
- type: Array,
240
- default: () => [],
241
- },
242
- // end节点
243
- endNode: {
244
- type: Boolean,
245
- default: false,
246
- },
247
- // 当前类型
248
- nodeType: {
249
- type: String,
250
- default: "outing", // | nexting
251
- },
252
- // 通用参数
253
- param: {
254
- type: Object,
255
- default: () => {},
256
- },
257
- // 单选,多选
258
- checkType: {
259
- type: String,
260
- default: "", // | nexting
261
- },
262
- },
263
- data() {
264
- return {
265
- // 传入节点
266
- nodeItems: [],
267
- // 弹窗
268
- visible: false,
269
- // 多选选中,
270
- checkBoxArr: [],
271
- // 多选选中对象
272
- checkBoxItem: [],
273
- //单选选中
274
- radioArr: "",
275
- // 单选选中对象
276
- radioItem: [],
277
- partObjId: "",
278
- entity: {
279
- source: "0",
280
- type: this.param.isCheckType || "0",
281
- orgType: this.param.isOrgType || [0],
282
- request: this.param.request, //'http://59.53.91.231:2100' 0002
283
- codeType: this.param.isCodeType || [3], // 可选类型 1-主体 2-部门 3-人员
284
- multiple: true, // 是否多选
285
- },
286
- // 选中人员数组
287
- multiNodeParticipant: {},
288
- partNode: {},
289
-
290
- /* tips 相关参数 */
291
- textTips: "",
292
- statusTips: false,
293
- typeTips: "success",
294
-
295
- gateVars: {},
296
-
297
- /* 子集 */
298
- onMultiNodeData: {},
299
- onVarsData: {},
300
-
301
- // 固定账户id存储:[]
302
- personMake: [],
303
- personMakeList: {},
304
- };
305
- },
306
- watch: {
307
- items: {
308
- handler(val, vals) {
309
- if (val && val.length) {
310
- console.log("=====item", val);
311
- console.log("=====checkType", this.checkType);
312
-
313
- this.multiNodeParticipant = {};
314
- this.partNode = {};
315
- this.gateVars = {};
316
-
317
- // this.handleNode(val);
318
-
319
- this.$emit("onMultiNode", this.multiNodeParticipant);
320
- this.$emit("onVars", this.gateVars);
321
-
322
- // console.log("子集树:", val);
323
-
324
- if (this.nodeType == "outing") {
325
- this.nodeItems = JSON.parse(JSON.stringify(val));
326
- } else if (this.nodeType == "nexting") {
327
- // this.nodeItems = JSON.parse(JSON.stringify(val));
328
- // this.nodeItems = JSON.parse(JSON.stringify(val));
329
- val.forEach((v) => {
330
- if (
331
- v.userTaskModelDTO.participantList &&
332
- v.userTaskModelDTO.participantList.length
333
- ) {
334
- v.userTaskModelDTO.participantList.map((value) => {
335
- /* */
336
- if (!this.multiNodeParticipant[v.id]) {
337
- this.multiNodeParticipant[v.id] = [];
338
- }
339
- if (!this.partNode[v.id]) {
340
- this.partNode[v.id] = [];
341
- }
342
-
343
- if (!this.multiNodeParticipant[v.id].includes(value.id)) {
344
- this.multiNodeParticipant[v.id].push(value.id);
345
- }
346
-
347
- if (!this.partNode[v.id].includes(value.name)) {
348
- this.partNode[v.id].push(value.name);
349
- }
350
- });
351
- }
352
- if (
353
- v.userTaskModelDTO.humanPerformer.name == "固定账户" ||
354
- v.userTaskModelDTO.humanPerformer.name == "与流程申请人相关"
355
- ) {
356
- this.personMake.push(v.id);
357
- }
358
-
359
- if (this.personMake && this.personMake.length) {
360
- this.param.request
361
- .post(
362
- `aws/repository/getParticipantsOfPerformerNames?taskInstId=${this.param.taskInstId}`,
363
- {
364
- userTaskDefIds: this.personMake,
365
- }
366
- )
367
- .then((res) => {
368
- if (res.code == 200) {
369
- this.personMakeList = res.data;
370
- }
371
- });
372
- }
373
-
374
- this.nodeItems = JSON.parse(JSON.stringify(val));
375
- });
376
- }
377
-
378
- if (this.checkType == "ExclusiveGatewayModel" && val.length == 1) {
379
- this.handleRadioClick(val[0]);
380
- }
381
- }
382
- },
383
- immediate: true,
384
- deep: true,
385
- },
386
- },
387
- computed: {
388
- check() {
389
- return success;
390
- },
391
- },
392
- mounted() {},
393
- methods: {
394
- // 清空数据
395
- clear() {
396
- this.radioArr = "";
397
- this.radioItem = [];
398
- this.checkBoxArr = [];
399
- this.checkBoxItem = [];
400
- this.multiNodeParticipant = {};
401
- this.partNode = {};
402
- this.gateVars = {};
403
- },
404
-
405
- // 校验当前类型
406
- isOption(humanPerformer) {
407
- return (
408
- humanPerformer == "任意指定" ||
409
- humanPerformer == "固定部门" ||
410
- humanPerformer == "固定单位" ||
411
- humanPerformer == "与流程申请人所在组织结构的位置相关" ||
412
- humanPerformer == "固定群组"
413
- );
414
- },
415
- // 选人数据回调
416
- handleCallback(res) {
417
- this.visible = false;
418
- this.multiNodeParticipant[this.partObjId] = [];
419
- this.partNode[this.partObjId] = [];
420
- let arr;
421
-
422
- res.map((v, i) => {
423
- this.multiNodeParticipant[this.partObjId].push(v.uid);
424
- this.partNode[this.partObjId].push(v.name);
425
- });
426
-
427
- if (this.onMultiNodeData) {
428
- this.multiNodeParticipant = {
429
- ...this.multiNodeParticipant,
430
- ...this.onMultiNodeData,
431
- };
432
- }
433
-
434
- this.$emit("onMultiNode", this.multiNodeParticipant);
435
- },
436
- // 单选交互
437
- handleRadioClick(val) {
438
- console.log("=====val", val);
439
- console.log("=====checkType", this.checkType);
440
- if (val) {
441
- this.multiNodeParticipant = {};
442
- this.gateVars = {};
443
- this.$emit("onMultiNode", this.multiNodeParticipant);
444
- if (
445
- val.incomingConditionItemList.length > 0 &&
446
- val.incomingConditionItemList[0].itemName &&
447
- val.incomingConditionItemList[0].compareValue
448
- ) {
449
- this.gateVars[val.incomingConditionItemList[0].itemName] =
450
- val.incomingConditionItemList[0].compareValue;
451
- }
452
- this.radioArr = val.id;
453
- this.radioItem = [val];
454
-
455
- // console.log("选中单选", val);
456
- this.handleNode(val);
457
- this.$emit("onVars", this.gateVars);
458
- }
459
- },
460
- // 多选交互
461
- handleCheckBoxClick(val) {
462
- if (val) {
463
- if (this.checkBoxArr.includes(val.id)) {
464
- console.log('zhhchoval =====',val);
465
- if (
466
- val.incomingConditionItemList.length > 0 &&
467
- val.incomingConditionItemList[0].itemName &&
468
- val.incomingConditionItemList[0].compareValue
469
- ) {
470
- delete this.gateVars[val.incomingConditionItemList[0].itemName]
471
- }
472
- delete this.multiNodeParticipant[val.id];
473
- this.checkBoxItem.splice(this.checkBoxArr.indexOf(val.id), 1);
474
- this.checkBoxArr.splice(this.checkBoxArr.indexOf(val.id), 1);
475
- } else {
476
- if (
477
- val.incomingConditionItemList.length > 0 &&
478
- val.incomingConditionItemList[0].itemName &&
479
- val.incomingConditionItemList[0].compareValue
480
- ) {
481
- this.gateVars[val.incomingConditionItemList[0].itemName] =
482
- val.incomingConditionItemList[0].compareValue;
483
- }
484
- this.checkBoxItem.push(val);
485
- this.checkBoxArr.push(val.id);
486
- }
487
- this.handleNode(val);
488
- this.$emit("onVars", this.gateVars);
489
- }
490
- },
491
-
492
- // 通用交互处理(单一处理存在预设置人员)
493
- handleNode(val) {
494
- console.log("val======", val);
495
- // return;
496
- let childArr =
497
- val.childNode && val.childNode.length
498
- ? val.childNode
499
- : val && val.length
500
- ? val
501
- : [val];
502
- console.log("childArr======", childArr);
503
- console.log("checkBoxItem======", this.checkBoxItem);
504
-
505
- // if (val.incomingConditionItemList.length>0&&
506
- // val.incomingConditionItemList[0].itemName &&
507
- // val.incomingConditionItemList[0].compareValue
508
- // ) {
509
- // if (this.gateVars[val.incomingConditionItemList[0].itemName]) {
510
- // delete this.gateVars[val.incomingConditionItemList[0].itemName];
511
- // } else {
512
- // this.gateVars[val.incomingConditionItemList[0].itemName] =
513
- // val.incomingConditionItemList[0].compareValue;
514
- // }
515
- // }
516
- // let checkBoxItem = {};
517
- // console.log('gateVars======',this.gateVars);
518
- // this.checkBoxItem.map(item=>{
519
- // checkBoxItem[item.incomingConditionItemList[0]['itemName']] = item.incomingConditionItemList[0]['compareValue']
520
- // })
521
-
522
- if (childArr && childArr.length) {
523
- childArr.forEach((v, i) => {
524
- if (v.participantList && v.participantList.length) {
525
- v.participantList.forEach((value, index) => {
526
- if (!this.multiNodeParticipant[v.id]) {
527
- this.multiNodeParticipant[v.id] = [];
528
- }
529
- if (!this.partNode[v.id]) {
530
- this.partNode[v.id] = [];
531
- }
532
-
533
- if (!this.multiNodeParticipant[v.id].includes(value.id)) {
534
- this.multiNodeParticipant[v.id].push(value.id);
535
- }
536
-
537
- if (!this.partNode[v.id].includes(value.name)) {
538
- this.partNode[v.id].push(value.name);
539
- }
540
- });
541
- } else if (v.id && v.humanPerformerName == "固定人员") {
542
- this.param.request
543
- .post(
544
- `/aws/repository/getParticipantsOfPerformerNames?taskInstId=${this.param.taskInstId}`,
545
- { userTaskDefIds: [v.id] }
546
- )
547
- .then((res) => {
548
- if (res.code == 200) {
549
- this.partNode[v.id] = {};
550
- this.partNode[v.id] = res.data[v.id].split(";");
551
- }
552
- });
553
- }
554
-
555
- // vars判断(兼容处理)
556
- if (this.nodeType == "outing") {
557
- // if (
558
- // v.incomingConditionItemList &&
559
- // v.incomingConditionItemList.length
560
- // ) {
561
- // if (val && val.length) {
562
- // this.gateVars[val[0].incomingConditionItemList[0].itemName] =
563
- // val[0].incomingConditionItemList[0].compareValue;
564
- // } else {
565
- // this.gateVars[val.incomingConditionItemList[0].itemName] =
566
- // val.incomingConditionItemList[0].compareValue;
567
- // }
568
- // } else if (
569
- // v.incomingConditionItemList[0].itemName &&
570
- // v.incomingConditionItemList[0].compareValue
571
- // ) {
572
- // // this.gateVars[v.incomingConditionItemList[0].itemName] =
573
- // // v.incomingConditionItemList[0].compareValue;
574
- // }
575
-
576
- if (this.onVarsData) {
577
- this.gateVars = {
578
- ...this.gateVars,
579
- ...this.onVarsData,
580
- };
581
- }
582
- this.$emit("onVars", this.gateVars);
583
- }
584
- });
585
- }
586
- },
587
-
588
- // 开启选人弹窗,根据类型开启
589
- handleOpenPopup(item) {
590
- this.visible = true;
591
- this.partObjId = item.id;
592
-
593
- console.log("item======", item);
594
- if (this.nodeType == "nexting") {
595
- item = {
596
- ...item,
597
- ...item.userTaskModelDTO,
598
- };
599
- } else if (this.nodeType == "outing") {
600
- item = {
601
- ...item,
602
- humanPerformer: {
603
- name: item.humanPerformerName,
604
- },
605
- };
606
- } else {
607
- this.handleTips("加载失败,请刷新", true, "error");
608
- }
609
- if (
610
- item.humanPerformer.name == "固定单位" ||
611
- item.humanPerformerName == "固定单位"
612
- ) {
613
- let subjectName;
614
- let checkedArray = [];
615
- item.routeTxt.companyIds.map((v, i) => {
616
- subjectName = v.name;
617
- });
618
-
619
- if (
620
- this.multiNodeParticipant[item.id] &&
621
- this.multiNodeParticipant[item.id].length
622
- ) {
623
- this.multiNodeParticipant[item.id].map((v, i) => {
624
- checkedArray.push({
625
- type: 3,
626
- uid: v,
627
- });
628
- });
629
- }
630
-
631
- this.entity = {
632
- source: "1",
633
- type: this.param.isCheckType || "0",
634
- orgType: this.param.isOrgType || [0],
635
- request: this.param.request,
636
- codeType: this.param.isCodeType || [3],
637
- multiple: item.loopCardinality != 1,
638
- maxMultiple: item.loopCardinality > 0 ? item.loopCardinality : 0,
639
- subjectName: subjectName,
640
- checkedArray: checkedArray,
641
- };
642
- } else if (
643
- item.humanPerformer.name == "固定部门" ||
644
- item.humanPerformerName == "固定部门"
645
- ) {
646
- let deptCode;
647
- let deptCodeArray = [];
648
- let checkedArray = [];
649
- item.routeTxt.departmentIds.forEach((v, i) => {
650
- if (item.routeTxt.departmentIds.length > 1) {
651
- deptCodeArray.push(v.rangeId);
652
- // deptCode = v.rangeId;
653
- } else {
654
- deptCode = v.rangeId;
655
- }
656
- });
657
-
658
- if (
659
- this.multiNodeParticipant[item.id] &&
660
- this.multiNodeParticipant[item.id].length
661
- ) {
662
- this.multiNodeParticipant[item.id].forEach((v, i) => {
663
- checkedArray.push({
664
- type: 3,
665
- uid: v,
666
- deptId: deptCode,
667
- });
668
- });
669
- }
670
- if (item.routeTxt.departmentIds.length > 1) {
671
- this.entity = {
672
- source: "1",
673
- type: this.param.isCheckType || "0",
674
- orgType: this.param.isOrgType || [0],
675
- request: this.param.request,
676
- codeType: this.param.isCodeType || [3],
677
- multiple: item.loopCardinality != 1,
678
- maxMultiple: item.loopCardinality > 0 ? item.loopCardinality : 0,
679
- deptCodeArray: deptCodeArray,
680
- // deptCode: deptCode,
681
- checkedArray: checkedArray,
682
- };
683
- } else {
684
- this.entity = {
685
- source: "1",
686
- type: this.param.isCheckType || "0",
687
- orgType: this.param.isOrgType || [0],
688
- request: this.param.request,
689
- codeType: this.param.isCodeType || [3],
690
- multiple: item.loopCardinality != 1,
691
- maxMultiple: item.loopCardinality > 0 ? item.loopCardinality : 0,
692
- deptCode: deptCode,
693
- checkedArray: checkedArray,
694
- };
695
- }
696
- } else {
697
- let checkedArray = [];
698
-
699
- if (
700
- this.multiNodeParticipant[item.id] &&
701
- this.multiNodeParticipant[item.id].length
702
- ) {
703
- this.multiNodeParticipant[item.id].map((v, i) => {
704
- checkedArray.push({
705
- type: 3,
706
- uid: v,
707
- });
708
- });
709
- }
710
-
711
- this.entity = {
712
- source: "1",
713
- type: this.param.isCheckType || "0",
714
- orgType: this.param.isOrgType || [0],
715
- request: this.param.request,
716
- codeType: this.param.isCodeType || [3],
717
- multiple: item.loopCardinality != 1,
718
- maxMultiple: item.loopCardinality > 0 ? item.loopCardinality : 0,
719
- checkedArray: checkedArray,
720
- // deptCodeArray:["d603dfca436aa2c8e13a683389e2ca23","7faf6dcaf4fbc41eebc85d5a41035df5"]
721
- };
722
- }
723
- },
724
- handleTips(text, status, type) {
725
- this.textTips = text;
726
- this.statusTips = status;
727
- this.typeTips = type;
728
- this.$refs.topTips.handleOpen();
729
- },
730
- // 子集元素存储
731
- onMultiNode(val) {
732
- if (val) {
733
- // console.log("子集展示", val);
734
- this.onMultiNodeData = val;
735
- this.multiNode = {
736
- ...this.multiNode,
737
- ...this.onMultiNodeData,
738
- };
739
-
740
- this.$emit("onMultiNode", this.multiNode);
741
- }
742
- },
743
- onVars(val) {
744
- if (val) {
745
- this.onVarsData = val;
746
-
747
- this.getVars = {
748
- ...this.gateVars,
749
- ...this.onVarsData,
750
- };
751
-
752
- this.$emit("onVars", this.getVars);
753
- }
754
- },
755
- },
756
- };
757
- </script>
758
- <style lang="scss" scoped>
759
- .treenode {
760
- &-multi {
761
- border-radius: 4px;
762
- background: #f8f8f8;
763
- padding: 10px;
764
- /* &-items {
765
- margin-top: 20px;
766
- display: inline-block; */
767
-
768
- .treenode-checkbox,
769
- .treenode-radio {
770
- display: inline-flex;
771
- margin-right: 10px;
772
- }
773
-
774
- .treenode-checkbox:last-child,
775
- .treenode-radio:last-child {
776
- margin-left: 0;
777
- }
778
- }
779
-
780
- &-single {
781
- padding: 10px 0;
782
- }
783
-
784
- &-node {
785
- margin-top: 20px;
786
- }
787
-
788
- .personselect {
789
- /* display: flex;
790
- align-items: center; */
791
- &-name {
792
- font-weight: 400;
793
- font-size: 14px;
794
- text-align: left;
795
- color: #333;
796
- width: 50%;
797
- display: inline-block;
798
- vertical-align: top;
799
- }
800
- }
801
-
802
- .items-person {
803
- width: 50%;
804
- display: inline-flex;
805
- vertical-align: top;
806
- flex-direction: row-reverse;
807
- &-name {
808
- font-weight: 400;
809
- font-size: 14px;
810
- color: #333;
811
- }
812
-
813
- &-set,
814
- &-setdisible {
815
- font-weight: 400;
816
- font-size: 14px;
817
- color: #1389ff;
818
- margin-left: 10px;
819
- min-width: 30px;
820
- }
821
- &-setdisible {
822
- opacity: 0.5;
823
- }
824
- }
825
- /* } */
826
-
827
- &-items:first-child {
828
- margin-top: 0;
829
- }
830
-
831
- &-radio,
832
- &-checkbox {
833
- display: inline-flex;
834
- align-items: center;
835
- font-weight: 400;
836
- font-size: 14px;
837
- color: #333;
838
- padding: 6px 0;
839
- }
840
-
841
- &-radio {
842
- span {
843
- display: inline-block;
844
- border: 1px solid #d1d1d1;
845
- border-radius: 50%;
846
- width: 16px;
847
- height: 16px;
848
- box-sizing: border-box;
849
- background-color: #fff;
850
- margin-right: 5px;
851
- position: relative;
852
- }
853
-
854
- &-active {
855
- span {
856
- border-color: rgb(0, 122, 255);
857
- &::after {
858
- content: "";
859
- background-color: rgb(0, 122, 255);
860
- border-color: rgb(0, 122, 255);
861
- width: 12px;
862
- height: 12px;
863
- position: absolute;
864
- border-radius: 50%;
865
- left: 1px;
866
- top: 1px;
867
- }
868
- }
869
- }
870
- }
871
- &-checkbox {
872
- span {
873
- display: inline-block;
874
- border: 1px solid #d1d1d1;
875
- border-radius: 3px;
876
- width: 16px;
877
- height: 16px;
878
- box-sizing: border-box;
879
- background-color: #fff;
880
- margin-right: 8px;
881
- }
882
-
883
- &-active {
884
- span {
885
- border-color: rgb(0, 122, 255);
886
- background-color: rgb(0, 122, 255);
887
- }
888
- &-img {
889
- width: 80%;
890
- height: 80%;
891
- transform: translate(12%, -15%);
892
- }
893
- }
894
- }
895
- }
896
-
897
- ::v-deep .departPerson-main {
898
- width: 100%;
899
- height: 100%;
900
- }
901
- </style>