cloud-web-corejs 1.0.116 → 1.0.118

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 (44) hide show
  1. package/package.json +3 -1
  2. package/src/components/VabUpload/view.vue +135 -135
  3. package/src/components/errorMsg/mixins.js +7 -5
  4. package/src/components/excelExport/button.vue +57 -4
  5. package/src/components/excelExport/index.js +7 -6
  6. package/src/components/excelExport/index.vue +56 -2
  7. package/src/components/excelExport/mixins.js +1 -1
  8. package/src/components/formOplog/mixins.js +1 -1
  9. package/src/components/statusTag/mixins.js +1 -1
  10. package/src/components/table/index.js +1 -1
  11. package/src/components/table/util/index.js +1 -1
  12. package/src/components/tempStorage/index.vue +9 -6
  13. package/src/components/tempStorage/tempStorageDialog.vue +1 -1
  14. package/src/components/wf/content.vue +17 -1
  15. package/src/components/wf/mixins/setCandidateDialog.js +2 -1
  16. package/src/components/wf/setCandidateDialog.vue +9 -0
  17. package/src/components/wf/setCandidateDialog2.vue +320 -0
  18. package/src/components/wf/wf.js +1 -1
  19. package/src/components/wf/wfStartDialog.vue +70 -42
  20. package/src/components/wf/wfTaskUserRangeDialog.vue +131 -0
  21. package/src/components/wf/wfUtil.js +1 -1
  22. package/src/components/xform/form-designer/designer.js +1 -1
  23. package/src/components/xform/form-designer/form-widget/container-widget/data-table-mixin.js +1 -1
  24. package/src/components/xform/form-designer/form-widget/field-widget/checkbox-widget.vue +2 -2
  25. package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +1 -1
  26. package/src/components/xform/form-designer/form-widget/field-widget/radio-widget.vue +2 -2
  27. package/src/components/xform/form-designer/form-widget/field-widget/select-widget.vue +4 -4
  28. package/src/components/xform/form-designer/form-widget/field-widget/static-content-wrapper.vue +2 -1
  29. package/src/components/xform/form-designer/form-widget/field-widget/tempStorage-widget.vue +127 -0
  30. package/src/components/xform/form-designer/indexMixin.js +1 -1
  31. package/src/components/xform/form-designer/setting-panel/form-setting.vue +93 -5
  32. package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +18 -2
  33. package/src/components/xform/form-designer/setting-panel/property-editor/tempStorage-editor.vue +23 -0
  34. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +1 -0
  35. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +31 -0
  36. package/src/components/xform/form-render/container-item/data-table-mixin.js +1 -1
  37. package/src/components/xform/form-render/indexMixin.js +3 -1
  38. package/src/components/xform/lang/zh-CN.js +1 -0
  39. package/src/components/xform/mixins/defaultHandle.js +1 -1
  40. package/src/components/xform/utils/util.js +1451 -1
  41. package/src/utils/index.js +2 -5
  42. package/src/views/user/form/view/list.vue +18 -3
  43. package/src/views/user/wf/wf_obj_config/itemEdit.vue +3 -3
  44. package/src/views/user/wf/wf_obj_config/list.vue +5 -5
