cloud-web-corejs 1.0.258 → 1.0.259

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 (248) hide show
  1. package/package.json +32 -25
  2. package/src/components/VabUpload/fileLibraryDialog.vue +296 -0
  3. package/src/components/VabUpload/index.js +22 -2
  4. package/src/components/VabUpload/index.vue +242 -231
  5. package/src/components/VabUpload/mixins/fileLibraryDialog.js +1112 -0
  6. package/src/components/VabUpload/mixins.js +1971 -1829
  7. package/src/components/VabUpload/privateProfileDialog.vue +2 -2
  8. package/src/components/baseArea/index.vue +1628 -0
  9. package/src/components/baseInputExport/mixins.js +48 -31
  10. package/src/components/baseInputNumber/index.vue +9 -9
  11. package/src/components/baseTabs/index.vue +16 -8
  12. package/src/components/code-editor/async.js +29 -0
  13. package/src/components/code-editor/index.vue +93 -4
  14. package/src/components/errorMsg/index.js +10 -9
  15. package/src/components/errorMsg/mixins.js +25 -23
  16. package/src/components/excelExport/exportFieldDialog.vue +40 -18
  17. package/src/components/excelExport/index.js +62 -3
  18. package/src/components/excelExport/index.vue +2 -1
  19. package/src/components/excelExport/mixins.js +496 -340
  20. package/src/components/excelImport/index.js +69 -7
  21. package/src/components/excelImport/mixins.js +841 -9
  22. package/src/components/fileLibrary/categoryMoveDialog.vue +109 -109
  23. package/src/components/fileLibrary/fileHistoryDialog.vue +1 -1
  24. package/src/components/fileLibrary/fileObjAuthDialog.vue +297 -298
  25. package/src/components/fileLibrary/fileObjAuthEdit.vue +1 -1
  26. package/src/components/fileLibrary/filterDialog.vue +1 -1
  27. package/src/components/fileLibrary/index.vue +1109 -1110
  28. package/src/components/fileLibrary/mixins/indexMixins.js +10 -0
  29. package/src/components/fileLibrary/propertiesDialog.vue +190 -190
  30. package/src/components/fileLibrary/recycleBinDialog.vue +237 -236
  31. package/src/components/formOplog/mixins.js +85 -80
  32. package/src/components/hiprint/view/design/index.vue +7 -2
  33. package/src/components/jsonImport/exportUtil.js +106 -0
  34. package/src/components/jsonImport/index.js +75 -50
  35. package/src/components/jsonImport/mixins.js +350 -348
  36. package/src/components/langImport/mixins.js +502 -500
  37. package/src/components/micro-view-host/contract.js +66 -0
  38. package/src/components/micro-view-host/index.vue +148 -0
  39. package/src/components/mobile/file/index.vue +10 -0
  40. package/src/components/mobile/wf/mixins/wfModifyDialogMixin.js +51 -47
  41. package/src/components/obsUpload/index.vue +234 -231
  42. package/src/components/obsUpload/mixins.js +1542 -1476
  43. package/src/components/onlineTalk/talkUserDialog.vue +1 -1
  44. package/src/components/table/CellSlot.vue +12 -10
  45. package/src/components/table/config.js +74 -1
  46. package/src/components/table/index.js +1208 -1
  47. package/src/components/table/tableFormMixin.js +285 -1
  48. package/src/components/table/util/index.js +38 -40
  49. package/src/components/table/vxeFilter/index.js +153 -2
  50. package/src/components/table/vxeFilter/mixin.js +305 -3
  51. package/src/components/tempStorage/tempStorageDialog.vue +1 -1
  52. package/src/components/vb-tabs/x-tabs.vue +10 -5
  53. package/src/components/wf/addTaskUserdialog.vue +1 -1
  54. package/src/components/wf/mixins/setCandidateDialog.js +217 -217
  55. package/src/components/wf/mixins/setCandidateDialog2.js +252 -252
  56. package/src/components/wf/wf.js +2224 -2203
  57. package/src/components/wf/wfUtil.js +2 -1
  58. package/src/components/xform/docs/2026-08 /345/210/227/350/241/250/345/257/274/345/207/272/350/204/261/346/225/217/345/210/227/345/211/224/351/231/244/350/220/275/345/234/260/346/226/207/346/241/243.md" +173 -0
  59. package/src/components/xform/form-designer/designer.js +1 -0
  60. package/src/components/xform/form-designer/form-widget/container-widget/containerMixin.js +110 -1
  61. package/src/components/xform/form-designer/form-widget/container-widget/data-table-mixin.js +282 -1
  62. package/src/components/xform/form-designer/form-widget/field-widget/area-select-widget.vue +272 -0
  63. package/src/components/xform/form-designer/form-widget/field-widget/autocomplete-widget.vue +119 -0
  64. package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +14 -0
  65. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +18 -73
  66. package/src/components/xform/form-designer/form-widget/field-widget/mixins/autocomplete-mixin.js +451 -0
  67. package/src/components/xform/form-designer/form-widget/field-widget/mixins/date-limit-mixin.js +157 -0
  68. package/src/components/xform/form-designer/form-widget/field-widget/mixins/utc-transform-mixin.js +75 -0
  69. package/src/components/xform/form-designer/form-widget/field-widget/save_submit_wf_button-widget.vue +112 -0
  70. package/src/components/xform/form-designer/form-widget/field-widget/script-input-widget.vue +149 -0
  71. package/src/components/xform/form-designer/form-widget/indexMixin.js +179 -1
  72. package/src/components/xform/form-designer/indexMixin.js +823 -1
  73. package/src/components/xform/form-designer/refMixinDesign.js +27 -1
  74. package/src/components/xform/form-designer/setting-panel/action-button-config-dialog.vue +241 -0
  75. package/src/components/xform/form-designer/setting-panel/form-dynamicField-setting.vue +601 -0
  76. package/src/components/xform/form-designer/setting-panel/form-setting.vue +6 -0
  77. package/src/components/xform/form-designer/setting-panel/index.vue +314 -309
  78. package/src/components/xform/form-designer/setting-panel/indexMixin.js +324 -1
  79. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +8 -7
  80. package/src/components/xform/form-designer/setting-panel/property-editor/container-list-h5/list-h5-editor.vue +8 -7
  81. package/src/components/xform/form-designer/setting-panel/property-editor/container-table/table-dynamicField-editor.vue +344 -0
  82. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +2 -2
  83. package/src/components/xform/form-designer/setting-panel/property-editor/field-area-select/areaDataType-editor.vue +25 -0
  84. package/src/components/xform/form-designer/setting-panel/property-editor/field-area-select/areaMinLevel-editor.vue +50 -0
  85. package/src/components/xform/form-designer/setting-panel/property-editor/field-area-select/areaName-editor.vue +20 -0
  86. package/src/components/xform/form-designer/setting-panel/property-editor/field-autocomplete/autocomplete-vabSearchName-editor.vue +199 -0
  87. package/src/components/xform/form-designer/setting-panel/property-editor/field-baseAttachment/baseAttachment-fileTypes-editor.vue +23 -0
  88. package/src/components/xform/form-designer/setting-panel/property-editor/field-cascader/showAllLevels-editor.vue +21 -0
  89. package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-dateLimit-editor.vue +157 -0
  90. package/src/components/xform/form-designer/setting-panel/property-editor/field-script-input/script-input-editor.vue +55 -0
  91. package/src/components/xform/form-designer/setting-panel/property-editor/field-vabUpload/vabUpload-fileTypes-editor.vue +23 -0
  92. package/src/components/xform/form-designer/setting-panel/property-editor/fileTypesEditorMixin.js +116 -0
  93. package/src/components/xform/form-designer/setting-panel/property-editor/fileTypesSelect.vue +176 -0
  94. package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +3 -3
  95. package/src/components/xform/form-designer/setting-panel/property-editor/utcTransformEnabled-editor.vue +19 -0
  96. package/src/components/xform/form-designer/setting-panel/widgetPropertyDialogMixin.js +186 -0
  97. package/src/components/xform/form-designer/toolbar-panel/indexMixin.js +566 -1
  98. package/src/components/xform/form-designer/widget-panel/indexMixin.js +290 -1
  99. package/src/components/xform/form-render/compareDelList.vue +83 -0
  100. package/src/components/xform/form-render/compareView.vue +76 -0
  101. package/src/components/xform/form-render/container-item/containerItemMixin.js +378 -1
  102. package/src/components/xform/form-render/container-item/data-table-mixin.js +35 -0
  103. package/src/components/xform/form-render/container-item/detail-item.vue +41 -0
  104. package/src/components/xform/form-render/container-item/dynamicFieldEngine.js +285 -0
  105. package/src/components/xform/form-render/container-item/dynamicFieldMixin.js +416 -0
  106. package/src/components/xform/form-render/container-item/list-h5-item.vue +12 -0
  107. package/src/components/xform/form-render/dynamicDialogRender.js +195 -1
  108. package/src/components/xform/form-render/dynamicDrawerRender.js +229 -0
  109. package/src/components/xform/form-render/formDynamicFieldMixin.js +131 -0
  110. package/src/components/xform/form-render/refMixin.js +29 -1
  111. package/src/components/xform/mixins/scriptHttp.js +172 -1
  112. package/src/components/xform/utils/dynamicSchemaUtil.js +361 -0
  113. package/src/components/xform/utils/tableCellValidateUtil.js +148 -0
  114. package/src/components/xform/utils/textMaskUtil.js +179 -0
  115. package/src/components/xform/utils/treeTableUtil.js +1265 -0
  116. package/src/components/xform/utils/util.js +1 -0
  117. package/src/components/xform/utils/validators.js +133 -1
  118. package/src/directive/LimitNumber/index.js +143 -124
  119. package/src/microRouter/index.js +447 -0
  120. package/src/mixins/tableTree/index.js +77 -14
  121. package/src/permission.js +132 -107
  122. package/src/public-path.js +38 -0
  123. package/src/router/index.js +3 -3
  124. package/src/store/modules/micro.js +57 -0
  125. package/src/store/modules/permission.js +535 -371
  126. package/src/store/modules/tagsView.js +38 -21
  127. package/src/store/modules/user.js +409 -370
  128. package/src/utils/aes.js +9 -3
  129. package/src/utils/auth.js +1 -1
  130. package/src/utils/componentDialog.js +162 -40
  131. package/src/utils/global.js +35 -34
  132. package/src/utils/index.js +579 -579
  133. package/src/utils/keepAlive.js +8 -4
  134. package/src/utils/lazyPlugin.js +66 -0
  135. package/src/utils/menuAdapter.js +277 -0
  136. package/src/utils/repeatOpen.js +48 -0
  137. package/src/utils/request.js +417 -395
  138. package/src/utils/resolveViewComponent.js +203 -0
  139. package/src/utils/vab.js +14 -3
  140. package/src/utils/validate.js +104 -106
  141. package/src/views/bd/setting/bd_attach_setting/dialog.vue +1 -1
  142. package/src/views/bd/setting/bd_attach_setting/list.vue +1 -1
  143. package/src/views/bd/setting/bd_company_env/dialog.vue +1 -1
  144. package/src/views/bd/setting/bd_company_env/list.vue +1 -1
  145. package/src/views/bd/setting/formVersion/ftHistoryDialog.vue +488 -489
  146. package/src/views/bd/setting/form_import_log/list.vue +1 -1
  147. package/src/views/bd/setting/form_script/dialog.vue +1 -1
  148. package/src/views/bd/setting/form_script/form_list.vue +174 -166
  149. package/src/views/bd/setting/form_script/list.vue +1 -1
  150. package/src/views/bd/setting/form_script/list1.vue +1 -1
  151. package/src/views/bd/setting/form_script/mixins/form_list.js +330 -322
  152. package/src/views/bd/setting/form_template/dialog.vue +1 -1
  153. package/src/views/bd/setting/form_template/formDesignerDialog.vue +172 -171
  154. package/src/views/bd/setting/form_template/ftHistoryDialog.vue +1 -1
  155. package/src/views/bd/setting/form_template/itemList.vue +1 -1
  156. package/src/views/bd/setting/form_template/list.vue +3 -3
  157. package/src/views/bd/setting/form_template/mixins/edit.js +3 -3
  158. package/src/views/bd/setting/form_template/mixins/list.js +3 -3
  159. package/src/views/bd/setting/form_template/mixins/list2.js +3 -3
  160. package/src/views/bd/setting/form_template/mixins/wf_list.js +3 -3
  161. package/src/views/bd/setting/form_template/wfObjConfigDialog.vue +253 -254
  162. package/src/views/bd/setting/form_template/wf_list.vue +3 -3
  163. package/src/views/bd/setting/logic_param/edit.vue +20 -20
  164. package/src/views/bd/setting/logic_param/list.vue +1 -1
  165. package/src/views/bd/setting/menu_kind/dialog.vue +1 -1
  166. package/src/views/bd/setting/menu_kind/list.vue +1 -1
  167. package/src/views/bd/setting/push_data/list.vue +1 -1
  168. package/src/views/bd/setting/push_data_h/list.vue +1 -1
  169. package/src/views/bd/setting/request_async_setting/list.vue +1 -1
  170. package/src/views/bd/setting/request_setting/list.vue +1 -1
  171. package/src/views/bd/setting/table_model/dialog.vue +1 -1
  172. package/src/views/bd/setting/table_model/list.vue +1 -1
  173. package/src/views/bd/setting/table_model/zdDialog.vue +1 -1
  174. package/src/views/user/access_log/list.vue +1 -1
  175. package/src/views/user/access_log/list2.vue +1 -1
  176. package/src/views/user/api_request/list.vue +1 -1
  177. package/src/views/user/area/dialog.vue +1 -1
  178. package/src/views/user/area/list.vue +1 -1
  179. package/src/views/user/bill_setting/list.vue +1 -1
  180. package/src/views/user/bill_setting/userDialog.vue +1 -1
  181. package/src/views/user/code_rules/list.vue +1 -1
  182. package/src/views/user/commMenu/index.vue +2 -2
  183. package/src/views/user/common_attribute/list.vue +2 -2
  184. package/src/views/user/common_script/list.vue +1 -1
  185. package/src/views/user/company_info/dialog.vue +1 -1
  186. package/src/views/user/country/dialog.vue +1 -1
  187. package/src/views/user/country/list.vue +1 -1
  188. package/src/views/user/data_type_setting/dialog.vue +1 -1
  189. package/src/views/user/extend_datasource/dialog.vue +4 -1
  190. package/src/views/user/extend_datasource/edit.vue +2 -1
  191. package/src/views/user/extend_datasource/list.vue +4 -1
  192. package/src/views/user/fieldTranslation/list.vue +1 -1
  193. package/src/views/user/field_values_invisible/list.vue +1 -1
  194. package/src/views/user/file_type/list.vue +1 -1
  195. package/src/views/user/file_view_area/list.vue +1 -1
  196. package/src/views/user/file_view_ins/list.vue +22 -1
  197. package/src/views/user/form/view/list.vue +64 -1
  198. package/src/views/user/groups/dialog.vue +1 -1
  199. package/src/views/user/groups/list.vue +1 -1
  200. package/src/views/user/home/default.vue +2 -2
  201. package/src/views/user/home/default2.vue +1158 -1148
  202. package/src/views/user/home/index.vue +3 -10
  203. package/src/views/user/lang_tag/dialog.vue +1 -1
  204. package/src/views/user/lang_tag/list.vue +1 -1
  205. package/src/views/user/language_setting/list.vue +1 -1
  206. package/src/views/user/login/default.vue +0 -8
  207. package/src/views/user/login/indexMixin.js +547 -556
  208. package/src/views/user/menu/list.vue +25 -2
  209. package/src/views/user/menuFallback/index.vue +123 -0
  210. package/src/views/user/mobile_menu/list.vue +1 -1
  211. package/src/views/user/notify_message/dialog.vue +22 -1
  212. package/src/views/user/notify_message/list.vue +1 -1
  213. package/src/views/user/notify_template/list.vue +1 -1
  214. package/src/views/user/notify_template/list2.vue +1 -1
  215. package/src/views/user/oplog/list.vue +1 -1
  216. package/src/views/user/outLink/form_view.vue +5 -14
  217. package/src/views/user/outLink/index.vue +6 -1
  218. package/src/views/user/outLink/view.vue +5 -13
  219. package/src/views/user/position/dialog.vue +1 -1
  220. package/src/views/user/position/list.vue +1 -1
  221. package/src/views/user/project_tag/dialog.vue +1 -1
  222. package/src/views/user/project_tag/list.vue +1 -1
  223. package/src/views/user/push_setting/list.vue +1 -1
  224. package/src/views/user/request_setting/list.vue +1 -1
  225. package/src/views/user/role/dialog.vue +1 -1
  226. package/src/views/user/role/list.vue +1 -1
  227. package/src/views/user/sale_org/dialog.vue +1 -1
  228. package/src/views/user/sale_org/list.vue +1 -1
  229. package/src/views/user/system_notice/list.vue +1 -1
  230. package/src/views/user/system_parameter/list.vue +1 -1
  231. package/src/views/user/user/dialog.vue +1 -1
  232. package/src/views/user/user/edit.vue +306 -159
  233. package/src/views/user/user/form_dialog.vue +1 -1
  234. package/src/views/user/user/form_list.vue +1 -1
  235. package/src/views/user/user/list.vue +2 -2
  236. package/src/views/user/user_log_classify/list.vue +1 -1
  237. package/src/views/user/wf/iframe/index.vue +6 -1
  238. package/src/views/user/wf/iframe/index2.vue +6 -1
  239. package/src/views/user/wf/wfReport/index.vue +12 -6
  240. package/src/views/user/wf/wf_auto_submit_data/list.vue +2 -2
  241. package/src/views/user/wf/wf_manage/list.vue +97 -24
  242. package/src/views/user/wf/wf_manage/list2.vue +875 -0
  243. package/src/views/user/wf/wf_manage/wfContentDialog.vue +23 -1
  244. package/src/views/user/wf/wf_obj_config/dialog.vue +1 -1
  245. package/src/views/user/wf/wf_obj_config/list.vue +1 -1
  246. package/src/views/user/wf/wf_obj_config/list_form.vue +1 -1
  247. package/src/views/user/wf/wf_transfer_setting/list.vue +1 -1
  248. package/src/views/user/workbench_menu/list.vue +1 -1
