workflow-editor 0.0.85-up → 0.0.86-up
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.
- package/lib/{401-6d8d823d.js → 401-407e546c.js} +1 -1
- package/lib/{404-71e6f04b.js → 404-b12fe353.js} +1 -1
- package/lib/{iframe-page-f6d03745.js → iframe-page-ec0cb4b8.js} +1 -1
- package/lib/{index-acd72790.js → index-b621a74d.js} +3945 -4204
- package/lib/{tab-content-iframe-index-a109cac2.js → tab-content-iframe-index-a5e89336.js} +1 -1
- package/lib/{tab-content-index-f39a83c1.js → tab-content-index-19178806.js} +1 -1
- package/lib/{tache-subprocess-history-8ec86536.js → tache-subprocess-history-2c11f85e.js} +1 -1
- package/lib/workflow-editor.css +1 -1
- package/lib/workflow-editor.js +1 -1
- package/lib/workflow-editor.umd.cjs +28 -28
- package/package.json +1 -1
- package/packages/workflow-editor/src/properties-editors/common/auto-filled-fields.vue +2 -2
- package/packages/workflow-editor/src/properties-editors/common/form-fields.vue +20 -23
- package/packages/workflow-editor/src/properties-editors/common/i18n-input.vue +6 -9
- package/packages/workflow-editor/src/properties-editors/common/notice-reminder.vue +37 -42
- package/packages/workflow-editor/src/properties-editors/common/reminder.vue +76 -41
- package/packages/workflow-editor/src/properties-editors/common/task-title.vue +40 -33
- package/packages/workflow-editor/src/properties-editors/copy-task.vue +7 -7
- package/packages/workflow-editor/src/properties-editors/decision.vue +18 -25
- package/packages/workflow-editor/src/properties-editors/human-task/basic-properties.vue +1 -1
- package/packages/workflow-editor/src/properties-editors/human-task/editable-fields.vue +1 -1
- package/packages/workflow-editor/src/properties-editors/human-task/permission-settings.vue +78 -71
- package/packages/workflow-editor/src/properties-editors/human-task.vue +2 -2
- package/packages/workflow-editor/src/properties-editors/process.vue +6 -3
- package/src/i18n/langs/cn.js +8 -3
- package/src/i18n/langs/en.js +7 -2
|
@@ -12,27 +12,22 @@
|
|
|
12
12
|
<el-form>
|
|
13
13
|
<el-form-item :label="$t('workflowEditor.task.name')" label-width="40px">
|
|
14
14
|
<!-- <el-input v-model="formModel.attr.name" /> -->
|
|
15
|
-
<i18n-input
|
|
15
|
+
<i18n-input
|
|
16
|
+
v-model.trim="formModel.attr.name"
|
|
17
|
+
:i18n-key="
|
|
18
|
+
formModel.basicProperties && formModel.basicProperties.i18nKey
|
|
19
|
+
? formModel.basicProperties.i18nKey
|
|
20
|
+
: 'name.' + formModel.attr.id
|
|
21
|
+
"
|
|
22
|
+
@setI18n="setI18nValue"
|
|
23
|
+
/>
|
|
16
24
|
</el-form-item>
|
|
17
25
|
<el-form-item>
|
|
18
26
|
<span>{{ $t('workflowEditor.task.allBranchFlows') }}</span>
|
|
19
|
-
<el-table
|
|
20
|
-
|
|
21
|
-
:
|
|
22
|
-
|
|
23
|
-
>
|
|
24
|
-
<el-table-column
|
|
25
|
-
type="index"
|
|
26
|
-
width="50"
|
|
27
|
-
/>
|
|
28
|
-
<el-table-column
|
|
29
|
-
prop="to"
|
|
30
|
-
:label="$t('workflowEditor.task.targetLink')"
|
|
31
|
-
/>
|
|
32
|
-
<el-table-column
|
|
33
|
-
prop="condition"
|
|
34
|
-
:label="$t('workflowEditor.task.condition')"
|
|
35
|
-
/>
|
|
27
|
+
<el-table border :data="transitions" style="width: 100%">
|
|
28
|
+
<el-table-column type="index" width="50" />
|
|
29
|
+
<el-table-column prop="to" :label="$t('workflowEditor.task.targetLink')" />
|
|
30
|
+
<el-table-column prop="condition" :label="$t('workflowEditor.task.condition')" />
|
|
36
31
|
</el-table>
|
|
37
32
|
</el-form-item>
|
|
38
33
|
</el-form>
|
|
@@ -41,7 +36,7 @@
|
|
|
41
36
|
|
|
42
37
|
<script>
|
|
43
38
|
import { findOutgoingTransitionsByTacheId } from '../util.js'
|
|
44
|
-
import i18nInput from './common/i18n-input'
|
|
39
|
+
import i18nInput from './common/i18n-input.vue'
|
|
45
40
|
export default {
|
|
46
41
|
name: 'DecisionPropertiesEditor',
|
|
47
42
|
components: {
|
|
@@ -53,7 +48,7 @@ export default {
|
|
|
53
48
|
default: null
|
|
54
49
|
}
|
|
55
50
|
},
|
|
56
|
-
data(){
|
|
51
|
+
data() {
|
|
57
52
|
return {
|
|
58
53
|
dialogVisible: true
|
|
59
54
|
}
|
|
@@ -65,7 +60,7 @@ export default {
|
|
|
65
60
|
transitions() {
|
|
66
61
|
const transitions = findOutgoingTransitionsByTacheId(this.formModel.attr.id)
|
|
67
62
|
const data = []
|
|
68
|
-
transitions.map(transition => {
|
|
63
|
+
transitions.map((transition) => {
|
|
69
64
|
data.push({
|
|
70
65
|
to: transition.ref.attr.to,
|
|
71
66
|
condition: transition.ref.basicProperties.condition
|
|
@@ -75,7 +70,7 @@ export default {
|
|
|
75
70
|
}
|
|
76
71
|
},
|
|
77
72
|
mounted() {
|
|
78
|
-
this.$watch('model.ref.attr.name', function(newVal) {
|
|
73
|
+
this.$watch('model.ref.attr.name', function (newVal) {
|
|
79
74
|
this.model.name = newVal
|
|
80
75
|
})
|
|
81
76
|
},
|
|
@@ -90,6 +85,4 @@ export default {
|
|
|
90
85
|
}
|
|
91
86
|
</script>
|
|
92
87
|
|
|
93
|
-
<style lang="scss" scoped>
|
|
94
|
-
|
|
95
|
-
</style>
|
|
88
|
+
<style lang="scss" scoped></style>
|
|
@@ -91,7 +91,7 @@
|
|
|
91
91
|
</el-form>
|
|
92
92
|
</template>
|
|
93
93
|
<script>
|
|
94
|
-
import TaskTitle from '../common/task-title'
|
|
94
|
+
import TaskTitle from '../common/task-title.vue'
|
|
95
95
|
import CustomActions from './custom-actions'
|
|
96
96
|
import { validateTacheCode } from '../../util'
|
|
97
97
|
import i18nInput from '../common/i18n-input'
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
</template>
|
|
66
66
|
|
|
67
67
|
<script>
|
|
68
|
-
import EditableFieldSelection from './editable-field-selection'
|
|
68
|
+
import EditableFieldSelection from './editable-field-selection.vue'
|
|
69
69
|
import AdditionalConditionDialog from './additional-condition-dialog'
|
|
70
70
|
import { mapGetters } from 'vuex'
|
|
71
71
|
import { parseCondition, displayCondition } from '../common/additional-condition-utils'
|
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
<el-form-item :label="$t('workflowEditor.task.allowEditingForms')">
|
|
4
4
|
<el-switch v-model="formModel.editForm.permission" />
|
|
5
5
|
</el-form-item>
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
<el-form-item v-show="formModel.editForm.permission">
|
|
7
|
+
<editable-fields v-if="formModel.editForm.permission" v-model="formModel.editForm.field" />
|
|
8
|
+
<editable-child-fields v-if="formModel.editForm.permission" v-model="formModel.editForm.subTablePermission" />
|
|
9
|
+
</el-form-item>
|
|
10
|
+
<!-- 暂时隐藏以下权限,后续如果有需求再放开 2026-03-16
|
|
11
|
+
<el-form-item :label="$t('workflowEditor.task.allowViews')">
|
|
11
12
|
<el-switch v-model="formModel.viewOpinion.permission" />
|
|
12
13
|
<el-checkbox v-if="formModel.viewOpinion.permission" v-model="formModel.viewOpinionCheckbox">
|
|
13
14
|
{{ $t('workflowEditor.task.additionalConditions') }}
|
|
@@ -99,12 +100,12 @@
|
|
|
99
100
|
</el-card>
|
|
100
101
|
<el-form-item :label="$t('workflowEditor.task.bodyPermission')">
|
|
101
102
|
<el-switch v-model="formModel.officialText.permission" />
|
|
102
|
-
</el-form-item>
|
|
103
|
+
</el-form-item> -->
|
|
103
104
|
</el-form>
|
|
104
105
|
</template>
|
|
105
106
|
<script>
|
|
106
|
-
import EditableFields from './editable-fields'
|
|
107
|
-
import editableChildFields from './editable-child-fields'
|
|
107
|
+
import EditableFields from './editable-fields.vue'
|
|
108
|
+
import editableChildFields from './editable-child-fields.vue'
|
|
108
109
|
import AdditionalCondition from '../common/additional-condition'
|
|
109
110
|
import UserSelection from '../common/user-selection'
|
|
110
111
|
import { deepCopy } from '../../util'
|
|
@@ -126,20 +127,24 @@ export default {
|
|
|
126
127
|
const formModel = deepCopy(this.modelValue)
|
|
127
128
|
// 控制附加条件的属性名
|
|
128
129
|
const attrNames = [
|
|
129
|
-
'viewOpinion',
|
|
130
|
-
'
|
|
130
|
+
'viewOpinion',
|
|
131
|
+
'editOpinion',
|
|
132
|
+
'requireOpinion',
|
|
133
|
+
'viewMeetingResult',
|
|
134
|
+
'viewVoteResult',
|
|
135
|
+
'viewFlowHistory',
|
|
136
|
+
'printForm'
|
|
131
137
|
]
|
|
132
|
-
attrNames.forEach(name => {
|
|
138
|
+
attrNames.forEach((name) => {
|
|
133
139
|
// 如果是''或者undefined,那么两次!后就是false
|
|
134
140
|
formModel[name + 'Checkbox'] = !!this.modelValue[name].condition
|
|
135
141
|
})
|
|
136
142
|
// 控制附件各个权限的附加条件的属性名
|
|
137
|
-
const attachmentAttrNames = [
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
formModel.attachment[name + 'Checkbox'] = !!this.modelValue.attachment[name] && !!this.modelValue.attachment[name].condition
|
|
143
|
+
const attachmentAttrNames = ['add', 'delete', 'download']
|
|
144
|
+
attachmentAttrNames.forEach((name) => {
|
|
145
|
+
// 如果是''或者undefined,那么两次!后就是false
|
|
146
|
+
formModel.attachment[name + 'Checkbox'] =
|
|
147
|
+
!!this.modelValue.attachment[name] && !!this.modelValue.attachment[name].condition
|
|
143
148
|
if (!formModel.attachment.permission) {
|
|
144
149
|
formModel.attachment[name] = {
|
|
145
150
|
permission: false,
|
|
@@ -155,70 +160,72 @@ export default {
|
|
|
155
160
|
}
|
|
156
161
|
},
|
|
157
162
|
mounted() {
|
|
158
|
-
this.$watch(
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
163
|
+
this.$watch(
|
|
164
|
+
'formModel',
|
|
165
|
+
function (formModel) {
|
|
166
|
+
const result = {
|
|
167
|
+
editForm: {},
|
|
168
|
+
viewOpinion: {},
|
|
169
|
+
editOpinion: {},
|
|
170
|
+
requireOpinion: {},
|
|
171
|
+
viewMeetingResult: {},
|
|
172
|
+
viewVoteResult: {},
|
|
173
|
+
viewFlowHistory: {},
|
|
174
|
+
printForm: {},
|
|
175
|
+
officialText: {},
|
|
176
|
+
attachment: {},
|
|
177
|
+
deleteInstance: {
|
|
178
|
+
userCondition: ''
|
|
179
|
+
}
|
|
172
180
|
}
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
result.editForm.subTablePermission = formModel.editForm.subTablePermission
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
this.attrNames.map(name => {
|
|
182
|
-
// permission为true且附件条件的checkbox也选中了,condition才有效
|
|
183
|
-
result[name].permission = formModel[name].permission
|
|
184
|
-
if (formModel[name].permission && formModel[name + 'Checkbox']) {
|
|
185
|
-
result[name].condition = formModel[name].condition
|
|
186
|
-
} else {
|
|
187
|
-
result[name].condition = ''
|
|
181
|
+
console.log('触发了watch')
|
|
182
|
+
result.editForm.permission = formModel.editForm.permission
|
|
183
|
+
if (formModel.editForm.permission) {
|
|
184
|
+
result.editForm.field = formModel.editForm.field
|
|
185
|
+
result.editForm.subTablePermission = formModel.editForm.subTablePermission
|
|
188
186
|
}
|
|
189
|
-
})
|
|
190
187
|
|
|
191
|
-
|
|
192
|
-
// 允许设置附件权限时,add,delete等的权限设置才有效,否则根本不生成add,delete等对应的json
|
|
193
|
-
if (formModel.attachment.permission) {
|
|
194
|
-
this.attachmentAttrNames.map(name => {
|
|
195
|
-
// 需要避免result的add,delete等属性为undefined
|
|
196
|
-
if (!result.attachment[name])result.attachment[name] = {}
|
|
197
|
-
// attachment不是undefined并且对应的add,delete等属性的permission为true
|
|
198
|
-
result.attachment[name].permission = formModel.attachment[name].permission
|
|
188
|
+
this.attrNames.map((name) => {
|
|
199
189
|
// permission为true且附件条件的checkbox也选中了,condition才有效
|
|
200
|
-
|
|
201
|
-
|
|
190
|
+
result[name].permission = formModel[name].permission
|
|
191
|
+
if (formModel[name].permission && formModel[name + 'Checkbox']) {
|
|
192
|
+
result[name].condition = formModel[name].condition
|
|
202
193
|
} else {
|
|
203
|
-
result
|
|
194
|
+
result[name].condition = ''
|
|
204
195
|
}
|
|
205
196
|
})
|
|
206
|
-
}
|
|
207
197
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
198
|
+
result.attachment.permission = formModel.attachment.permission
|
|
199
|
+
// 允许设置附件权限时,add,delete等的权限设置才有效,否则根本不生成add,delete等对应的json
|
|
200
|
+
if (formModel.attachment.permission) {
|
|
201
|
+
this.attachmentAttrNames.map((name) => {
|
|
202
|
+
// 需要避免result的add,delete等属性为undefined
|
|
203
|
+
if (!result.attachment[name]) result.attachment[name] = {}
|
|
204
|
+
// attachment不是undefined并且对应的add,delete等属性的permission为true
|
|
205
|
+
result.attachment[name].permission = formModel.attachment[name].permission
|
|
206
|
+
// permission为true且附件条件的checkbox也选中了,condition才有效
|
|
207
|
+
if (formModel.attachment[name].permission && formModel.attachment[name + 'Checkbox']) {
|
|
208
|
+
result.attachment[name].condition = formModel.attachment[name].condition
|
|
209
|
+
} else {
|
|
210
|
+
result.attachment[name].condition = ''
|
|
211
|
+
}
|
|
212
|
+
})
|
|
213
|
+
}
|
|
216
214
|
|
|
217
|
-
|
|
215
|
+
// 正文权限暂不处理
|
|
216
|
+
// this.$emit('input', result)
|
|
217
|
+
this.$emit('update:modelValue', result)
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
deep: true
|
|
221
|
+
}
|
|
222
|
+
)
|
|
223
|
+
},
|
|
224
|
+
methods: {}
|
|
218
225
|
}
|
|
219
226
|
</script>
|
|
220
227
|
<style scoped>
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
228
|
+
.el-checkbox {
|
|
229
|
+
margin-left: 20px;
|
|
230
|
+
}
|
|
224
231
|
</style>
|
|
@@ -44,11 +44,11 @@
|
|
|
44
44
|
|
|
45
45
|
<script>
|
|
46
46
|
import BasicProperties from './human-task/basic-properties'
|
|
47
|
-
import PermissionSettings from './human-task/permission-settings'
|
|
47
|
+
import PermissionSettings from './human-task/permission-settings.vue'
|
|
48
48
|
import TransactorSettings from './common/transactor-settings'
|
|
49
49
|
import AutoFilledFields from './common/auto-filled-fields.vue'
|
|
50
50
|
// import Reminder from './common/reminder'
|
|
51
|
-
import Variables from './common/variables'
|
|
51
|
+
import Variables from './common/variables.vue'
|
|
52
52
|
import Events from './human-task/events'
|
|
53
53
|
import NoticeReminder from './common/notice-reminder.vue'
|
|
54
54
|
export default {
|
|
@@ -26,7 +26,11 @@
|
|
|
26
26
|
<notice-settings v-model="model.properties.inform" />
|
|
27
27
|
</el-tab-pane>
|
|
28
28
|
<el-tab-pane :label="$t('workflowEditor.process.reminderSettings')" name="reminders">
|
|
29
|
-
<notice-reminder
|
|
29
|
+
<notice-reminder
|
|
30
|
+
v-model:reminder-value="model.properties.reminder"
|
|
31
|
+
:task-notice-value="model.properties.taskNotice"
|
|
32
|
+
:isProcess="true"
|
|
33
|
+
/>
|
|
30
34
|
</el-tab-pane>
|
|
31
35
|
<el-tab-pane :label="$t('workflowEditor.process.parameterSsetting')" name="parameterSettings">
|
|
32
36
|
<parameter-settings :model="model.properties.parameterSettings" />
|
|
@@ -35,7 +39,7 @@
|
|
|
35
39
|
<events v-model="model.properties.events" />
|
|
36
40
|
</el-tab-pane>
|
|
37
41
|
<el-tab-pane :label="$t('workflowEditor.process.processVariables')" name="variables">
|
|
38
|
-
<variables
|
|
42
|
+
<variables v-model="model.properties.variables" />
|
|
39
43
|
</el-tab-pane>
|
|
40
44
|
</el-tabs>
|
|
41
45
|
</el-dialog>
|
|
@@ -112,4 +116,3 @@ export default {
|
|
|
112
116
|
}
|
|
113
117
|
}
|
|
114
118
|
</script>
|
|
115
|
-
|
package/src/i18n/langs/cn.js
CHANGED
|
@@ -98,7 +98,9 @@ const cn = {
|
|
|
98
98
|
pleaseInputCode: '请先输入编码,再做国际化配置',
|
|
99
99
|
blankFieldNameOrValue: '字段名或值有空白',
|
|
100
100
|
enabledSuccessfully: '启用成功',
|
|
101
|
-
additionalParam: '请求参数'
|
|
101
|
+
additionalParam: '请求参数',
|
|
102
|
+
handlingOpinion: '办理意见',
|
|
103
|
+
opinionSourceField: '意见来源字段'
|
|
102
104
|
},
|
|
103
105
|
workflowEditor: {
|
|
104
106
|
// 主页面
|
|
@@ -458,7 +460,10 @@ const cn = {
|
|
|
458
460
|
reminderTipRemindImmediately:
|
|
459
461
|
'催办方式、通知模板、邮件模板、催办次数、通知方式、通知人员、移交人员 修改后立即生效',
|
|
460
462
|
reminderTipRemindHistory:
|
|
461
|
-
'办理时限、办理时限的时间粒度(天/小时)、催办间隔、催办间隔的时间粒度(天/小时)仅对新发起的流程生效,如历史数据也需要应用最新配置,请联系运维人员调整'
|
|
463
|
+
'办理时限、办理时限的时间粒度(天/小时)、催办间隔、催办间隔的时间粒度(天/小时)仅对新发起的流程生效,如历史数据也需要应用最新配置,请联系运维人员调整',
|
|
464
|
+
timeLimitTypeDefault: '默认',
|
|
465
|
+
timeLimitTypeFormField: '表单字段',
|
|
466
|
+
timeLimitTypeCustom: '自定义'
|
|
462
467
|
},
|
|
463
468
|
// 流向属性
|
|
464
469
|
transition: {
|
|
@@ -514,7 +519,7 @@ const cn = {
|
|
|
514
519
|
accessControl: '进行权限控制',
|
|
515
520
|
formBindingModel: '表单绑定model',
|
|
516
521
|
allFields: '全部字段',
|
|
517
|
-
tableDataNotEmpty: '表格数据不为空'
|
|
522
|
+
tableDataNotEmpty: '表格数据不为空'
|
|
518
523
|
}
|
|
519
524
|
}
|
|
520
525
|
}
|
package/src/i18n/langs/en.js
CHANGED
|
@@ -98,7 +98,9 @@ const en = {
|
|
|
98
98
|
pleaseInputCode: 'Please input the code first, and then do the international configuration',
|
|
99
99
|
blankFieldNameOrValue: 'Blank Field Name Or Value',
|
|
100
100
|
enabledSuccessfully: 'Enabled Successfully',
|
|
101
|
-
additionalParam: 'Request parameter'
|
|
101
|
+
additionalParam: 'Request parameter',
|
|
102
|
+
handlingOpinion: 'Handling Opinion',
|
|
103
|
+
opinionSourceField: 'Opinion Source Field'
|
|
102
104
|
},
|
|
103
105
|
workflowEditor: {
|
|
104
106
|
// 主页面
|
|
@@ -466,7 +468,10 @@ const en = {
|
|
|
466
468
|
reminderTipRemindImmediately:
|
|
467
469
|
'The reminder method, notification template, email template, maximum number of reminders, notification method, notification personnel, and transfer personnel will take effect immediately after modification',
|
|
468
470
|
reminderTipRemindHistory:
|
|
469
|
-
'The processing time limit, processing time granularity (days/hours), reminder interval, reminder interval time granularity (days/hours) are only effective for newly initiated processes. If historical data also requires the latest configuration, please contact the operation and maintenance personnel to adjust'
|
|
471
|
+
'The processing time limit, processing time granularity (days/hours), reminder interval, reminder interval time granularity (days/hours) are only effective for newly initiated processes. If historical data also requires the latest configuration, please contact the operation and maintenance personnel to adjust',
|
|
472
|
+
timeLimitTypeDefault: 'Default',
|
|
473
|
+
timeLimitTypeFormField: 'Form Field',
|
|
474
|
+
timeLimitTypeCustom: 'Custom'
|
|
470
475
|
},
|
|
471
476
|
// 流向属性
|
|
472
477
|
transition: {
|