workflow-editor 0.0.81-up → 0.0.81-up-tmp1

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 (175) hide show
  1. package/dist/index.full.min.js +3237 -0
  2. package/dist/style.css +1 -0
  3. package/es/_virtual/FileSaver.min.mjs +4 -0
  4. package/es/_virtual/___vite-browser-external.mjs +6 -0
  5. package/es/_virtual/__vite-browser-external.mjs +4 -0
  6. package/es/_virtual/_commonjsHelpers.mjs +30 -0
  7. package/es/_virtual/_plugin-vue_export-helper.mjs +9 -0
  8. package/es/_virtual/clipboard.mjs +4 -0
  9. package/es/_virtual/dayjs.min.mjs +4 -0
  10. package/es/_virtual/index.mjs +4 -0
  11. package/es/_virtual/nprogress.mjs +4 -0
  12. package/es/_virtual/prism.mjs +4 -0
  13. package/es/_virtual/sax.mjs +4 -0
  14. package/es/_virtual/string_decoder.mjs +4 -0
  15. package/es/_virtual/tinymce.mjs +4 -0
  16. package/es/_virtual/weekOfYear.mjs +4 -0
  17. package/es/index.mjs +20 -0
  18. package/es/plugins/formValidatorUtil.mjs +391 -0
  19. package/es/plugins/index.mjs +9 -0
  20. package/es/style.css +1 -0
  21. package/es/vite.svg +1 -0
  22. package/es/workflow-editor/index.mjs +14 -0
  23. package/lib/_virtual/FileSaver.min.cjs +1 -0
  24. package/lib/_virtual/___vite-browser-external.cjs +1 -0
  25. package/lib/_virtual/__vite-browser-external.cjs +1 -0
  26. package/lib/_virtual/_commonjsHelpers.cjs +1 -0
  27. package/lib/_virtual/_plugin-vue_export-helper.cjs +1 -0
  28. package/lib/_virtual/clipboard.cjs +1 -0
  29. package/lib/_virtual/dayjs.min.cjs +1 -0
  30. package/lib/_virtual/index.cjs +1 -0
  31. package/lib/_virtual/nprogress.cjs +1 -0
  32. package/lib/_virtual/prism.cjs +1 -0
  33. package/lib/_virtual/sax.cjs +1 -0
  34. package/lib/_virtual/string_decoder.cjs +1 -0
  35. package/lib/_virtual/tinymce.cjs +1 -0
  36. package/lib/_virtual/weekOfYear.cjs +1 -0
  37. package/lib/index.cjs +1 -0
  38. package/lib/plugins/formValidatorUtil.cjs +1 -0
  39. package/lib/plugins/index.cjs +1 -0
  40. package/lib/style.css +1 -0
  41. package/lib/workflow-editor/index.cjs +1 -0
  42. package/package.json +5 -3
  43. package/vite.config.js +44 -10
  44. package/lib/401-5a92e011.js +0 -101
  45. package/lib/404-2e472acc.js +0 -26
  46. package/lib/authredirect-ae6e75b4.js +0 -10
  47. package/lib/iframe-page-4e84c0f8.js +0 -33
  48. package/lib/index-27119bd2.js +0 -31464
  49. package/lib/index-369eae4a.js +0 -13
  50. package/lib/tab-content-iframe-index-e9146736.js +0 -33
  51. package/lib/tab-content-index-bbc6792b.js +0 -1241
  52. package/lib/tache-subprocess-history-d51d6a50.js +0 -56
  53. package/lib/workflow-editor.css +0 -1
  54. package/lib/workflow-editor.js +0 -5
  55. package/lib/workflow-editor.umd.cjs +0 -85
  56. package/packages/index.js +0 -34
  57. package/packages/plugins/formValidatorUtil.js +0 -723
  58. package/packages/plugins/index.js +0 -8
  59. package/packages/workflow-editor/index.js +0 -14
  60. package/packages/workflow-editor/src/api.js +0 -7
  61. package/packages/workflow-editor/src/assets/tab-select.png +0 -0
  62. package/packages/workflow-editor/src/assets/tab-selectWhite.png +0 -0
  63. package/packages/workflow-editor/src/assets/wf-editor-icons.js +0 -2
  64. package/packages/workflow-editor/src/constant.js +0 -8
  65. package/packages/workflow-editor/src/json-object-templates/auto-task.js +0 -70
  66. package/packages/workflow-editor/src/json-object-templates/copy-task.js +0 -72
  67. package/packages/workflow-editor/src/json-object-templates/decision.js +0 -11
  68. package/packages/workflow-editor/src/json-object-templates/end.js +0 -14
  69. package/packages/workflow-editor/src/json-object-templates/fork.js +0 -10
  70. package/packages/workflow-editor/src/json-object-templates/human-decision.js +0 -9
  71. package/packages/workflow-editor/src/json-object-templates/human-task.js +0 -208
  72. package/packages/workflow-editor/src/json-object-templates/join.js +0 -10
  73. package/packages/workflow-editor/src/json-object-templates/process.js +0 -99
  74. package/packages/workflow-editor/src/json-object-templates/start.js +0 -13
  75. package/packages/workflow-editor/src/json-object-templates/subprocess.js +0 -31
  76. package/packages/workflow-editor/src/json-object-templates/transition.js +0 -26
  77. package/packages/workflow-editor/src/main/admin-save-dialog.vue +0 -67
  78. package/packages/workflow-editor/src/main/canvas.vue +0 -493
  79. package/packages/workflow-editor/src/main/context-menu.vue +0 -147
  80. package/packages/workflow-editor/src/main/icon-svg.vue +0 -32
  81. package/packages/workflow-editor/src/main/selection-region.vue +0 -66
  82. package/packages/workflow-editor/src/main/tache-history-tooltip.vue +0 -38
  83. package/packages/workflow-editor/src/main/tache-name-input.vue +0 -19
  84. package/packages/workflow-editor/src/main/tache-subprocess-history-dialog.vue +0 -40
  85. package/packages/workflow-editor/src/main/toolbox.vue +0 -60
  86. package/packages/workflow-editor/src/main/wf-history-canvas.vue +0 -309
  87. package/packages/workflow-editor/src/process-json.js +0 -624
  88. package/packages/workflow-editor/src/process-service.js +0 -69
  89. package/packages/workflow-editor/src/properties-editors/auto-task/basic-properties.vue +0 -81
  90. package/packages/workflow-editor/src/properties-editors/auto-task/permission-settings.vue +0 -155
  91. package/packages/workflow-editor/src/properties-editors/auto-task.vue +0 -74
  92. package/packages/workflow-editor/src/properties-editors/common/additional-condition-utils.js +0 -568
  93. package/packages/workflow-editor/src/properties-editors/common/additional-condition.vue +0 -320
  94. package/packages/workflow-editor/src/properties-editors/common/auto-filled-fields-utils.js +0 -34
  95. package/packages/workflow-editor/src/properties-editors/common/auto-filled-fields.vue +0 -268
  96. package/packages/workflow-editor/src/properties-editors/common/common-notice-tool.vue +0 -81
  97. package/packages/workflow-editor/src/properties-editors/common/common-user-condition.vue +0 -242
  98. package/packages/workflow-editor/src/properties-editors/common/form-fields-utils.js +0 -23
  99. package/packages/workflow-editor/src/properties-editors/common/form-fields.vue +0 -117
  100. package/packages/workflow-editor/src/properties-editors/common/i18n-input.vue +0 -88
  101. package/packages/workflow-editor/src/properties-editors/common/i18n-set-dialog.vue +0 -143
  102. package/packages/workflow-editor/src/properties-editors/common/notice-reminder.vue +0 -149
  103. package/packages/workflow-editor/src/properties-editors/common/notice.vue +0 -108
  104. package/packages/workflow-editor/src/properties-editors/common/reminder.vue +0 -272
  105. package/packages/workflow-editor/src/properties-editors/common/select-mail-template.vue +0 -92
  106. package/packages/workflow-editor/src/properties-editors/common/standard-fields.vue +0 -66
  107. package/packages/workflow-editor/src/properties-editors/common/system-role-tree-inline.vue +0 -354
  108. package/packages/workflow-editor/src/properties-editors/common/system-role-tree.vue +0 -68
  109. package/packages/workflow-editor/src/properties-editors/common/task-title.vue +0 -165
  110. package/packages/workflow-editor/src/properties-editors/common/transactor-settings.vue +0 -275
  111. package/packages/workflow-editor/src/properties-editors/common/user-selection.vue +0 -426
  112. package/packages/workflow-editor/src/properties-editors/common/value-selection-dialog.vue +0 -272
  113. package/packages/workflow-editor/src/properties-editors/common/variables.vue +0 -139
  114. package/packages/workflow-editor/src/properties-editors/copy-task/basic-properties.vue +0 -90
  115. package/packages/workflow-editor/src/properties-editors/copy-task/permission-settings.vue +0 -155
  116. package/packages/workflow-editor/src/properties-editors/copy-task.vue +0 -95
  117. package/packages/workflow-editor/src/properties-editors/decision.vue +0 -95
  118. package/packages/workflow-editor/src/properties-editors/fork.vue +0 -77
  119. package/packages/workflow-editor/src/properties-editors/human-decision.vue +0 -49
  120. package/packages/workflow-editor/src/properties-editors/human-task/additional-condition-dialog.vue +0 -62
  121. package/packages/workflow-editor/src/properties-editors/human-task/basic-properties.vue +0 -184
  122. package/packages/workflow-editor/src/properties-editors/human-task/componentsConfigUtil.js +0 -359
  123. package/packages/workflow-editor/src/properties-editors/human-task/custom-actions.vue +0 -256
  124. package/packages/workflow-editor/src/properties-editors/human-task/editable-child-field-setting.vue +0 -405
  125. package/packages/workflow-editor/src/properties-editors/human-task/editable-child-fields.vue +0 -257
  126. package/packages/workflow-editor/src/properties-editors/human-task/editable-field-selection.vue +0 -430
  127. package/packages/workflow-editor/src/properties-editors/human-task/editable-fields.vue +0 -206
  128. package/packages/workflow-editor/src/properties-editors/human-task/events.vue +0 -60
  129. package/packages/workflow-editor/src/properties-editors/human-task/permission-settings.vue +0 -224
  130. package/packages/workflow-editor/src/properties-editors/human-task/selection-conditions.vue +0 -499
  131. package/packages/workflow-editor/src/properties-editors/human-task.vue +0 -107
  132. package/packages/workflow-editor/src/properties-editors/join.vue +0 -49
  133. package/packages/workflow-editor/src/properties-editors/process/basic-properties.vue +0 -336
  134. package/packages/workflow-editor/src/properties-editors/process/events.vue +0 -79
  135. package/packages/workflow-editor/src/properties-editors/process/notice-settings.vue +0 -68
  136. package/packages/workflow-editor/src/properties-editors/process/parameter-settings.vue +0 -106
  137. package/packages/workflow-editor/src/properties-editors/process/permission-settings.vue +0 -28
  138. package/packages/workflow-editor/src/properties-editors/process/selectPage.vue +0 -88
  139. package/packages/workflow-editor/src/properties-editors/process.vue +0 -115
  140. package/packages/workflow-editor/src/properties-editors/subprocess/basic-properties.vue +0 -201
  141. package/packages/workflow-editor/src/properties-editors/subprocess/events.vue +0 -26
  142. package/packages/workflow-editor/src/properties-editors/subprocess/field-mappings.vue +0 -216
  143. package/packages/workflow-editor/src/properties-editors/subprocess/transactor-settings.vue +0 -66
  144. package/packages/workflow-editor/src/properties-editors/subprocess.vue +0 -80
  145. package/packages/workflow-editor/src/properties-editors/transition/basic-properties.vue +0 -53
  146. package/packages/workflow-editor/src/properties-editors/transition.vue +0 -75
  147. package/packages/workflow-editor/src/properties-editors/user-condition.js +0 -183
  148. package/packages/workflow-editor/src/store/getters.js +0 -33
  149. package/packages/workflow-editor/src/store/workflow-editor.js +0 -153
  150. package/packages/workflow-editor/src/taches/auto-task.vue +0 -99
  151. package/packages/workflow-editor/src/taches/common-methods.js +0 -21
  152. package/packages/workflow-editor/src/taches/copy-task.vue +0 -99
  153. package/packages/workflow-editor/src/taches/custom-task.vue +0 -88
  154. package/packages/workflow-editor/src/taches/decision.vue +0 -102
  155. package/packages/workflow-editor/src/taches/end.vue +0 -76
  156. package/packages/workflow-editor/src/taches/fork.vue +0 -102
  157. package/packages/workflow-editor/src/taches/human-decision.vue +0 -102
  158. package/packages/workflow-editor/src/taches/human-task.vue +0 -113
  159. package/packages/workflow-editor/src/taches/join.vue +0 -91
  160. package/packages/workflow-editor/src/taches/joint.vue +0 -177
  161. package/packages/workflow-editor/src/taches/start.vue +0 -76
  162. package/packages/workflow-editor/src/taches/subprocess.vue +0 -99
  163. package/packages/workflow-editor/src/taches/tache-resizer.vue +0 -80
  164. package/packages/workflow-editor/src/transitions/broken-line.vue +0 -91
  165. package/packages/workflow-editor/src/transitions/curve-line.vue +0 -91
  166. package/packages/workflow-editor/src/transitions/straight-line.vue +0 -26
  167. package/packages/workflow-editor/src/transitions/transition.vue +0 -209
  168. package/packages/workflow-editor/src/transitions/virtual-transition.vue +0 -43
  169. package/packages/workflow-editor/src/util.js +0 -499
  170. package/packages/workflow-editor/src/workflow-editor.vue +0 -852
  171. package/packages/workflow-editor/src/workflow-history.vue +0 -153
  172. package/src/i18n/i18n.js +0 -16
  173. package/src/i18n/langs/cn.js +0 -521
  174. package/src/i18n/langs/en.js +0 -529
  175. /package/{public → dist}/vite.svg +0 -0
