workflow-editor 0.9.84-dw-tmp7 → 0.9.84-dw-tmp9

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 (110) hide show
  1. package/package.json +1 -1
  2. package/packages/index.js +0 -34
  3. package/packages/plugins/formValidatorUtil.js +0 -528
  4. package/packages/plugins/index.js +0 -8
  5. package/packages/workflow-editor/index.js +0 -14
  6. package/packages/workflow-editor/src/api.js +0 -7
  7. package/packages/workflow-editor/src/assets/wf-editor-icons.js +0 -2
  8. package/packages/workflow-editor/src/constant.js +0 -8
  9. package/packages/workflow-editor/src/json-object-templates/copy-task.js +0 -67
  10. package/packages/workflow-editor/src/json-object-templates/decision.js +0 -11
  11. package/packages/workflow-editor/src/json-object-templates/end.js +0 -14
  12. package/packages/workflow-editor/src/json-object-templates/fork.js +0 -10
  13. package/packages/workflow-editor/src/json-object-templates/human-decision.js +0 -9
  14. package/packages/workflow-editor/src/json-object-templates/human-task.js +0 -199
  15. package/packages/workflow-editor/src/json-object-templates/join.js +0 -10
  16. package/packages/workflow-editor/src/json-object-templates/process.js +0 -98
  17. package/packages/workflow-editor/src/json-object-templates/start.js +0 -13
  18. package/packages/workflow-editor/src/json-object-templates/subprocess.js +0 -30
  19. package/packages/workflow-editor/src/json-object-templates/transition.js +0 -26
  20. package/packages/workflow-editor/src/main/admin-save-dialog.vue +0 -66
  21. package/packages/workflow-editor/src/main/canvas.vue +0 -479
  22. package/packages/workflow-editor/src/main/context-menu.vue +0 -132
  23. package/packages/workflow-editor/src/main/icon-svg.vue +0 -32
  24. package/packages/workflow-editor/src/main/selection-region.vue +0 -66
  25. package/packages/workflow-editor/src/main/tache-history-tooltip.vue +0 -38
  26. package/packages/workflow-editor/src/main/tache-name-input.vue +0 -19
  27. package/packages/workflow-editor/src/main/tache-subprocess-history-dialog.vue +0 -35
  28. package/packages/workflow-editor/src/main/toolbox.vue +0 -60
  29. package/packages/workflow-editor/src/main/wf-history-canvas.vue +0 -302
  30. package/packages/workflow-editor/src/process-json.js +0 -622
  31. package/packages/workflow-editor/src/process-service.js +0 -31
  32. package/packages/workflow-editor/src/properties-editors/common/additional-condition-utils.js +0 -522
  33. package/packages/workflow-editor/src/properties-editors/common/additional-condition.vue +0 -276
  34. package/packages/workflow-editor/src/properties-editors/common/auto-filled-fields-utils.js +0 -34
  35. package/packages/workflow-editor/src/properties-editors/common/auto-filled-fields.vue +0 -239
  36. package/packages/workflow-editor/src/properties-editors/common/common-notice-tool.vue +0 -47
  37. package/packages/workflow-editor/src/properties-editors/common/common-user-condition.vue +0 -241
  38. package/packages/workflow-editor/src/properties-editors/common/form-fields-utils.js +0 -23
  39. package/packages/workflow-editor/src/properties-editors/common/form-fields.vue +0 -116
  40. package/packages/workflow-editor/src/properties-editors/common/i18n-input.vue +0 -75
  41. package/packages/workflow-editor/src/properties-editors/common/i18n-set-dialog.vue +0 -125
  42. package/packages/workflow-editor/src/properties-editors/common/notice.vue +0 -98
  43. package/packages/workflow-editor/src/properties-editors/common/reminder.vue +0 -179
  44. package/packages/workflow-editor/src/properties-editors/common/select-mail-template.vue +0 -83
  45. package/packages/workflow-editor/src/properties-editors/common/standard-fields.vue +0 -65
  46. package/packages/workflow-editor/src/properties-editors/common/system-role-tree-inline.vue +0 -355
  47. package/packages/workflow-editor/src/properties-editors/common/system-role-tree.vue +0 -63
  48. package/packages/workflow-editor/src/properties-editors/common/task-title.vue +0 -148
  49. package/packages/workflow-editor/src/properties-editors/common/transactor-settings.vue +0 -220
  50. package/packages/workflow-editor/src/properties-editors/common/user-selection.vue +0 -386
  51. package/packages/workflow-editor/src/properties-editors/common/value-selection-dialog.vue +0 -209
  52. package/packages/workflow-editor/src/properties-editors/common/variables.vue +0 -135
  53. package/packages/workflow-editor/src/properties-editors/copy-task/basic-properties.vue +0 -90
  54. package/packages/workflow-editor/src/properties-editors/copy-task/permission-settings.vue +0 -155
  55. package/packages/workflow-editor/src/properties-editors/copy-task.vue +0 -80
  56. package/packages/workflow-editor/src/properties-editors/decision.vue +0 -90
  57. package/packages/workflow-editor/src/properties-editors/fork.vue +0 -72
  58. package/packages/workflow-editor/src/properties-editors/human-decision.vue +0 -44
  59. package/packages/workflow-editor/src/properties-editors/human-task/additional-condition-dialog.vue +0 -60
  60. package/packages/workflow-editor/src/properties-editors/human-task/basic-properties.vue +0 -156
  61. package/packages/workflow-editor/src/properties-editors/human-task/componentsConfigUtil.js +0 -291
  62. package/packages/workflow-editor/src/properties-editors/human-task/custom-actions.vue +0 -249
  63. package/packages/workflow-editor/src/properties-editors/human-task/editable-child-field-setting.vue +0 -392
  64. package/packages/workflow-editor/src/properties-editors/human-task/editable-child-fields.vue +0 -241
  65. package/packages/workflow-editor/src/properties-editors/human-task/editable-field-selection.vue +0 -220
  66. package/packages/workflow-editor/src/properties-editors/human-task/editable-fields.vue +0 -204
  67. package/packages/workflow-editor/src/properties-editors/human-task/events.vue +0 -59
  68. package/packages/workflow-editor/src/properties-editors/human-task/permission-settings.vue +0 -207
  69. package/packages/workflow-editor/src/properties-editors/human-task/selection-conditions.vue +0 -390
  70. package/packages/workflow-editor/src/properties-editors/human-task.vue +0 -103
  71. package/packages/workflow-editor/src/properties-editors/join.vue +0 -44
  72. package/packages/workflow-editor/src/properties-editors/process/basic-properties.vue +0 -273
  73. package/packages/workflow-editor/src/properties-editors/process/events.vue +0 -76
  74. package/packages/workflow-editor/src/properties-editors/process/notice-settings.vue +0 -60
  75. package/packages/workflow-editor/src/properties-editors/process/parameter-settings.vue +0 -95
  76. package/packages/workflow-editor/src/properties-editors/process/permission-settings.vue +0 -28
  77. package/packages/workflow-editor/src/properties-editors/process/selectPage.vue +0 -81
  78. package/packages/workflow-editor/src/properties-editors/process.vue +0 -109
  79. package/packages/workflow-editor/src/properties-editors/subprocess/basic-properties.vue +0 -176
  80. package/packages/workflow-editor/src/properties-editors/subprocess/events.vue +0 -26
  81. package/packages/workflow-editor/src/properties-editors/subprocess/field-mappings.vue +0 -206
  82. package/packages/workflow-editor/src/properties-editors/subprocess/transactor-settings.vue +0 -64
  83. package/packages/workflow-editor/src/properties-editors/subprocess.vue +0 -79
  84. package/packages/workflow-editor/src/properties-editors/transition/basic-properties.vue +0 -53
  85. package/packages/workflow-editor/src/properties-editors/transition.vue +0 -74
  86. package/packages/workflow-editor/src/properties-editors/user-condition.js +0 -177
  87. package/packages/workflow-editor/src/src.zip +0 -0
  88. package/packages/workflow-editor/src/store/getters.js +0 -27
  89. package/packages/workflow-editor/src/store/workflow-editor.js +0 -125
  90. package/packages/workflow-editor/src/taches/common-methods.js +0 -21
  91. package/packages/workflow-editor/src/taches/copy-task.vue +0 -99
  92. package/packages/workflow-editor/src/taches/custom-task.vue +0 -88
  93. package/packages/workflow-editor/src/taches/decision.vue +0 -102
  94. package/packages/workflow-editor/src/taches/end.vue +0 -76
  95. package/packages/workflow-editor/src/taches/fork.vue +0 -102
  96. package/packages/workflow-editor/src/taches/human-decision.vue +0 -102
  97. package/packages/workflow-editor/src/taches/human-task.vue +0 -113
  98. package/packages/workflow-editor/src/taches/join.vue +0 -91
  99. package/packages/workflow-editor/src/taches/joint.vue +0 -177
  100. package/packages/workflow-editor/src/taches/start.vue +0 -76
  101. package/packages/workflow-editor/src/taches/subprocess.vue +0 -99
  102. package/packages/workflow-editor/src/taches/tache-resizer.vue +0 -80
  103. package/packages/workflow-editor/src/transitions/broken-line.vue +0 -91
  104. package/packages/workflow-editor/src/transitions/curve-line.vue +0 -91
  105. package/packages/workflow-editor/src/transitions/straight-line.vue +0 -26
  106. package/packages/workflow-editor/src/transitions/transition.vue +0 -212
  107. package/packages/workflow-editor/src/transitions/virtual-transition.vue +0 -43
  108. package/packages/workflow-editor/src/util.js +0 -493
  109. package/packages/workflow-editor/src/workflow-editor.vue +0 -605
  110. package/packages/workflow-editor/src/workflow-history.vue +0 -153