@@ -1,252 +1,252 @@
1
- import userDialog from "../../../views/user/user/dialog.vue";
2
- import wfTaskUserRangeDialog from '../wfTaskUserRangeDialog.vue'
3
-
4
- let moudule = {};
5
- moudule = {
6
- props: ['visiable', 'multi', 'rows', 'param', 'current_prefix',"modelId", "objTypeCode"],
7
- components: {userDialog,wfTaskUserRangeDialog},
8
- created() {
9
-
10
- },
11
- mounted() {
12
- this.initWfParam15();
13
- this.initTableM1();
14
- },
15
- data() {
16
- var that = this;
17
- return {
18
- showDialog: true,
19
- falseValue: false,
20
- selectMulti: true,
21
- vxeOption: {},
22
- showUserDialog: false,
23
- userRows: [],
24
- operateIndex: -1,
25
-
26
- rangeTableDatas: [],
27
- userRangeRows: [],
28
- showWfTaskUserRangeDialog:false,
29
-
30
- tableData: [],
31
- showModifyButton:false,
32
- showPreWfNodesButton:false
33
-
34
- };
35
- },
36
- methods: {
37
- initWfParam15(){
38
- //初始化是否开启获取上一次候选人功能
39
- return this.$http({
40
- url: USER_PREFIX + "/wf_diy_attribute/getValue",
41
- method: `post`,
42
- data: {attributeKey: "param15"},
43
- success: (res) => {
44
- this.showPreWfNodesButton = res?.objx === true;
45
- },
46
- });
47
- },
48
- handleModifyButtonState(){
49
- let result = false;
50
- this.tableData.forEach(item => {
51
- if (item.modifyCandidates && !item.wfTaskCandidateDTOs?.length) {
52
- result = true;
53
- }
54
- })
55
- this.showModifyButton = result
56
- },
57
- openShowWfTaskUserRangeDialog(row,rowIndex,rangeTableDatas){
58
- this.userRangeRows = row.wfTaskCandidateDTOs.map(item => {
59
- return {
60
- userId: item.id,
61
- nickName: item.name
62
- }
63
- });
64
- this.rangeTableDatas = rangeTableDatas;
65
- this.operateIndex = rowIndex;
66
- this.showWfTaskUserRangeDialog = true;
67
- },
68
- confirmWfTaskUserRangeDialog(rows){
69
- let $grid = this.$refs["table-m1"];
70
- let item = $grid.getTableData().fullData[this.operateIndex];
71
- let wfTaskCandidateDTOs = item.wfTaskCandidateDTOs;
72
- let item1s = [];
73
- let item2s = []
74
- rows.forEach(row => {
75
- let userId = row.userId;
76
- let wfTaskCandidateDTO = wfTaskCandidateDTOs.find(item => item.id == userId)
77
- if (wfTaskCandidateDTO) {
78
- if (!wfTaskCandidateDTO.userFlag) wfTaskCandidateDTO.userFlag = 6
79
- item1s.push({...wfTaskCandidateDTO});
80
- } else {
81
- item2s.push({
82
- id: userId,
83
- name: row.nickName,
84
- userFlag: 6
85
- })
86
- }
87
- })
88
- item.wfTaskCandidateDTOs = item1s.concat(item2s)
89
- this.handleModifyButtonState();
90
- },
91
- initTableM1() {
92
- this.tableData = this.$baseLodash.cloneDeep(this.rows || []);
93
- this.handleModifyButtonState();
94
- let that = this;
95
- let tableOption = {
96
- vue: that,
97
- tableRef: 'table-m1',
98
- tableName: 'setCandidateDialog2_dialog-m1',
99
- columns: [
100
- {type: 'checkbox', width: 50, resizable: false, fixed: 'left'},
101
- {title: this.$t2('节点名称', 'components.wf.nodeName'), field: 'nodeName', width: 250, fixed: 'left'},
102
- {
103
- field: 'wfTaskCandidates',
104
- title: this.$t2('候选人', 'components.wf.candidate'),
105
- width: 450,
106
- slots: {
107
- default: 'wfTaskCandidates'
108
- }
109
- },
110
- {
111
- width: 150,
112
- fixed: 'right',
113
- title: '',
114
- sortable: false,
115
- slots: {
116
- default: 'operate'
117
- }
118
- }
119
- ]
120
- };
121
- this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
122
- that.vxeOption = opts;
123
- });
124
- },
125
- getUsernames(row) {
126
- return row.wfTaskCandidateDTOs.map(item => item.name).join(",")
127
- },
128
- checkWfTaskUserRange(row, rowIndex, callback){
129
- //是否使用用户范围
130
- this.$http({
131
- url: this.current_prefix + '/wf_task_user_range/list',
132
- method: `post`,
133
- data: {
134
- modelId: this.modelId,
135
- taskDefinitionKey: row.nodeId
136
- },
137
- isLoading: true,
138
- success: res => {
139
- let rows = res.objx || [];
140
- if(!rows.length){
141
- //不使用用户范围
142
- callback();
143
- }else{
144
- //使用用户范围
145
- this.openShowWfTaskUserRangeDialog(row, rowIndex,rows)
146
- }
147
- }
148
- });
149
- },
150
-
151
- openUserDialig(row, rowIndex) {
152
- //是否使用用户范围
153
- this.checkWfTaskUserRange(row, rowIndex, ()=>{
154
- //不使用用户范围
155
- this.userRows = row.wfTaskCandidateDTOs.map(item => {
156
- return {
157
- id: item.id,
158
- nickName: item.name
159
- }
160
- });
161
- this.operateIndex = rowIndex;
162
- this.showUserDialog = true;
163
- })
164
- },
165
- userConfirm(rows) {
166
- let $grid = this.$refs["table-m1"];
167
- let item = $grid.getTableData().fullData[this.operateIndex];
168
- let wfTaskCandidateDTOs = item.wfTaskCandidateDTOs;
169
- let item1s = [];
170
- let item2s = []
171
- rows.forEach(row => {
172
- let userId = row.id + "";
173
- let wfTaskCandidateDTO = wfTaskCandidateDTOs.find(item => item.id == userId)
174
- if (wfTaskCandidateDTO) {
175
- if (!wfTaskCandidateDTO.userFlag) wfTaskCandidateDTO.userFlag = 6
176
- item1s.push({...wfTaskCandidateDTO});
177
- } else {
178
- item2s.push({
179
- id: userId,
180
- name: row.nickName,
181
- userFlag: 6
182
- })
183
- }
184
- })
185
- item.wfTaskCandidateDTOs = item1s.concat(item2s)
186
- this.handleModifyButtonState();
187
- // this.saveItem(item);
188
- },
189
- saveItem(row) {
190
- this.$http({
191
- url: this.current_prefix + '/wf/setTaskUser',
192
- method: `post`,
193
- data: row,
194
- isLoading: true,
195
- success: res => {
196
- this.$message({
197
- message: res.content,
198
- type: 'success',
199
- duration: 500,
200
- onClose: t => {
201
- this.searchEvent();
202
- }
203
- });
204
- }
205
- });
206
- },
207
- confirmDialog(){
208
- this.$emit("confirm",this.tableData)
209
- this.closeWin()
210
- },
211
- closeWin() {
212
- this.dialogClose();
213
- this.$emit('close')
214
- },
215
- fillCandidates() {
216
- this.$baseConfirm(this.$t1('您确定要获取上次候选人吗?')).then(() => {
217
- this.$http({
218
- url: this.current_prefix + '/wf/getPreWfNodes',
219
- method: `post`,
220
- data: {
221
- objTypeCode: this.objTypeCode,
222
- modelId: this.modelId,
223
- userFlag: 5
224
- },
225
- isLoading: true,
226
- success: res => {
227
- let rows = res.objx || []
228
- if(rows.length){
229
- let dataMap = {};
230
- rows.forEach(row=>{
231
- let items = row.wfTaskCandidateDTOs || [];
232
- items.forEach(item=>{
233
- item.userFlag = 5
234
- })
235
- dataMap[row.nodeId] = row.wfTaskCandidateDTOs || [];
236
- })
237
- this.tableData.forEach(item => {
238
- if (item.modifyCandidates && !item.wfTaskCandidateDTOs?.length) {
239
- item.wfTaskCandidateDTOs = dataMap[item.nodeId] || [];
240
- }
241
- })
242
- this.handleModifyButtonState();
243
- }
244
- }
245
- });
246
-
247
- });
248
-
249
- },
250
- }
251
- };
252
- export default moudule;
1
+ import userDialog from "../../../views/user/user/dialog.vue";
2
+ import wfTaskUserRangeDialog from '../wfTaskUserRangeDialog.vue'
3
+
4
+ let moudule = {};
5
+ moudule = {
6
+ props: ['visiable', 'multi', 'rows', 'param', 'current_prefix',"modelId", "objTypeCode"],
7
+ components: {userDialog,wfTaskUserRangeDialog},
8
+ created() {
9
+
10
+ },
11
+ mounted() {
12
+ this.initWfParam15();
13
+ this.initTableM1();
14
+ },
15
+ data() {
16
+ var that = this;
17
+ return {
18
+ showDialog: true,
19
+ falseValue: false,
20
+ selectMulti: true,
21
+ vxeOption: {},
22
+ showUserDialog: false,
23
+ userRows: [],
24
+ operateIndex: -1,
25
+
26
+ rangeTableDatas: [],
27
+ userRangeRows: [],
28
+ showWfTaskUserRangeDialog:false,
29
+
30
+ tableData: [],
31
+ showModifyButton:false,
32
+ showPreWfNodesButton:false
33
+
34
+ };
35
+ },
36
+ methods: {
37
+ initWfParam15(){
38
+ //初始化是否开启获取上一次候选人功能
39
+ return this.$http({
40
+ url: USER_PREFIX + "/wf_diy_attribute/getValue",
41
+ method: `post`,
42
+ data: {attributeKey: "param15"},
43
+ success: (res) => {
44
+ this.showPreWfNodesButton = res?.objx === true;
45
+ },
46
+ });
47
+ },
48
+ handleModifyButtonState(){
49
+ let result = false;
50
+ this.tableData.forEach(item => {
51
+ if (item.modifyCandidates && !item.wfTaskCandidateDTOs?.length) {
52
+ result = true;
53
+ }
54
+ })
55
+ this.showModifyButton = result
56
+ },
57
+ openShowWfTaskUserRangeDialog(row,rowIndex,rangeTableDatas){
58
+ this.userRangeRows = row.wfTaskCandidateDTOs.map(item => {
59
+ return {
60
+ userId: item.id,
61
+ nickName: item.name
62
+ }
63
+ });
64
+ this.rangeTableDatas = rangeTableDatas;
65
+ this.operateIndex = rowIndex;
66
+ this.showWfTaskUserRangeDialog = true;
67
+ },
68
+ confirmWfTaskUserRangeDialog(rows){
69
+ let $grid = this.$refs["table-m1"];
70
+ let item = $grid.getTableData().fullData[this.operateIndex];
71
+ let wfTaskCandidateDTOs = item.wfTaskCandidateDTOs || [];
72
+ let item1s = [];
73
+ let item2s = []
74
+ rows.forEach(row => {
75
+ let userId = row.userId;
76
+ let wfTaskCandidateDTO = wfTaskCandidateDTOs.find(item => item.id == userId)
77
+ if (wfTaskCandidateDTO) {
78
+ if (!wfTaskCandidateDTO.userFlag) wfTaskCandidateDTO.userFlag = 6
79
+ item1s.push({...wfTaskCandidateDTO});
80
+ } else {
81
+ item2s.push({
82
+ id: userId,
83
+ name: row.nickName,
84
+ userFlag: 6
85
+ })
86
+ }
87
+ })
88
+ item.wfTaskCandidateDTOs = item1s.concat(item2s)
89
+ this.handleModifyButtonState();
90
+ },
91
+ initTableM1() {
92
+ this.tableData = this.$baseLodash.cloneDeep(this.rows || []);
93
+ this.handleModifyButtonState();
94
+ let that = this;
95
+ let tableOption = {
96
+ vue: that,
97
+ tableRef: 'table-m1',
98
+ tableName: 'setCandidateDialog2_dialog-m1',
99
+ columns: [
100
+ {type: 'checkbox', width: 50, resizable: false, fixed: 'left'},
101
+ {title: this.$t2('节点名称', 'components.wf.nodeName'), field: 'nodeName', width: 250, fixed: 'left'},
102
+ {
103
+ field: 'wfTaskCandidates',
104
+ title: this.$t2('候选人', 'components.wf.candidate'),
105
+ width: 450,
106
+ slots: {
107
+ default: 'wfTaskCandidates'
108
+ }
109
+ },
110
+ {
111
+ width: 150,
112
+ fixed: 'right',
113
+ title: '',
114
+ sortable: false,
115
+ slots: {
116
+ default: 'operate'
117
+ }
118
+ }
119
+ ]
120
+ };
121
+ this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
122
+ that.vxeOption = opts;
123
+ });
124
+ },
125
+ getUsernames(row) {
126
+ return row.wfTaskCandidateDTOs.map(item => item.name).join(",")
127
+ },
128
+ checkWfTaskUserRange(row, rowIndex, callback){
129
+ //是否使用用户范围
130
+ this.$http({
131
+ url: this.current_prefix + '/wf_task_user_range/list',
132
+ method: `post`,
133
+ data: {
134
+ modelId: this.modelId,
135
+ taskDefinitionKey: row.nodeId
136
+ },
137
+ isLoading: true,
138
+ success: res => {
139
+ let rows = res.objx || [];
140
+ if(!rows.length){
141
+ //不使用用户范围
142
+ callback();
143
+ }else{
144
+ //使用用户范围
145
+ this.openShowWfTaskUserRangeDialog(row, rowIndex,rows)
146
+ }
147
+ }
148
+ });
149
+ },
150
+
151
+ openUserDialig(row, rowIndex) {
152
+ //是否使用用户范围
153
+ this.checkWfTaskUserRange(row, rowIndex, ()=>{
154
+ //不使用用户范围
155
+ this.userRows = row.wfTaskCandidateDTOs.map(item => {
156
+ return {
157
+ id: item.id,
158
+ nickName: item.name
159
+ }
160
+ });
161
+ this.operateIndex = rowIndex;
162
+ this.showUserDialog = true;
163
+ })
164
+ },
165
+ userConfirm(rows) {
166
+ let $grid = this.$refs["table-m1"];
167
+ let item = $grid.getTableData().fullData[this.operateIndex];
168
+ let wfTaskCandidateDTOs = item.wfTaskCandidateDTOs || [];
169
+ let item1s = [];
170
+ let item2s = []
171
+ rows.forEach(row => {
172
+ let userId = row.id + "";
173
+ let wfTaskCandidateDTO = wfTaskCandidateDTOs.find(item => item.id == userId)
174
+ if (wfTaskCandidateDTO) {
175
+ if (!wfTaskCandidateDTO.userFlag) wfTaskCandidateDTO.userFlag = 6
176
+ item1s.push({...wfTaskCandidateDTO});
177
+ } else {
178
+ item2s.push({
179
+ id: userId,
180
+ name: row.nickName,
181
+ userFlag: 6
182
+ })
183
+ }
184
+ })
185
+ item.wfTaskCandidateDTOs = item1s.concat(item2s)
186
+ this.handleModifyButtonState();
187
+ // this.saveItem(item);
188
+ },
189
+ saveItem(row) {
190
+ this.$http({
191
+ url: this.current_prefix + '/wf/setTaskUser',
192
+ method: `post`,
193
+ data: row,
194
+ isLoading: true,
195
+ success: res => {
196
+ this.$message({
197
+ message: res.content,
198
+ type: 'success',
199
+ duration: 500,
200
+ onClose: t => {
201
+ this.searchEvent();
202
+ }
203
+ });
204
+ }
205
+ });
206
+ },
207
+ confirmDialog(){
208
+ this.$emit("confirm",this.tableData)
209
+ this.closeWin()
210
+ },
211
+ closeWin() {
212
+ this.dialogClose();
213
+ this.$emit('close')
214
+ },
215
+ fillCandidates() {
216
+ this.$baseConfirm(this.$t1('您确定要获取上次候选人吗?')).then(() => {
217
+ this.$http({
218
+ url: this.current_prefix + '/wf/getPreWfNodes',
219
+ method: `post`,
220
+ data: {
221
+ objTypeCode: this.objTypeCode,
222
+ modelId: this.modelId,
223
+ userFlag: 5
224
+ },
225
+ isLoading: true,
226
+ success: res => {
227
+ let rows = res.objx || []
228
+ if(rows.length){
229
+ let dataMap = {};
230
+ rows.forEach(row=>{
231
+ let items = row.wfTaskCandidateDTOs || [];
232
+ items.forEach(item=>{
233
+ item.userFlag = 5
234
+ })
235
+ dataMap[row.nodeId] = row.wfTaskCandidateDTOs || [];
236
+ })
237
+ this.tableData.forEach(item => {
238
+ if (item.modifyCandidates && !item.wfTaskCandidateDTOs?.length) {
239
+ item.wfTaskCandidateDTOs = dataMap[item.nodeId] || [];
240
+ }
241
+ })
242
+ this.handleModifyButtonState();
243
+ }
244
+ }
245
+ });
246
+
247
+ });
248
+
249
+ },
250
+ }
251
+ };
252
+ export default moudule;