@@ -0,0 +1,320 @@
1
+ <template>
2
+ <el-dialog
3
+ :title="$t2('查看候选人', 'components.wf.setCandidateTitle')"
4
+ :close-on-click-modal="falseValue"
5
+ :visible.sync="showDialog"
6
+ :modal="falseValue"
7
+ custom-class="dialog-style list-dialog dialog-checkbox pd_0"
8
+ width="1200px"
9
+ @close="closeWin"
10
+ v-el-drag-dialog
11
+ v-el-dialog-center
12
+ :append-to-body="true"
13
+ >
14
+ <template #title>
15
+ <span class="el-dialog__title">
16
+ {{ $t2("查看候选人", "components.wf.setCandidateTitle")
17
+ }}
18
+ </span>
19
+ </template>
20
+ <div class="cont" style="height: 450px">
21
+ <vxe-grid
22
+ ref="table-m1"
23
+ :data="tableData"
24
+ v-bind="vxeOption"
25
+ @resizable-change="$vxeTableUtil.onColumnWitchChange"
26
+ @custom="$vxeTableUtil.customHandle"
27
+ >
28
+ <template #wfTaskCandidates="{ row }">
29
+ {{ getUsernames(row) }}
30
+ </template>
31
+ <template #operate="{ row, rowIndex }">
32
+ <a
33
+ @click="openUserDialig(row, rowIndex)"
34
+ class="a-link"
35
+ v-if="row.modifyCandidates"
36
+ >
37
+ <el-tooltip
38
+ :enterable="false"
39
+ effect="dark"
40
+ :content="$t2('设置候选人', 'components.wf.modifyCandidate')"
41
+ placement="top"
42
+ popper-class="tooltip-skin"
43
+ >
44
+ <div>
45
+ <i class="el-icon-edit"></i
46
+ ><span>{{
47
+ $t2("设置候选人", "components.wf.modifyCandidate")
48
+ }}</span>
49
+ </div>
50
+ </el-tooltip>
51
+ </a>
52
+ </template>
53
+ </vxe-grid>
54
+ </div>
55
+ <span slot="footer" class="dialog-footer">
56
+ <el-button type="primary" plain class="button-sty" @click="closeWin">
57
+ <i class="el-icon-close el-icon"></i>
58
+ {{ $t2("取 消", "system.button.cancel2") }}
59
+ </el-button>
60
+ <el-button type="primary" @click="confirmDialog" class="button-sty">
61
+ <i class="el-icon-check el-icon"></i>
62
+ {{ $t2("确 定", "system.button.confirm2") }}
63
+ </el-button>
64
+ </span>
65
+ <user-dialog
66
+ v-if="showUserDialog"
67
+ :visiable.sync="showUserDialog"
68
+ @close="showUserDialog = false"
69
+ @confirm="userConfirm"
70
+ multi="true"
71
+ :rows="userRows"
72
+ ></user-dialog>
73
+ <wfTaskUserRangeDialog
74
+ v-if="showWfTaskUserRangeDialog"
75
+ :visiable.sync="showWfTaskUserRangeDialog"
76
+ @close="showWfTaskUserRangeDialog = false"
77
+ @confirm="confirmWfTaskUserRangeDialog"
78
+ multi="true"
79
+ :rows="userRangeRows"
80
+ :rangeTableDatas="rangeTableDatas"
81
+ :current_prefix="current_prefix"
82
+ ></wfTaskUserRangeDialog>
83
+ </el-dialog>
84
+
85
+
86
+ </template>
87
+
88
+ <script>
89
+ import { selectDialogMixins } from "../../mixins/selectDialog/index.js";
90
+ import userDialog from "../../views/user/user/dialog.vue";
91
+ import wfTaskUserRangeDialog from './wfTaskUserRangeDialog.vue'
92
+ export default {
93
+ mixins: [selectDialogMixins],
94
+ props: ['visiable', 'multi', 'rows', 'param', 'current_prefix',"modelId"],
95
+ components: {userDialog,wfTaskUserRangeDialog},
96
+ created() {
97
+
98
+ },
99
+ mounted() {
100
+
101
+ // this.initWfUserRangeParam();
102
+ this.initTableM1();
103
+ },
104
+ data() {
105
+ var that = this;
106
+ return {
107
+ showDialog: true,
108
+ falseValue: false,
109
+ selectMulti: true,
110
+ vxeOption: {},
111
+ showUserDialog: false,
112
+ userRows: [],
113
+ operateIndex: -1,
114
+
115
+ rangeTableDatas: [],
116
+ userRangeRows: [],
117
+ showWfTaskUserRangeDialog:false,
118
+
119
+ tableData: []
120
+
121
+
122
+
123
+ // wfUserRangeEnabled: false
124
+ };
125
+ },
126
+ methods: {
127
+ /* initWfUserRangeParam(){
128
+ this.$http({
129
+ url: USER_PREFIX + "/wf_diy_attribute/getValue",
130
+ method: `post`,
131
+ data: {attributeKey: "param12"},
132
+ success: (res) => {
133
+ this.wfUserRangeEnabled = res?.objx === true;
134
+ },
135
+ });
136
+ }, */
137
+ openShowWfTaskUserRangeDialog(row,rowIndex,rangeTableDatas){
138
+ this.userRangeRows = row.wfTaskCandidateDTOs.map(item => {
139
+ return {
140
+ userId: item.id,
141
+ nickName: item.name
142
+ }
143
+ });
144
+ this.rangeTableDatas = rangeTableDatas;
145
+ this.operateIndex = rowIndex;
146
+ this.showWfTaskUserRangeDialog = true;
147
+ },
148
+ confirmWfTaskUserRangeDialog(rows){
149
+ let $grid = this.$refs["table-m1"];
150
+ let item = $grid.getTableData().fullData[this.operateIndex];
151
+ let wfTaskCandidateDTOs = item.wfTaskCandidateDTOs;
152
+ let item1s = [];
153
+ let item2s = []
154
+ rows.forEach(row => {
155
+ let userId = row.userId;
156
+ let wfTaskCandidateDTO = wfTaskCandidateDTOs.find(item => item.id == userId)
157
+ if (wfTaskCandidateDTO) {
158
+ if (!wfTaskCandidateDTO.userFlag) wfTaskCandidateDTO.userFlag = 6
159
+ item1s.push({...wfTaskCandidateDTO});
160
+ } else {
161
+ item2s.push({
162
+ id: userId,
163
+ name: row.nickName,
164
+ userFlag: 6
165
+ })
166
+ }
167
+ })
168
+ item.wfTaskCandidateDTOs = item1s.concat(item2s)
169
+
170
+ // this.saveItem(item);
171
+ },
172
+ initTableM1() {
173
+ this.tableData = this.$baseLodash.cloneDeep(this.rows || []);
174
+ let that = this;
175
+ let tableOption = {
176
+ vue: that,
177
+ tableRef: 'table-m1',
178
+ tableName: 'setCandidateDialog2_dialog-m1',
179
+ // path: this.current_prefix + '/wf/getAllNodes',
180
+ /* param: () => {
181
+ return {
182
+ stringOne: this.wfInfo.uuid
183
+ }
184
+ }, */
185
+ config: {
186
+ /*checkboxConfig: {
187
+ checkStrictly: true,
188
+ showHeader: this.selectMulti,
189
+ },*/
190
+ /* proxyConfig: {
191
+ props: {
192
+ result: "objx", // 配置响应结果列表字段
193
+ total: "objx.length", // 配置响应结果总页数字段
194
+ },
195
+ }, */
196
+ },
197
+ columns: [
198
+ {type: 'checkbox', width: 50, resizable: false, fixed: 'left'},
199
+ {title: this.$t2('节点名称', 'components.wf.nodeName'), field: 'nodeName', width: 250, fixed: 'left'},
200
+ {
201
+ field: 'wfTaskCandidates',
202
+ title: this.$t2('候选人', 'components.wf.candidate'),
203
+ width: 450,
204
+ slots: {
205
+ default: 'wfTaskCandidates'
206
+ }
207
+ },
208
+ {
209
+ width: 150,
210
+ fixed: 'right',
211
+ title: '',
212
+ sortable: false,
213
+ slots: {
214
+ default: 'operate'
215
+ }
216
+ }
217
+ ]
218
+ };
219
+ this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
220
+ that.vxeOption = opts;
221
+ });
222
+ },
223
+ getUsernames(row) {
224
+ return row.wfTaskCandidateDTOs.map(item => item.name).join(",")
225
+ },
226
+ checkWfTaskUserRange(row, rowIndex, callback){
227
+ //是否使用用户范围
228
+ /* if(!this.wfUserRangeEnabled){
229
+ //不使用用户范围
230
+ callback();
231
+ return
232
+ } */
233
+ this.$http({
234
+ url: this.current_prefix + '/wf_task_user_range/list',
235
+ method: `post`,
236
+ data: {
237
+ modelId: this.modelId,
238
+ taskDefinitionKey: row.nodeId
239
+ },
240
+ isLoading: true,
241
+ success: res => {
242
+ let rows = res.objx || [];
243
+ if(!rows.length){
244
+ //不使用用户范围
245
+ callback();
246
+ }else{
247
+ //使用用户范围
248
+ this.openShowWfTaskUserRangeDialog(row, rowIndex,rows)
249
+ }
250
+ }
251
+ });
252
+ },
253
+
254
+ openUserDialig(row, rowIndex) {
255
+ //是否使用用户范围
256
+ this.checkWfTaskUserRange(row, rowIndex, ()=>{
257
+ //不使用用户范围
258
+ this.userRows = row.wfTaskCandidateDTOs.map(item => {
259
+ return {
260
+ id: item.id,
261
+ nickName: item.name
262
+ }
263
+ });
264
+ this.operateIndex = rowIndex;
265
+ this.showUserDialog = true;
266
+ })
267
+ },
268
+ userConfirm(rows) {
269
+ let $grid = this.$refs["table-m1"];
270
+ let item = $grid.getTableData().fullData[this.operateIndex];
271
+ let wfTaskCandidateDTOs = item.wfTaskCandidateDTOs;
272
+ let item1s = [];
273
+ let item2s = []
274
+ rows.forEach(row => {
275
+ let userId = row.id + "";
276
+ let wfTaskCandidateDTO = wfTaskCandidateDTOs.find(item => item.id == userId)
277
+ if (wfTaskCandidateDTO) {
278
+ if (!wfTaskCandidateDTO.userFlag) wfTaskCandidateDTO.userFlag = 6
279
+ item1s.push({...wfTaskCandidateDTO});
280
+ } else {
281
+ item2s.push({
282
+ id: userId,
283
+ name: row.nickName,
284
+ userFlag: 6
285
+ })
286
+ }
287
+ })
288
+ item.wfTaskCandidateDTOs = item1s.concat(item2s)
289
+
290
+ // this.saveItem(item);
291
+ },
292
+ saveItem(row) {
293
+ this.$http({
294
+ url: this.current_prefix + '/wf/setTaskUser',
295
+ method: `post`,
296
+ data: row,
297
+ isLoading: true,
298
+ success: res => {
299
+ this.$message({
300
+ message: res.content,
301
+ type: 'success',
302
+ duration: 500,
303
+ onClose: t => {
304
+ this.searchEvent();
305
+ }
306
+ });
307
+ }
308
+ });
309
+ },
310
+ confirmDialog(){
311
+ this.$emit("confirm",this.tableData)
312
+ this.closeWin()
313
+ },
314
+ closeWin() {
315
+ this.dialogClose();
316
+ this.$emit('close')
317
+ }
318
+ }
319
+ };
320
+ </script>