@@ -1,522 +0,0 @@
1
- import { getFormField, getFormFieldLabel } from './form-fields-utils'
2
- import { getI18n } from '../../../../workflow-editor/src/util'
3
- export const standardFields = [
4
- {
5
- name: '${approvalResult}',
6
- label: getI18n().t('workflowEditor.process.approvalResults'),
7
- orgType: 'other'
8
- },
9
- {
10
- name: '${instanceCreatorName}',
11
- label: getI18n().t('workflowEditor.process.processInitiator'),
12
- orgType: 'user'
13
- },
14
- {
15
- name: '${instanceCreatorRole}',
16
- label: getI18n().t('workflowEditor.process.processInitiatorRole'),
17
- orgType: 'role'
18
- },
19
- {
20
- name: '${instanceCreatorDepartment}',
21
- label: getI18n().t('workflowEditor.process.processInitiatorDepartment'),
22
- orgType: 'department',
23
- relatedFields: ['upstageDepartment']
24
-
25
- },
26
- {
27
- name: '${superiorDepartment}',
28
- label: getI18n().t('workflowEditor.process.processInitiatorSuperiorDepartment'),
29
- orgType: 'department',
30
- relatedFields: ['upstageDepartment']
31
- },
32
- {
33
- name: '${instanceCreatorUpstageDepartment}',
34
- label: getI18n().t('workflowEditor.process.processInitiatorTopDepartment'),
35
- orgType: 'department'
36
- },
37
- {
38
- name: '${instanceCreatorWorkGroup}',
39
- label: getI18n().t('workflowEditor.process.processInitiatorWorkingGroup'),
40
- orgType: 'workgroup'
41
- },
42
- {
43
- name: '${instanceCreatorDirectSuperiorName}',
44
- label: getI18n().t('workflowEditor.process.nameOfTheDirectSuperiorOfTheProcessInitiator'),
45
- orgType: 'user'
46
- },
47
- {
48
- name: '${instanceCreatorDirectSuperiorDepartment}',
49
- label: getI18n().t('workflowEditor.process.processInitiatorsDirectSuperiorDepartment'),
50
- orgType: 'department',
51
- relatedFields: ['upstageDepartment']
52
- },
53
- {
54
- name: '${instanceCreatorDirectSuperiorRole}',
55
- label: getI18n().t('workflowEditor.process.directSuperiorRoleOfProcessInitiator'),
56
- orgType: 'role'
57
- },
58
- {
59
- name: '${instanceCreatorDirectSuperiorWorkGroup}',
60
- label: getI18n().t('workflowEditor.process.ProcessInitiatorsImmediateSuperiorWorkingGroup'),
61
- orgType: 'workgroup'
62
- },
63
- {
64
- name: '${currentTransactorName}',
65
- label: getI18n().t('workflowEditor.process.nameOfCurrentHandler'),
66
- orgType: 'user',
67
- relatedFields: ['instanceCreatorName', 'instanceCreatorDirectSuperiorName']
68
- },
69
- {
70
- name: '${currentTransactorRole}',
71
- label: getI18n().t('workflowEditor.process.currentHandlerRole'),
72
- orgType: 'role'
73
- },
74
- {
75
- name: '${currentTransactorDepartment}',
76
- label: getI18n().t('workflowEditor.process.currentHandlerDepartment'),
77
- orgType: 'department',
78
- relatedFields: ['instanceCreatorDepartment', 'superiorDepartment', 'instanceCreatorUpstageDepartment', 'instanceCreatorDirectSuperiorDepartment', 'upstageDepartment']
79
- },
80
- {
81
- name: '${currentTransactorSuperiorDepartment}',
82
- label: getI18n().t('workflowEditor.process.currentHandlerSuperiorDepartment'),
83
- orgType: 'department',
84
- relatedFields: ['instanceCreatorDepartment', 'superiorDepartment', 'instanceCreatorUpstageDepartment', 'instanceCreatorDirectSuperiorDepartment', 'upstageDepartment']
85
- },
86
- {
87
- name: '${currentTransactorUpstageDepartment}',
88
- label: getI18n().t('workflowEditor.process.topDepartmentOfCurrentHandler'),
89
- orgType: 'department',
90
- relatedFields: ['instanceCreatorDepartment', 'superiorDepartment', 'instanceCreatorUpstageDepartment', 'instanceCreatorDirectSuperiorDepartment']
91
- },
92
- {
93
- name: '${currentTransactorWorkGroup}',
94
- label: getI18n().t('workflowEditor.process.currentHandlerWorkingGroup'),
95
- orgType: 'workgroup'
96
- },
97
- {
98
- name: '${currentTransactorDirectSuperiorName}',
99
- label: getI18n().t('workflowEditor.process.nameOfTheImmediateSuperiorOfTheCurrentHandler'),
100
- orgType: 'user',
101
- relatedFields: ['instanceCreatorName', 'instanceCreatorDirectSuperiorName']
102
- },
103
- {
104
- name: '${currentTransactorDirectSuperiorDepartment}',
105
- label: getI18n().t('workflowEditor.process.currentHandlerDirectSuperiorDepartment'),
106
- orgType: 'department',
107
- relatedFields: ['instanceCreatorDepartment', 'superiorDepartment', 'instanceCreatorUpstageDepartment', 'instanceCreatorDirectSuperiorDepartment', 'upstageDepartment']
108
- },
109
- {
110
- name: '${currentTransactorDirectSuperiorRole}',
111
- label: getI18n().t('workflowEditor.process.currentManagerDirectSuperiorRole'),
112
- orgType: 'role'
113
- },
114
- {
115
- name: '${currentTransactorDirectSuperiorWorkGroup}',
116
- label: getI18n().t('workflowEditor.process.workingGroupDirectlyUnderTheCurrentHandler'),
117
- orgType: 'workgroup'
118
- },
119
- {
120
- name: '${upstageDepartment}',
121
- label: getI18n().t('workflowEditor.process.topDepartments'),
122
- orgType: 'department'
123
- },
124
- {
125
- name: '${countersignatureDisagreeCount}',
126
- label: getI18n().t('workflowEditor.process.totalNnumberOfPersonsWhoDisagreeWithTheCountersignature'),
127
- orgType: 'other'
128
- },
129
- {
130
- name: '${countersignatureAgreeCount}',
131
- label: getI18n().t('workflowEditor.process.totalNumberOfCountersignedAndAgreedPersonnel'),
132
- orgType: 'other'
133
- },
134
- {
135
- name: '${countersignatureDisagreePercentage}',
136
- label: getI18n().t('workflowEditor.process.percentageOfPersonsWhoDisagreeWithTheCountersignature'),
137
- orgType: 'other'
138
- },
139
- {
140
- name: '${countersignatureAgreePercentage}',
141
- label: getI18n().t('workflowEditor.process.percentageOfCountersignedAndAgreedPersonnel'),
142
- orgType: 'other'
143
- },
144
- {
145
- name: '${abstentionPercentage}',
146
- label: getI18n().t('workflowEditor.process.percentageOfAbstentions'),
147
- orgType: 'other'
148
- },
149
- {
150
- name: '${againstPercentage}',
151
- label: getI18n().t('workflowEditor.process.percentageOfVotesAgainst'),
152
- orgType: 'other'
153
- },
154
- {
155
- name: '${favorPercentage}',
156
- label: getI18n().t('workflowEditor.process.percentageOfAffirmativeVotes'),
157
- orgType: 'other'
158
- },
159
- {
160
- name: '${abstentionCount}',
161
- label: getI18n().t('workflowEditor.process.totalNumberOfAbstentions'),
162
- orgType: 'other'
163
- },
164
- {
165
- name: '${againstCount}',
166
- label: getI18n().t('workflowEditor.process.totalVotesAgainst'),
167
- orgType: 'other'
168
- },
169
- {
170
- name: '${favorCount}',
171
- label: getI18n().t('workflowEditor.process.totalNumberOfAffirmativeVotes'),
172
- orgType: 'other'
173
- }
174
-
175
- ]
176
-
177
- export function getStandardFields() {
178
- const result = {
179
- value: 'standard',
180
- label: getI18n().t('workflowEditor.process.standardFields'),
181
- children: []
182
- }
183
- for (const field of standardFields) {
184
- result.children.push({
185
- value: field.name,
186
- label: field.label
187
- })
188
- }
189
- return result
190
- }
191
-
192
- export const logicOperators = {
193
- 'condition.operator.or': getI18n().t('workflowEditor.process.perhaps'),
194
- 'condition.operator.and': getI18n().t('workflowEditor.process.also')
195
- }
196
- export function isNumber(type) {
197
- return ['NUMBER', 'DOUBLE', 'FLOAT', 'LONG', 'INTEGER', 'AMOUNT'].indexOf(type) >= 0
198
- }
199
- export const operatorsForNumber = [{
200
- name: 'operator.number.gt',
201
- label: getI18n().t('workflowEditor.process.greaterThan')
202
- }, {
203
- name: 'operator.number.lt',
204
- label: getI18n().t('workflowEditor.process.lessThan')
205
- }, {
206
- name: 'operator.number.eq',
207
- label: getI18n().t('workflowEditor.process.beEqualTo')
208
- }, {
209
- name: 'operator.number.le',
210
- label: getI18n().t('workflowEditor.process.notGreaterThan')
211
- }, {
212
- name: 'operator.number.ge',
213
- label: getI18n().t('workflowEditor.process.notLessThan')
214
- }, {
215
- name: 'operator.number.ne',
216
- label: getI18n().t('workflowEditor.process.notEqualTo')
217
- }]
218
-
219
- export function isString(type) {
220
- return ['STRING', 'TEXT'].indexOf(type) >= 0
221
- }
222
- export const operatorsForString = [{
223
- name: 'operator.text.eq',
224
- label: getI18n().t('workflowEditor.process.beEqualTo')
225
- }, {
226
- name: 'operator.text.neq',
227
- label: getI18n().t('workflowEditor.process.notEqualTo')
228
- }, {
229
- name: 'operator.text.contain',
230
- label: getI18n().t('workflowEditor.process.contain')
231
- }, {
232
- name: 'operator.text.contain.not',
233
- label: getI18n().t('workflowEditor.process.notIncluded')
234
- }]
235
- export function isDate(type) {
236
- return ['DATE', 'TIME'].indexOf(type) >= 0
237
- }
238
- export const operatorsForDate = [{
239
- name: 'operator.date.gt',
240
- label: getI18n().t('workflowEditor.process.laterThan')
241
- }, {
242
- name: 'operator.date.lt',
243
- label: getI18n().t('workflowEditor.process.earlierThan')
244
- }, {
245
- name: 'operator.date.et',
246
- label: getI18n().t('workflowEditor.process.beEqualTo')
247
- }, {
248
- name: 'operator.date.le',
249
- label: getI18n().t('workflowEditor.process.noLaterThan')
250
- }, {
251
- name: 'operator.date.ge',
252
- label: getI18n().t('workflowEditor.process.noEarlierThan')
253
- }, {
254
- name: 'operator.date.ne',
255
- label: getI18n().t('workflowEditor.process.notEqualTo')
256
- }]
257
-
258
- // TEXT类型一般用于标准字段,和STRING类型区分开,支持的操作符少两个
259
- export const operatorsForText = [
260
- {
261
- name: 'operator.text.eq',
262
- label: getI18n().t('workflowEditor.process.beEqualTo')
263
- }, {
264
- name: 'operator.text.neq',
265
- label: getI18n().t('workflowEditor.process.notEqualTo')
266
- }
267
- ]
268
-
269
- // 是否是‘审批结果’字段
270
- export function isApproveResult(fieldName) {
271
- return fieldName === '${approvalResult}'
272
- }
273
-
274
- export const operatorsForApproveResult = [
275
- {
276
- name: 'operator.text.eq',
277
- label: getI18n().t('workflowEditor.process.beEqualTo')
278
- }
279
- ]
280
-
281
- export const allOperators = [
282
- ...operatorsForNumber,
283
- ...operatorsForDate,
284
- ...operatorsForString,
285
- ...operatorsForText
286
- ]
287
- /**
288
- *
289
- * @param {存放从value中解析出来的各个条件表达式} conditions
290
- * @param {xml中存放的condition字符串} value
291
- */
292
- export function parseCondition(conditions, value) {
293
- if (!value || value.length === 0) {
294
- // 条件为空
295
- } else {
296
- // or,and做统一替换,方便后续按照^_^来分隔条件,避免按照or,and进行两次分隔
297
- let tempValue = value.replace(/ condition.operator.or /g, ' condition.operator.or^_^')
298
- tempValue = tempValue.replace(/ condition.operator.and /g, ' condition.operator.and^_^')
299
- const values = tempValue.split('^_^')
300
- let count = 0
301
- for (let condition of values) {
302
- if (condition === '') continue
303
- // 一个条件是由6个部分组成的(按空格分隔):leftBracket(可选), key,操作符,值,右括号(可选),逻辑操作符(可选)
304
- let leftBracket = ''
305
- // let key = '${user}'
306
- // let operator = 'operator.text.eq'
307
- let key = ''
308
- let operator = ''
309
- let value = ''
310
- let rightBracket = ''
311
- let logicOperator = 'condition.operator.or'
312
-
313
- let p = condition.indexOf('${')
314
- // 没有左括号时,条件表达式肯定是${开头,p=0
315
- if (p > 0) {
316
- leftBracket = condition.substring(0, p)
317
- }
318
- // key从${开始到第一个空格之间的所有内容
319
- key = condition.substring(p, condition.indexOf(' '))
320
- // condition去掉key部分进行后续处理
321
- condition = condition.substring(condition.indexOf(' ') + 1)
322
- // condition去掉key后,开头部分到第一个空格之间的就是操作符了
323
- operator = condition.substring(0, condition.indexOf(' '))
324
- // condition进一步去掉操作符
325
- condition = condition.substring(condition.indexOf(' ') + 1)
326
- p = condition.indexOf(')')
327
- if (p > 0) {
328
- // 有右括号时,开头到第一个右括号之间的内容为值,值很可能包括空格,所以一开始不能用空格来split
329
- value = condition.substring(0, p)
330
- rightBracket = condition.substring(p)
331
- // 找操作符的时候,带了一个空格来定位,后续截取的时候需要去掉这个空格
332
- p = condition.indexOf(' condition.')
333
- if (p > 0) {
334
- logicOperator = condition.substring(p + 1)
335
- }
336
- } else {
337
- p = condition.indexOf(' condition.')
338
- // 没有右括号也没有逻辑符的时候,剩下的condition就是value,否则还要单独截取逻辑符
339
- if (p > 0) {
340
- value = condition.substring(0, p)
341
- logicOperator = condition.substring(p + 1)
342
- } else {
343
- value = condition
344
- }
345
- }
346
-
347
- conditions.push({
348
- id: count,
349
- leftBracket,
350
- key,
351
- operator,
352
- value,
353
- rightBracket,
354
- logicOperator
355
- })
356
- count++
357
- }
358
- return count
359
- }
360
- }
361
-
362
- /**
363
- *
364
- * @param {存放用户条件表达式} conditions
365
- */
366
- export function generateCondition(conditions) {
367
- let result = ''
368
- for (const condition of conditions) {
369
- // 没有设置值的条件表达式直接忽略
370
- if (condition.key.length === 0 || condition.operator === '' || condition.value === '') continue
371
- result = result + condition.leftBracket + condition.key + ' ' +
372
- condition.operator + ' ' + condition.value + condition.rightBracket + ' ' +
373
- condition.logicOperator + ' '
374
- }
375
- const logicOr = ' condition.operator.or '
376
- const logicAnd = ' condition.operator.and '
377
- // 去掉结尾的and,or(没有意义)
378
- if (result.lastIndexOf(logicOr) + logicOr.length === result.length) {
379
- result = result.substring(0, result.lastIndexOf(logicOr))
380
- } else if (result.lastIndexOf(logicAnd) + logicAnd.length === result.length) {
381
- result = result.substring(0, result.lastIndexOf(logicAnd))
382
- }
383
- return result
384
- }
385
- export function getStandardField(name) {
386
- const field = standardFields.filter(item => {
387
- return item.name === name
388
- })
389
- if (field.length > 0) {
390
- return field[0]
391
- } else {
392
- return null
393
- }
394
- }
395
- export function getStandardFieldLabel(name) {
396
- const field = getStandardField(name)
397
- return field ? field.label : name
398
- }
399
-
400
- export function getFieldLabel(name) {
401
- if (name.indexOf('${field[') >= 0) {
402
- return getFormFieldLabel(name)
403
- } else if (name.indexOf('${') >= 0) {
404
- return getStandardFieldLabel(name)
405
- } else {
406
- return name.substring(0, name.indexOf('['))
407
- }
408
- }
409
-
410
- export function getOperatorLabel(name) {
411
- const operator = allOperators.filter(item => {
412
- return item.name === name
413
- })
414
- if (operator.length > 0) {
415
- return operator[0].label
416
- } else {
417
- return ''
418
- }
419
- }
420
- export function displayCondition(conditions) {
421
- let result = ''
422
- for (const condition of conditions) {
423
- if (condition.key.length === 0 || condition.operator === '' || condition.value === '' ||
424
- typeof (condition.operator) === 'undefined' || typeof (condition.value) === 'undefined' ||
425
- condition.operator === null || condition.value === null) continue
426
- result = result + condition.leftBracket + getFieldLabel(condition.key) + ' ' +
427
- getOperatorLabel(condition.operator) + ' ' + getFieldLabel(condition.value) + condition.rightBracket + ' ' +
428
- condition.value + ' ' + logicOperators[condition.logicOperator] + ' '
429
- }
430
- const logicOr = ' 或者 '
431
- const logicAnd = ' 并且 '
432
- // 去掉结尾的and,or(没有意义)
433
- if (result.lastIndexOf(logicOr) + logicOr.length === result.length) {
434
- result = result.substring(0, result.lastIndexOf(logicOr))
435
- } else if (result.lastIndexOf(logicAnd) + logicAnd.length === result.length) {
436
- result = result.substring(0, result.lastIndexOf(logicAnd))
437
- }
438
- return result
439
- }
440
-
441
- export function formatStandardField(value) {
442
- const field = standardFields.filter(item => {
443
- return item.name === value
444
- })
445
- if (field.length > 0) {
446
- return field[0].label
447
- } else {
448
- return value
449
- }
450
- }
451
-
452
- export function getRelatedStandardFields(name) {
453
- const field = standardFields.filter(item => {
454
- return item.name === name
455
- })
456
- let fieldNames = []
457
- if (field.length > 0) {
458
- fieldNames = (field[0].relatedFields || [])
459
- }
460
- const result = []
461
- standardFields.forEach(item => {
462
- // item.name为${someName},去掉前两个字符和最后的大括号,只比较名称
463
- if (fieldNames.indexOf(item.name.substring(2, item.name.length - 1)) >= 0) {
464
- result.push(item)
465
- }
466
- })
467
-
468
- // standardFields.map(item => {
469
-
470
- // })
471
- return result
472
- }
473
- // 获得条件流向的标准值列表 或 其它的标准值列表
474
- export function getStandardFieldsByTacheType(isTranstion) {
475
- if (isTranstion) {
476
- return standardFields
477
- }
478
- const standardFieldResult = []
479
- standardFields.forEach(item => {
480
- if (!isTranstion && item.orgType !== 'other') {
481
- // 不是流向时,不显示“审批结果”、“会签百分比”等值
482
- standardFieldResult.push(item)
483
- }
484
- })
485
- return standardFieldResult
486
- }
487
- // 获得条件值时,判断是否是流向的其它条件,比如:会签同意百分比、会签同意人数等等
488
- export function isTransitionOtherField(fieldName) {
489
- if (fieldName === '${approvalResult}') {
490
- // ‘审批结果’的条件值是单独写的
491
- return false
492
- }
493
- const field = standardFields.filter(item => {
494
- return item.name === fieldName
495
- })
496
- let isOtherField = false
497
- if (field.length > 0) {
498
- field.forEach(item => {
499
- if (fieldName === item.name && item.orgType === 'other') {
500
- isOtherField = true
501
- }
502
- })
503
- }
504
- return isOtherField
505
- }
506
- export function getOperators(fieldName) {
507
- const field = getFormField(fieldName) || getStandardField(fieldName)
508
- // console.log('---getOperators---field=', field)
509
- if (field) {
510
- if (isNumber(field.dataType)) {
511
- return operatorsForNumber
512
- } else if (isDate(field.dataType)) {
513
- return operatorsForDate
514
- } else if (isString(field.dataType)) {
515
- return operatorsForString
516
- } else if (isApproveResult(fieldName)) {
517
- return operatorsForApproveResult
518
- } else {
519
- return operatorsForText
520
- }
521
- }
522
- }