@@ -1,206 +0,0 @@
1
- <template>
2
- <div style="width: 100%">
3
- <el-row style="padding-bottom: 10px">
4
- <el-button type="primary" size="small" plain icon="CirclePlus" @click="add">
5
- {{ $t('workflowEditorPublicModel.add') }}
6
- </el-button>
7
- <el-button type="primary" size="small" plain icon="Delete" @click="remove">
8
- {{ $t('workflowEditorPublicModel.delete') }}
9
- </el-button>
10
- </el-row>
11
- <el-table
12
- ref="table"
13
- :data="selectedFields"
14
- border
15
- highlight-current-row
16
- @selection-change="handleSelectionChange"
17
- @current-change="handleCurrentChange"
18
- >
19
- <el-table-column type="selection" width="55" />
20
- <el-table-column type="index" width="50" />
21
- <el-table-column :label="$t('workflowEditor.common.name')" width="180">
22
- <template v-slot="scope">
23
- <span :style="{ color: scope.row.name && scope.row.name.indexOf('$') === 0 ? '#409EFF' : '' }">{{
24
- getFieldLabel(scope.row)
25
- }}</span>
26
- </template>
27
- </el-table-column>
28
- <el-table-column prop="name" :label="$t('workflowEditor.task.propertyName')" width="180" />
29
- <el-table-column prop="constraintRule" :label="$t('workflowEditor.task.editingMethod')">
30
- <template v-slot="scope">
31
- <el-radio-group v-model="scope.row.constraintRule">
32
- <el-radio label="REQUIRED">
33
- {{ $t('workflowEditorMessage.mustFill') }}
34
- </el-radio>
35
- <el-radio label="READ_ONLY">
36
- {{ $t('workflowEditorMessage.readOnly') }}
37
- </el-radio>
38
- </el-radio-group>
39
- </template>
40
- </el-table-column>
41
- <el-table-column prop="condition" :label="$t('workflowEditor.task.condition')">
42
- <template v-slot="scope">
43
- <el-input
44
- :value="formatCondition(scope.row.condition)"
45
- type="textarea"
46
- autosize
47
- @click="selectCondition(scope.row)"
48
- />
49
- </template>
50
- </el-table-column>
51
- </el-table>
52
- <!-- 之前是@input事件,会导致字段复选框无法选中 -->
53
- <editable-field-selection
54
- v-if="showFieldSelection"
55
- :disabled-fields="disabledFields"
56
- @input-value="setSelectedFields"
57
- @close="showFieldSelection = false"
58
- />
59
- <additional-condition-dialog
60
- v-if="showAdditionalCondition"
61
- v-model="currentRow.condition"
62
- @close="showAdditionalCondition = false"
63
- />
64
- </div>
65
- </template>
66
-
67
- <script>
68
- import EditableFieldSelection from './editable-field-selection'
69
- import AdditionalConditionDialog from './additional-condition-dialog'
70
- import { mapGetters } from 'vuex'
71
- import { parseCondition, displayCondition } from '../common/additional-condition-utils'
72
- export default {
73
- name: 'EditableFields',
74
- components: {
75
- EditableFieldSelection,
76
- AdditionalConditionDialog
77
- },
78
- props: {
79
- modelValue: {
80
- type: [Array, Object],
81
- default: null
82
- }
83
- },
84
- data() {
85
- let selectedFields = []
86
- if (this.modelValue !== '' && this.modelValue !== null && this.modelValue !== undefined) {
87
- if (Array.isArray(this.modelValue)) {
88
- selectedFields = this.modelValue
89
- } else {
90
- // 只有一个字段时其实是field对象
91
- selectedFields.push(this.modelValue)
92
- }
93
- }
94
- // 列表中出现的字段不能重复添加
95
- const disabledFields = this.getDisabledFields(this.modelValue)
96
- return {
97
- showFieldSelection: false,
98
- showAdditionalCondition: false,
99
- selectedFields,
100
- currentRow: null,
101
- multipleSelection: [],
102
- disabledFields
103
- }
104
- },
105
- computed: {
106
- ...mapGetters('wfEditor', ['formFieldsWithSub'])
107
- },
108
- watch: {
109
- selectedFields: {
110
- handler(newValue, oldValue) {
111
- this.disabledFields = this.getDisabledFields(newValue)
112
- },
113
- deep: true
114
- }
115
- },
116
- mounted() {
117
- if (this.selectedFields.length > 0) {
118
- this.selectRow(this.selectedFields[this.selectedFields.length - 1])
119
- }
120
- },
121
- methods: {
122
- getDisabledFields(feilds) {
123
- if (feilds === null || feilds === undefined) return []
124
- const result = []
125
- // value可能是数组或者对象(一个字段时),要分别处理
126
- if (Array.isArray(feilds)) {
127
- feilds.map((item) => {
128
- result.push(item.name)
129
- })
130
- } else {
131
- result.push(feilds)
132
- }
133
-
134
- return result
135
- },
136
- handleCurrentChange(val) {
137
- this.currentRow = val
138
- },
139
- handleSelectionChange(val) {
140
- this.multipleSelection = val
141
- },
142
- selectRow(row) {
143
- this.$refs.table.setCurrentRow(row)
144
- },
145
- add() {
146
- this.showFieldSelection = true
147
- },
148
- getCurrentRowIndex() {
149
- let index = -1
150
- for (let i = 0; i < this.selectedFields.length; i++) {
151
- if (this.selectedFields[i].name === this.currentRow.name) {
152
- index = i
153
- break
154
- }
155
- }
156
- return index
157
- },
158
- remove() {
159
- if (this.multipleSelection && this.multipleSelection.length > 0) {
160
- for (var i = 0; i < this.multipleSelection.length; i++) {
161
- const selectRow = this.multipleSelection[i]
162
- this.selectRow(selectRow)
163
- const index = this.getCurrentRowIndex()
164
- this.selectedFields.splice(index, 1)
165
- }
166
- // 需要把input改成update:modelValue,否则v-model的属性无法双向绑定
167
- // this.$emit('input', this.selectedFields)
168
- this.$emit('update:modelValue', this.selectedFields)
169
- }
170
- },
171
- setSelectedFields(fields) {
172
- // 新选中的字段需要以追加的方式放到xml中
173
- if (fields === null || fields === undefined) {
174
- fields = []
175
- }
176
- this.selectedFields = this.selectedFields.concat(fields)
177
- this.selectRow(this.selectedFields[this.selectedFields.length - 1])
178
- // 需要把input改成update:modelValue,否则v-model的属性无法双向绑定
179
- // this.$emit('input', this.selectedFields)
180
- this.$emit('update:modelValue', this.selectedFields)
181
- },
182
- formatCondition(value) {
183
- if (value === '' || !value) return this.$t('workflowEditor.task.nothing')
184
- const conditions = []
185
- parseCondition(conditions, value)
186
- return displayCondition(conditions)
187
- },
188
- getFieldLabel(row) {
189
- const field = this.formFieldsWithSub.filter((item) => {
190
- return item.name === row.name
191
- })
192
- if (field.length > 0) {
193
- return field[0].label
194
- } else {
195
- return ''
196
- }
197
- },
198
- selectCondition(row) {
199
- this.selectRow(row)
200
- this.showAdditionalCondition = true
201
- }
202
- }
203
- }
204
- </script>
205
-
206
- <style lang="scss" scoped></style>
@@ -1,60 +0,0 @@
1
- <template>
2
- <el-form :model="formModel" label-width="80px">
3
- <el-form-item :label="$t('workflowEditor.task.beforeSubmission')">
4
- <el-switch v-model="formModel.beforeSubmitEnabled" />
5
- </el-form-item>
6
- <div v-if="formModel.beforeSubmitEnabled">
7
- <el-form-item :label="$t('workflowEditor.task.executionURL')">
8
- <el-input v-model="formModel.beforeSubmit.url" />
9
- </el-form-item>
10
- <el-form-item :label="$t('workflowEditor.task.errorMessage')">
11
- <el-input v-model="formModel.beforeSubmit.errorMessage" />
12
- </el-form-item>
13
- </div>
14
- <el-form-item :label="$t('workflowEditor.task.afterSubmission')">
15
- <el-switch v-model="formModel.afterComplete" />
16
- </el-form-item>
17
- </el-form>
18
- </template>
19
-
20
- <script>
21
- export default {
22
- name: 'Events',
23
- props: {
24
- modelValue: {
25
- type: Object,
26
- default: null
27
- }
28
- },
29
- data() {
30
- const formModel = {}
31
- formModel.beforeSubmitEnabled = false
32
- formModel.beforeSubmit = {}
33
- if (this.modelValue.beforeSubmit) {
34
- formModel.beforeSubmitEnabled = true
35
- formModel.beforeSubmit = {
36
- ...this.modelValue.beforeSubmit
37
- }
38
- }
39
- formModel.afterComplete = this.modelValue.afterComplete
40
- return {
41
- formModel
42
- }
43
- },
44
- mounted() {
45
- this.$watch('formModel', function(newVal, oldVal) {
46
- const events = {}
47
- if (this.formModel.beforeSubmitEnabled) {
48
- events.beforeSubmit = {
49
- ...this.formModel.beforeSubmit
50
- }
51
- }
52
- events.afterComplete = this.formModel.afterComplete
53
- // this.$emit('input', events)
54
- this.$emit('update:modelValue',events)
55
- }, {
56
- deep: true
57
- })
58
- }
59
- }
60
- </script>
@@ -1,224 +0,0 @@
1
- <template>
2
- <el-form :model="formModel">
3
- <el-form-item :label="$t('workflowEditor.task.allowEditingForms')">
4
- <el-switch v-model="formModel.editForm.permission" />
5
- </el-form-item>
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
- <el-form-item :label="$t('workflowEditor.task.allowViews')">
11
- <el-switch v-model="formModel.viewOpinion.permission" />
12
- <el-checkbox v-if="formModel.viewOpinion.permission" v-model="formModel.viewOpinionCheckbox">
13
- {{ $t('workflowEditor.task.additionalConditions') }}
14
- </el-checkbox>
15
- </el-form-item>
16
- <el-form-item v-show="formModel.viewOpinion.permission&&formModel.viewOpinionCheckbox" >
17
- <additional-condition v-model="formModel.viewOpinion.condition" />
18
- </el-form-item>
19
- <el-form-item :label="$t('workflowEditor.task.commentsAllowed')">
20
- <el-switch v-model="formModel.editOpinion.permission" />
21
- <el-checkbox v-if="formModel.editOpinion.permission" v-model="formModel.editOpinionCheckbox">
22
- {{ $t('workflowEditor.task.additionalConditions') }}
23
- </el-checkbox>
24
- </el-form-item>
25
- <el-form-item v-show="formModel.editOpinion.permission&&formModel.editOpinionCheckbox">
26
- <additional-condition v-model="formModel.editOpinion.condition" />
27
- </el-form-item>
28
- <el-form-item :label="$t('workflowEditor.task.commentsAreRequired')">
29
- <el-switch v-model="formModel.requireOpinion.permission" />
30
- <el-checkbox v-if="formModel.requireOpinion.permission" v-model="formModel.requireOpinionCheckbox">
31
- {{ $t('workflowEditor.task.additionalConditions') }}
32
- </el-checkbox>
33
- </el-form-item>
34
- <el-form-item v-show="formModel.requireOpinion.permission&&formModel.requireOpinionCheckbox">
35
- <additional-condition v-model="formModel.requireOpinion.condition" />
36
- </el-form-item>
37
- <el-form-item :label="$t('workflowEditor.task.allowToViewCountersignatureResults')">
38
- <el-switch v-model="formModel.viewMeetingResult.permission" />
39
- <el-checkbox v-if="formModel.viewMeetingResult.permission" v-model="formModel.viewMeetingResultCheckbox">
40
- {{ $t('workflowEditor.task.additionalConditions') }}
41
- </el-checkbox>
42
- </el-form-item>
43
- <el-form-item v-show="formModel.viewMeetingResult.permission&&formModel.viewMeetingResultCheckbox">
44
- <additional-condition v-model="formModel.viewMeetingResult.condition" />
45
- </el-form-item>
46
- <el-form-item :label="$t('workflowEditor.task.allowToViewVotingResults')">
47
- <el-switch v-model="formModel.viewVoteResult.permission" />
48
- <el-checkbox v-if="formModel.viewVoteResult.permission" v-model="formModel.viewVoteResultCheckbox">
49
- {{ $t('workflowEditor.task.additionalConditions') }}
50
- </el-checkbox>
51
- </el-form-item>
52
- <el-form-item v-show="formModel.viewVoteResult.permission&&formModel.viewVoteResultCheckbox" >
53
- <additional-condition v-model="formModel.viewVoteResult.condition" />
54
- </el-form-item>
55
- <el-form-item :label="$t('workflowEditor.task.allowToViewFlowHistory')">
56
- <el-switch v-model="formModel.viewFlowHistory.permission" />
57
- <el-checkbox v-if="formModel.viewFlowHistory.permission" v-model="formModel.viewFlowHistoryCheckbox">
58
- {{ $t('workflowEditor.task.additionalConditions') }}
59
- </el-checkbox>
60
- </el-form-item>
61
- <el-form-item v-show="formModel.viewFlowHistory.permission&&formModel.viewFlowHistoryCheckbox">
62
- <additional-condition v-model="formModel.viewFlowHistory.condition" />
63
- </el-form-item>
64
- <el-form-item :label="$t('workflowEditor.task.allowFormsToPrint')">
65
- <el-switch v-model="formModel.printForm.permission" />
66
- <el-checkbox v-if="formModel.printForm.permission" v-model="formModel.printFormCheckbox">
67
- {{ $t('workflowEditor.task.additionalConditions') }}
68
- </el-checkbox>
69
- </el-form-item>
70
- <el-form-item v-show="formModel.printForm.permission&&formModel.printFormCheckbox" >
71
- <additional-condition v-model="formModel.printForm.condition" />
72
- </el-form-item>
73
- <user-selection v-model="formModel.deleteInstance.userCondition" :label="$t('workflowEditor.task.deletePermission')" label-width="100px" :current-transactor="true" />
74
- <el-form-item :label="$t('workflowEditor.task.attachmentAuthority')">
75
- <el-switch v-model="formModel.attachment.permission" />
76
- </el-form-item>
77
- <el-card v-if="formModel.attachment.permission" class="box-card">
78
- <el-form-item :label="$t('workflowEditor.task.addAttachment')">
79
- <el-switch v-model="formModel.attachment.add.permission" />
80
- <el-checkbox v-if="formModel.attachment.add.permission" v-model="formModel.attachment.addCheckbox">
81
- {{ $t('workflowEditor.task.additionalConditions') }}
82
- </el-checkbox>
83
- <additional-condition v-if="formModel.attachment.add.permission&&formModel.attachment.addCheckbox" v-model="formModel.attachment.add.condition" />
84
- </el-form-item>
85
- <el-form-item :label="$t('workflowEditor.task.deleteAttachment')">
86
- <el-switch v-model="formModel.attachment.delete.permission" />
87
- <el-checkbox v-if="formModel.attachment.delete.permission" v-model="formModel.attachment.deleteCheckbox">
88
- {{ $t('workflowEditor.task.additionalConditions') }}
89
- </el-checkbox>
90
- <additional-condition v-if="formModel.attachment.delete.permission&&formModel.attachment.deleteCheckbox" v-model="formModel.attachment.delete.condition" />
91
- </el-form-item>
92
- <el-form-item :label="$t('workflowEditor.task.downloadAttachment')">
93
- <el-switch v-model="formModel.attachment.download.permission" />
94
- <el-checkbox v-if="formModel.attachment.download.permission" v-model="formModel.attachment.downloadCheckbox">
95
- {{ $t('workflowEditor.task.additionalConditions') }}
96
- </el-checkbox>
97
- <additional-condition v-if="formModel.attachment.download.permission&&formModel.attachment.downloadCheckbox" v-model="formModel.attachment.download.condition" />
98
- </el-form-item>
99
- </el-card>
100
- <el-form-item :label="$t('workflowEditor.task.bodyPermission')">
101
- <el-switch v-model="formModel.officialText.permission" />
102
- </el-form-item>
103
- </el-form>
104
- </template>
105
- <script>
106
- import EditableFields from './editable-fields'
107
- import editableChildFields from './editable-child-fields'
108
- import AdditionalCondition from '../common/additional-condition'
109
- import UserSelection from '../common/user-selection'
110
- import { deepCopy } from '../../util'
111
- export default {
112
- name: 'PermissionSettings',
113
- components: {
114
- EditableFields,
115
- UserSelection,
116
- AdditionalCondition,
117
- editableChildFields
118
- },
119
- props: {
120
- modelValue: {
121
- type: Object,
122
- default: null
123
- }
124
- },
125
- data() {
126
- const formModel = deepCopy(this.modelValue)
127
- // 控制附加条件的属性名
128
- const attrNames = [
129
- 'viewOpinion', 'editOpinion', 'requireOpinion', 'viewMeetingResult', 'viewVoteResult',
130
- 'viewFlowHistory', 'printForm'
131
- ]
132
- attrNames.forEach(name => {
133
- // 如果是''或者undefined,那么两次!后就是false
134
- formModel[name + 'Checkbox'] = !!this.modelValue[name].condition
135
- })
136
- // 控制附件各个权限的附加条件的属性名
137
- const attachmentAttrNames = [
138
- 'add', 'delete', 'download'
139
- ]
140
- attachmentAttrNames.forEach(name => {
141
- // 如果是''或者undefined,那么两次!后就是false
142
- formModel.attachment[name + 'Checkbox'] = !!this.modelValue.attachment[name] && !!this.modelValue.attachment[name].condition
143
- if (!formModel.attachment.permission) {
144
- formModel.attachment[name] = {
145
- permission: false,
146
- condition: ''
147
- }
148
- }
149
- })
150
-
151
- return {
152
- formModel,
153
- attrNames,
154
- attachmentAttrNames
155
- }
156
- },
157
- mounted() {
158
- this.$watch('formModel', function(formModel) {
159
- const result = {
160
- editForm: { },
161
- viewOpinion: { },
162
- editOpinion: { },
163
- requireOpinion: { },
164
- viewMeetingResult: { },
165
- viewVoteResult: { },
166
- viewFlowHistory: { },
167
- printForm: { },
168
- officialText: { },
169
- attachment: { },
170
- deleteInstance: {
171
- userCondition: ''
172
- }
173
- }
174
- console.log('触发了watch')
175
- result.editForm.permission = formModel.editForm.permission
176
- if (formModel.editForm.permission) {
177
- result.editForm.field = formModel.editForm.field
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 = ''
188
- }
189
- })
190
-
191
- result.attachment.permission = formModel.attachment.permission
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
199
- // permission为true且附件条件的checkbox也选中了,condition才有效
200
- if (formModel.attachment[name].permission && formModel.attachment[name + 'Checkbox']) {
201
- result.attachment[name].condition = formModel.attachment[name].condition
202
- } else {
203
- result.attachment[name].condition = ''
204
- }
205
- })
206
- }
207
-
208
- // 正文权限暂不处理
209
- // this.$emit('input', result)
210
- this.$emit('update:modelValue', result)
211
- }, {
212
- deep: true
213
- })
214
- },
215
- methods: {
216
-
217
- }
218
- }
219
- </script>
220
- <style scoped>
221
- .el-checkbox{
222
- margin-left: 20px;
223
- }
224
- </style>