cloud-web-corejs-haier 1.0.42 → 1.0.44

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 (227) hide show
  1. package/package.json +9 -7
  2. package/src/api/user.js +54 -46
  3. package/src/components/baseAlert/index.vue +57 -53
  4. package/src/components/baseInputExport/index.vue +3 -3
  5. package/src/components/baseTabs/mixins.js +12 -1
  6. package/src/components/errorMsg/index.vue +78 -78
  7. package/src/components/excelExport/button.vue +54 -45
  8. package/src/components/excelExport/exportFieldDialog.vue +3 -3
  9. package/src/components/excelExport/index.js +1 -43
  10. package/src/components/excelExport/index.vue +62 -34
  11. package/src/components/excelExport/mixins.js +74 -87
  12. package/src/components/excelImport/index.js +1 -62
  13. package/src/components/excelImport/mixins.js +1 -774
  14. package/src/components/fileLibrary/index.vue +113 -33
  15. package/src/components/fileLibrary/propertiesDialog.vue +6 -0
  16. package/src/components/hiprint/view/design/index.vue +139 -47
  17. package/src/components/hiprint/view/design/preview.vue +75 -52
  18. package/src/components/hiprint/view/json-view.vue +31 -31
  19. package/src/components/luckysheet/dialog.vue +159 -0
  20. package/src/components/luckysheet/export.js +595 -0
  21. package/src/components/luckysheet/fileUtils.js +147 -0
  22. package/src/components/luckysheet/index.js +69 -0
  23. package/src/components/luckysheet/templateJson.js +12078 -0
  24. package/src/components/luckysheet/view.vue +210 -0
  25. package/src/components/onlineTalk/index.vue +328 -6
  26. package/src/components/onlineTalk/talkUserDialog.vue +280 -0
  27. package/src/components/wf/addTaskUserdialog.vue +5 -5
  28. package/src/components/wf/content.vue +1244 -1169
  29. package/src/components/wf/mixins/setCandidateDialog.js +228 -2
  30. package/src/components/wf/mixins/setCandidateDialog2.js +115 -100
  31. package/src/components/wf/mixins/wfTaskUserRangeDialog.js +67 -1
  32. package/src/components/wf/setCandidateDialog.vue +5 -7
  33. package/src/components/wf/setCandidateDialog2.vue +14 -10
  34. package/src/components/wf/wf.js +527 -411
  35. package/src/components/wf/wfTaskUserRangeDialog.vue +1 -1
  36. package/src/components/wf/wfUtil.js +129 -91
  37. package/src/components/xform/form-designer/designer.js +1994 -9
  38. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +10 -0
  39. package/src/components/xform/form-designer/form-widget/container-widget/detail-pane-widget.vue +3 -2
  40. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +5 -1
  41. package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin - /345/211/257/346/234/254.js" +1639 -0
  42. package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin.js +1756 -2
  43. package/src/components/xform/form-designer/form-widget/field-widget/baseAttachment-widget.vue +1 -0
  44. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-item-widget.vue +10 -1
  45. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-widget.vue +170 -0
  46. package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +1630 -1
  47. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +153 -40
  48. package/src/components/xform/form-designer/form-widget/field-widget/status-widget.vue +65 -46
  49. package/src/components/xform/form-designer/form-widget/field-widget/vue-page-widget.vue +231 -0
  50. package/src/components/xform/form-designer/setting-panel/form-setting.vue +7 -4
  51. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/edit-tree-button-group-config-dialog.vue +281 -0
  52. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +659 -221
  53. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-editor.vue +3 -3
  54. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +133 -0
  55. package/src/components/xform/form-designer/setting-panel/property-editor/event-handler/onClick-editor.vue +14 -6
  56. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import-button-editor.vue +1 -1
  57. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +1 -1
  58. package/src/components/xform/form-designer/setting-panel/property-editor/field-vue-page/vue-page-editor.vue +48 -0
  59. package/src/components/xform/form-designer/setting-panel/property-editor/labelIconClass-editor.vue +18 -17
  60. package/src/components/xform/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue +26 -26
  61. package/src/components/xform/form-designer/setting-panel/property-editor/labelTooltip-editor.vue +67 -13
  62. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +2 -0
  63. package/src/components/xform/form-designer/setting-panel/property-editor/showViewButton-editor.vue +29 -0
  64. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +8 -6
  65. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +1 -0
  66. package/src/components/xform/form-render/container-item/data-table-mixin.js +20 -17
  67. package/src/components/xform/form-render/container-item/detail-item.vue +72 -48
  68. package/src/components/xform/form-render/container-item/sub-form-item.vue +10 -2
  69. package/src/components/xform/form-render/container-item/table2-item.vue +40 -10
  70. package/src/components/xform/form-render/indexMixin.js +3705 -1
  71. package/src/components/xform/icon-picker/icons.json +284 -0
  72. package/src/components/xform/icon-picker/index.vue +145 -0
  73. package/src/components/xform/lang/zh-CN.js +2 -1
  74. package/src/components/xform/mixins/defaultHandle.js +366 -2
  75. package/src/components/xform/utils/formula-util.js +3 -0
  76. package/src/components/xform/utils/sfc-generator.js +2 -2
  77. package/src/components/xform/utils/smart-vue-i18n/index.js +2 -1
  78. package/src/components/xform/utils/tableColumnHelper.js +54 -10
  79. package/src/components/xform/utils/util.js +1547 -1
  80. package/src/index.js +190 -211
  81. package/src/lang/locale/en/login.js +26 -19
  82. package/src/lang/locale/zh/login.js +25 -19
  83. package/src/layout/components/Sidebar/default.vue +252 -71
  84. package/src/layout/components/Sidebar/index.vue +6 -1
  85. package/src/layout/components/TagsView/index.vue +6 -0
  86. package/src/layout/components/langTool.vue +32 -29
  87. package/src/layout/defaultLayout.vue +16 -8
  88. package/src/layout/index.vue +5 -3
  89. package/src/permission.js +135 -1
  90. package/src/router/index.js +1 -4
  91. package/src/store/config/index.js +667 -1
  92. package/src/store/getters.js +2 -1
  93. package/src/store/modules/permission.js +332 -1
  94. package/src/store/modules/settings.js +26 -1
  95. package/src/store/modules/tagsView.js +190 -1
  96. package/src/store/modules/user.js +358 -1
  97. package/src/utils/aes.js +15 -1
  98. package/src/utils/auth.js +27 -1
  99. package/src/utils/componentDialog.js +217 -0
  100. package/src/utils/request.js +368 -1
  101. package/src/utils/vab.js +1256 -7
  102. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
  103. package/src/views/bd/setting/bd_company_env/edit.vue +193 -193
  104. package/src/views/bd/setting/formVersion/button.vue +55 -0
  105. package/src/views/bd/setting/formVersion/compareBasicSection.vue +125 -0
  106. package/src/views/bd/setting/formVersion/compareCodeSection.vue +539 -0
  107. package/src/views/bd/setting/formVersion/compareContMixin.scss +65 -0
  108. package/src/views/bd/setting/formVersion/compareContent.vue +63 -0
  109. package/src/views/bd/setting/formVersion/compareDialog.vue +88 -0
  110. package/src/views/bd/setting/formVersion/compareMixin.js +93 -0
  111. package/src/views/bd/setting/formVersion/fieldCompare.vue +54 -0
  112. package/src/views/bd/setting/formVersion/formScriptCompareView.vue +94 -0
  113. package/src/views/bd/setting/formVersion/formTemplateCompareView.vue +74 -0
  114. package/src/views/bd/setting/formVersion/ftHistoryDialog.vue +491 -0
  115. package/src/views/bd/setting/formVersion/link.vue +58 -0
  116. package/src/views/bd/setting/formVersion/preformDialog.vue +87 -0
  117. package/src/views/bd/setting/formVersion/reverButton.vue +82 -0
  118. package/src/views/bd/setting/formVersion/tableDetailDiff.js +99 -0
  119. package/src/views/bd/setting/formVersion/tableModelCompareView.vue +514 -0
  120. package/src/views/bd/setting/formVersion/textDiff.js +102 -0
  121. package/src/views/bd/setting/form_import_log/edit.vue +6 -3
  122. package/src/views/bd/setting/form_import_log/list.vue +5 -0
  123. package/src/views/bd/setting/form_script/edit.vue +196 -83
  124. package/src/views/bd/setting/form_script/edit1.vue +410 -220
  125. package/src/views/bd/setting/form_script/form_list.vue +19 -0
  126. package/src/views/bd/setting/form_script/list.vue +95 -21
  127. package/src/views/bd/setting/form_script/list1.vue +24 -0
  128. package/src/views/bd/setting/form_script/mixins/dialog.js +2 -2
  129. package/src/views/bd/setting/form_script/mixins/edit.js +265 -207
  130. package/src/views/bd/setting/form_script/mixins/edit1.js +259 -201
  131. package/src/views/bd/setting/form_script/mixins/form_list.js +322 -296
  132. package/src/views/bd/setting/form_script/mixins/list.js +163 -95
  133. package/src/views/bd/setting/form_script/mixins/list1.js +244 -155
  134. package/src/views/bd/setting/form_script/mixins/otherAuthDialog.js +1 -1
  135. package/src/views/bd/setting/form_template/batchWfObjConfigDialog.vue +1 -1
  136. package/src/views/bd/setting/form_template/edit.vue +355 -205
  137. package/src/views/bd/setting/form_template/formDesignerDialog.vue +171 -0
  138. package/src/views/bd/setting/form_template/list.vue +49 -74
  139. package/src/views/bd/setting/form_template/mixins/batchWfObjConfigDialog.js +3 -3
  140. package/src/views/bd/setting/form_template/mixins/edit.js +51 -8
  141. package/src/views/bd/setting/form_template/mixins/itemList.js +1 -1
  142. package/src/views/bd/setting/form_template/mixins/list.js +114 -82
  143. package/src/views/bd/setting/form_template/mixins/list2.js +3 -3
  144. package/src/views/bd/setting/form_template/mixins/otherAuthDialog.js +1 -1
  145. package/src/views/bd/setting/form_template/mixins/wf_list.js +3 -7
  146. package/src/views/bd/setting/form_template/wfObjConfigDialog.vue +254 -254
  147. package/src/views/bd/setting/form_template/wf_list.vue +161 -127
  148. package/src/views/bd/setting/request_async_setting/edit.vue +320 -320
  149. package/src/views/bd/setting/request_setting/edit.vue +300 -300
  150. package/src/views/bd/setting/request_setting/list.vue +15 -25
  151. package/src/views/bd/setting/table_model/edit.vue +702 -498
  152. package/src/views/bd/setting/table_model/list.vue +28 -0
  153. package/src/views/bd/setting/table_model/mixins/dialog.js +1 -1
  154. package/src/views/bd/setting/table_model/mixins/edit copy.js +903 -0
  155. package/src/views/bd/setting/table_model/mixins/edit.js +228 -121
  156. package/src/views/bd/setting/table_model/mixins/list.js +55 -20
  157. package/src/views/bd/setting/table_model/mixins/otherAuthDialog.js +1 -1
  158. package/src/views/bd/setting/table_model/mixins/zdDialog.js +50 -46
  159. package/src/views/bd/setting/utils/index.js +15 -0
  160. package/src/views/user/api_request/list.vue +203 -203
  161. package/src/views/user/bill_setting/list.vue +345 -345
  162. package/src/views/user/code_rules/list.vue +204 -204
  163. package/src/views/user/common_attribute/list.vue +378 -378
  164. package/src/views/user/common_script/list.vue +341 -341
  165. package/src/views/user/company_info/dialog.vue +80 -49
  166. package/src/views/user/country/list.vue +197 -197
  167. package/src/views/user/extend_datasource/dialog.vue +0 -3
  168. package/src/views/user/extend_datasource/edit.vue +1 -2
  169. package/src/views/user/extend_datasource/list.vue +221 -224
  170. package/src/views/user/fieldTranslation/editDialog.vue +1 -1
  171. package/src/views/user/fieldTranslation/list.vue +473 -473
  172. package/src/views/user/field_values_invisible/list.vue +207 -207
  173. package/src/views/user/file_type/list.vue +271 -271
  174. package/src/views/user/file_view_area/list.vue +331 -331
  175. package/src/views/user/form/vform/designer.vue +303 -287
  176. package/src/views/user/form/vform/formFieldMapping.js +2 -3
  177. package/src/views/user/form/view/edit.vue +19 -1
  178. package/src/views/user/form/view/list.vue +59 -17
  179. package/src/views/user/groups/list.vue +158 -158
  180. package/src/views/user/home/default.vue +274 -182
  181. package/src/views/user/home/default2.vue +1148 -0
  182. package/src/views/user/home/index.vue +2 -1
  183. package/src/views/user/lang_tag/list.vue +170 -170
  184. package/src/views/user/language_setting/list.vue +208 -208
  185. package/src/views/user/ledger_library/list.vue +12 -10
  186. package/src/views/user/login/default.vue +1 -1
  187. package/src/views/user/login/indexMixin.js +204 -169
  188. package/src/views/user/menu/list.vue +575 -575
  189. package/src/views/user/notify_message/dialog.vue +7 -1
  190. package/src/views/user/notify_template/list.vue +192 -192
  191. package/src/views/user/notify_template/list2.vue +190 -190
  192. package/src/views/user/position/list.vue +188 -188
  193. package/src/views/user/project_tag/list.vue +175 -175
  194. package/src/views/user/push_setting/list.vue +236 -236
  195. package/src/views/user/request_setting/list.vue +248 -248
  196. package/src/views/user/role/list.vue +182 -182
  197. package/src/views/user/system_notice/infoDialog.vue +61 -2
  198. package/src/views/user/system_notice/list.vue +203 -203
  199. package/src/views/user/system_parameter/list.vue +141 -141
  200. package/src/views/user/user/edit.vue +45 -0
  201. package/src/views/user/user/form_list.vue +245 -245
  202. package/src/views/user/user/info.vue +253 -140
  203. package/src/views/user/user_log_classify/list.vue +197 -197
  204. package/src/views/user/wf/iframe/index.vue +46 -46
  205. package/src/views/user/wf/wfReport/index.vue +1 -1
  206. package/src/views/user/wf/wf_auto_submit_data/list.vue +659 -659
  207. package/src/views/user/wf/wf_diy_attribute/edit.vue +1 -1
  208. package/src/views/user/wf/wf_manage/list.vue +795 -795
  209. package/src/views/user/wf/wf_manage/wfContentDialog.vue +106 -106
  210. package/src/views/user/wf/wf_obj_config/dialog.vue +2 -2
  211. package/src/views/user/wf/wf_obj_config/edit.vue +1 -1
  212. package/src/views/user/wf/wf_obj_config/edit_form.vue +2 -2
  213. package/src/views/user/wf/wf_obj_config/itemEdit.vue +1 -1
  214. package/src/views/user/wf/wf_obj_config/itemEdit_form.vue +1 -1
  215. package/src/views/user/wf/wf_obj_config/itemOperateDialog.vue +4 -4
  216. package/src/views/user/wf/wf_obj_config/list.vue +28 -28
  217. package/src/views/user/wf/wf_obj_config/list_form.vue +5 -5
  218. package/src/views/user/wf/wf_obj_config/wfBizDataSettingDialog.vue +292 -292
  219. package/src/views/user/wf/wf_param/edit.vue +1 -1
  220. package/src/views/user/wf/wf_transfer_setting/edit.vue +1 -1
  221. package/src/views/user/wf/wf_transfer_setting/list.vue +321 -319
  222. package/src/views/user/wf/wf_work_calendar/components/calendar.vue +369 -367
  223. package/src/views/user/wf/wf_work_calendar/components/calendar2.vue +401 -399
  224. package/src/views/user/wf/wf_work_calendar/configDialog.vue +6 -6
  225. package/src/views/user/wf/wf_work_calendar/date.js +84 -83
  226. package/src/views/user/wf/wf_work_calendar/list.vue +6 -6
  227. package/src/views/user/workbench_menu/list.vue +555 -0
@@ -1,7 +1,7 @@
1
1
  /**version-1.0*/
2
- import {getToken} from "../../utils/auth";
2
+ import { getToken } from "../../utils/auth";
3
3
  import settingConfig from "@/settings.js";
4
- import {selectDialogMixins} from "../../mixins/selectDialog";
4
+ import { selectDialogMixins } from "../../mixins/selectDialog";
5
5
 
6
6
  let configUtil = {
7
7
  baseUrl: process.env.VUE_APP_BASE_API,
@@ -32,12 +32,13 @@ function getTarget(t, flag) {
32
32
  }
33
33
 
34
34
  function oaPublishEvent(that) {
35
- let _closeWindowOnCheck = that.$attrs._closeWindowOnCheck || that._closeWindowOnCheck;
35
+ let _closeWindowOnCheck =
36
+ that.$attrs._closeWindowOnCheck || that._closeWindowOnCheck;
36
37
  if (_closeWindowOnCheck === true || _closeWindowOnCheck === "true") {
37
38
  let win = window.opener;
38
39
  if (win && domain && domain.call) {
39
- var event = {type: "topic", name: "successReloadPage"};
40
- domain.call(win, 'fireEvent', [event]);
40
+ var event = { type: "topic", name: "successReloadPage" };
41
+ domain.call(win, "fireEvent", [event]);
41
42
  }
42
43
  }
43
44
  }
@@ -68,8 +69,7 @@ wfIndexMixin = {
68
69
  return this.serviceId ? "/" + this.serviceId : "";
69
70
  },
70
71
  },
71
- created() {
72
- },
72
+ created() {},
73
73
  watch: {
74
74
  wfCode(val) {
75
75
  this.getWfInfo();
@@ -229,15 +229,18 @@ wfContentMixin = {
229
229
  isHideWf() {
230
230
  let that = this.viewTarget;
231
231
  let _hideWf = that._hideWf || that.$attrs._hideWf;
232
- return _hideWf === true || _hideWf === 'true';
233
- }
232
+ return _hideWf === true || _hideWf === "true";
233
+ },
234
234
  },
235
235
  data() {
236
236
  let showWfFold =
237
237
  settingConfig.showWfFold != null && settingConfig.showWfFold != undefined
238
238
  ? settingConfig.showWfFold
239
239
  : false;
240
- if (this.wfConfig.showWfFold != null && this.wfConfig.showWfFold != undefined) {
240
+ if (
241
+ this.wfConfig.showWfFold != null &&
242
+ this.wfConfig.showWfFold != undefined
243
+ ) {
241
244
  showWfFold = this.wfConfig.showWfFold;
242
245
  }
243
246
  let showWfContent =
@@ -281,56 +284,55 @@ wfContentMixin = {
281
284
  formLabelWidth: "120px",
282
285
  agreeDialogVisible: false,
283
286
  agreeForm: {
284
- opinion: this.$t2('同意', 'components.wf.defaultAgreeOption'),
287
+ opinion: this.$t2("同意", "components.wf.defaultAgreeOption"),
285
288
  nodeId: null,
286
289
  },
287
290
  changeWfDialogVisible: false,
288
291
  changeWfForm: {},
289
292
  changeUserRows: [],
290
- statusTypeMap:{
291
- 'START': '',//开始
292
- 'END': '',//结束
293
- 'TRANSFER': 'blue',//转办
294
- 'DEPUTE': '',//委派
295
- 'ADD_SIGNATURE': '',//加签
296
- 'REDUCTION_SIGNATURE': '',//减签
297
- 'PASS': 'green',//通过
298
- 'REJECT': 'red',//驳回
299
- 'TOBESUBMIT': 'orgn',//待审批
300
-
293
+ statusTypeMap: {
294
+ START: "", //开始
295
+ END: "", //结束
296
+ TRANSFER: "blue", //转办
297
+ DEPUTE: "", //委派
298
+ ADD_SIGNATURE: "", //加签
299
+ REDUCTION_SIGNATURE: "", //减签
300
+ PASS: "green", //通过
301
+ REJECT: "red", //驳回
302
+ TOBESUBMIT: "orgn", //待审批
301
303
  },
302
304
  taskStatuses: {
303
305
  start: {
304
306
  class: "blue",
305
- value: this.$t2('开始', 'components.wf.startStatus'),
307
+ value: this.$t2("开始", "components.wf.startStatus"),
306
308
  },
307
309
  approve: {
308
310
  class: "orgn",
309
- value: this.$t2('待审批', 'components.wf.approveStatus'),
311
+ value: this.$t2("待审批", "components.wf.approveStatus"),
310
312
  },
311
313
  submit: {
312
314
  class: "green",
313
- value: this.$t2('同意', 'components.wf.submitStatus'),
315
+ value: this.$t2("同意", "components.wf.submitStatus"),
314
316
  },
315
317
  reject: {
316
318
  class: "red",
317
- value: this.$t2('驳回', 'components.wf.rejectStatus'),
319
+ value: this.$t2("驳回", "components.wf.rejectStatus"),
318
320
  },
319
321
  transfer: {
320
322
  class: "green",
321
- value: this.$t2('转办', 'components.wf.transferStatus'),
323
+ value: this.$t2("转办", "components.wf.transferStatus"),
322
324
  },
323
325
  addIncreaseSign: {
324
326
  class: "green",
325
- value: this.$t2('加签', 'components.wf.addIncreaseSignStatus'),
327
+ value: this.$t2("加签", "components.wf.addIncreaseSignStatus"),
326
328
  },
327
329
  revoke: {
328
330
  class: "red",
329
- value: this.$t2('撤回', 'components.wf.revokeStatus'),
331
+ value: this.$t2("撤回", "components.wf.revokeStatus"),
330
332
  },
331
333
  end: {
332
334
  class: "gray",
333
- value: this.$t2('结束', 'components.wf.endStatus'),
335
+ value: this.$t2("结束", "components.wf.endStatus"),
334
336
  },
335
337
  },
336
338
  opinion: "",
@@ -347,16 +349,16 @@ wfContentMixin = {
347
349
  showDeleteTaskUserDialog: false,
348
350
  showAddTaskUserDialog: false,
349
351
  wfUserParam: {},
350
- wfUserParamForTransfer: {},//转办
351
- wfUserParamForAddSign: {},//加签
352
- wfUserParamForTalk: {},//沟通
352
+ wfUserParamForTransfer: {}, //转办
353
+ wfUserParamForAddSign: {}, //加签
354
+ wfUserParamForTalk: {}, //沟通
353
355
  tabIndex: "1",
354
356
  linkupOption: {},
355
357
  talkForm: {
356
358
  receiverName: null,
357
359
  content: null,
358
360
  attachmentDTOs: [],
359
- replyId: null
361
+ replyId: null,
360
362
  },
361
363
  showTalkUserDialog: false,
362
364
  showTalkDialog: false,
@@ -365,7 +367,7 @@ wfContentMixin = {
365
367
  addIncreaseSignUsers: [],
366
368
  addIncreaseSignForm: {
367
369
  userNickNames: null,
368
- opinion: null
370
+ opinion: null,
369
371
  },
370
372
  showAddIncreaseSignDialog: false,
371
373
  showOpeaImg: true,
@@ -374,23 +376,23 @@ wfContentMixin = {
374
376
  showAllWfOpinon: false,
375
377
 
376
378
  revokeDialogVisible: false,
377
- revokeForm: {opinion: null},
379
+ revokeForm: { opinion: null },
378
380
  showWfInfoTab: false,
379
381
 
380
- showWfMemo:false,
382
+ showWfMemo: false,
381
383
  wfMemoOption: {},
382
384
  wfMemoForm: {
383
385
  receiverName: null,
384
386
  content: null,
385
387
  attachmentDTOs: [],
386
- replyId: null
388
+ replyId: null,
387
389
  },
388
390
  showWfMemoDialog: false,
389
- wfMemoData:[],
391
+ wfMemoData: [],
390
392
 
391
393
  showCandidate: false,
392
- candidateOption:{},
393
- candidateDatas:[],
394
+ candidateOption: {},
395
+ candidateDatas: [],
394
396
  wfSendTaskId: null,
395
397
  showAddOpinionButton: false,
396
398
 
@@ -398,7 +400,7 @@ wfContentMixin = {
398
400
  modifyCurrentCandidateEnabled: false,
399
401
 
400
402
  //修改脚本
401
- showWfFlowEleScriptDialog: false
403
+ showWfFlowEleScriptDialog: false,
402
404
  };
403
405
  },
404
406
  provide() {
@@ -406,7 +408,7 @@ wfContentMixin = {
406
408
  getParentVue: () => this.parentVue,
407
409
  getWfInfo: () => this.wfInfo,
408
410
  getCurrentPrefix: () => this.current_prefix,
409
- getEditVueTarget: ()=> getTarget(this)
411
+ getEditVueTarget: () => getTarget(this),
410
412
  };
411
413
  },
412
414
  created() {
@@ -419,72 +421,72 @@ wfContentMixin = {
419
421
  this.initForAll();
420
422
  },
421
423
  methods: {
422
- openWfFlowEleScriptDialog(){
423
- this.showWfFlowEleScriptDialog = true
424
+ openWfFlowEleScriptDialog() {
425
+ this.showWfFlowEleScriptDialog = true;
424
426
  },
425
- initWfParam13(){
427
+ initWfParam13() {
426
428
  //初始化补充意见权限
427
429
  let that = getTarget(this);
428
430
  return that.$http({
429
431
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
430
432
  method: `post`,
431
- data: {attributeKey: "param13"},
433
+ data: { attributeKey: "param13" },
432
434
  success: (res) => {
433
435
  this.addOpinionEnabled = res?.objx === true;
434
- if(this.addOpinionEnabled){
435
- this.wfSendTaskId = this.getViewParam('wfSendTaskId');
436
+ if (this.addOpinionEnabled) {
437
+ this.wfSendTaskId = this.getViewParam("wfSendTaskId");
436
438
  this.showAddOpinionButton = !!this.wfSendTaskId;
437
439
  }
438
440
  },
439
441
  });
440
442
  },
441
443
 
442
- initWfParam14(){
444
+ initWfParam14() {
443
445
  //初始化修改当前候选人权限
444
446
  let that = getTarget(this);
445
447
  return that.$http({
446
448
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
447
449
  method: `post`,
448
- data: {attributeKey: "param14"},
450
+ data: { attributeKey: "param14" },
449
451
  success: (res) => {
450
452
  this.modifyCurrentCandidateEnabled = res?.objx === true;
451
453
  },
452
454
  });
453
455
  },
454
- getViewParam(key){
456
+ getViewParam(key) {
455
457
  let that = this.viewTarget;
456
458
  let value = that[key] || that.$attrs[key];
457
459
  return value;
458
460
  },
459
- initCandidate(){
461
+ initCandidate() {
460
462
  // 是否显示"节点候选人"选项卡
461
463
  let that = getTarget(this);
462
464
  that.$http({
463
465
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
464
466
  method: `post`,
465
- data: {attributeKey: "param11"},
467
+ data: { attributeKey: "param11" },
466
468
  isLoading: true,
467
469
  success: (res) => {
468
470
  this.showCandidate = res?.objx === true;
469
- if(this.showCandidate){
470
- this.$nextTick(()=>{
471
+ if (this.showCandidate) {
472
+ this.$nextTick(() => {
471
473
  this.initCandidateTable();
472
- })
474
+ });
473
475
  }
474
476
  },
475
477
  });
476
478
  },
477
- initCandidateTable(){
479
+ initCandidateTable() {
478
480
  let that = this;
479
481
  let tableOption = {
480
482
  vue: that,
481
- tableRef: 'table-candidate',
482
- tableName: 'wf_candidate-list',
483
- path: this.current_prefix + '/wf/getAllNodes',
483
+ tableRef: "table-candidate",
484
+ tableName: "wf_candidate-list",
485
+ path: this.current_prefix + "/wf/getAllNodes",
484
486
  param: () => {
485
487
  return {
486
- stringOne: this.wfInfo.uuid
487
- }
488
+ stringOne: this.wfInfo.uuid,
489
+ };
488
490
  },
489
491
  config: {
490
492
  height: 350,
@@ -494,32 +496,39 @@ wfContentMixin = {
494
496
  total: "objx.length", // 配置响应结果总页数字段
495
497
  },
496
498
  },
497
- pagerConfig:{
498
- autoHidden: true
499
- }
499
+ pagerConfig: {
500
+ autoHidden: true,
501
+ },
500
502
  },
501
503
  columns: [
502
- {type: 'checkbox', width: 50, resizable: false, fixed: 'left'},
503
- {title: this.$t2('节点名称', 'components.wf.nodeName'), field: 'nodeName', width: 250, fixed: 'left'},
504
+ { type: "checkbox", width: 50, resizable: false, fixed: "left" },
504
505
  {
505
- field: 'wfTaskCandidates',
506
- title: this.$t2('候选人', 'components.wf.candidate'),
506
+ title: this.$t2("节点名称", "components.wf.nodeName"),
507
+ field: "nodeName",
508
+ width: 250,
509
+ fixed: "left",
510
+ },
511
+ {
512
+ field: "wfTaskCandidates",
513
+ title: this.$t2("候选人", "components.wf.candidate"),
507
514
  width: 450,
508
515
  slots: {
509
- default: ({row, rowIndex}) => {
510
- return row.wfTaskCandidateDTOs ? row.wfTaskCandidateDTOs.map(item => item.name).join(",") : null;
516
+ default: ({ row, rowIndex }) => {
517
+ return row.wfTaskCandidateDTOs
518
+ ? row.wfTaskCandidateDTOs.map((item) => item.name).join(",")
519
+ : null;
511
520
  },
512
521
  },
513
522
  },
514
523
  {
515
524
  width: 47,
516
- fixed: 'right',
517
- title: '',
525
+ fixed: "right",
526
+ title: "",
518
527
  sortable: false,
519
- }
520
- ]
528
+ },
529
+ ],
521
530
  };
522
- this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
531
+ this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
523
532
  that.candidateOption = opts;
524
533
  });
525
534
  },
@@ -527,15 +536,15 @@ wfContentMixin = {
527
536
  if (this.operateType) {
528
537
  let wfInfo = this.wfInfo;
529
538
  if (wfInfo.toSubmit) {
530
- this.openAgreeDialog('submit');
539
+ this.openAgreeDialog("submit");
531
540
  } else if (wfInfo.toReject) {
532
- this.rejectWfTask('reject');
541
+ this.rejectWfTask("reject");
533
542
  } else if (wfInfo.toAddIncreaseSign) {
534
- this.openAddIncreaseSign('addIncreaseSign')
543
+ this.openAddIncreaseSign("addIncreaseSign");
535
544
  } else if (wfInfo.toRevoke) {
536
- this.openRevokeDialog('revoke')
545
+ this.openRevokeDialog("revoke");
537
546
  } else if (wfInfo.toLinkup) {
538
- this.openTalkDialog(null, null, 'talk');
547
+ this.openTalkDialog(null, null, "talk");
539
548
  } else {
540
549
  this.operateType = null;
541
550
  }
@@ -549,7 +558,7 @@ wfContentMixin = {
549
558
  this.initWftask(this.wfInfo.instanceId);
550
559
  this.getAllWfTaskOpinions();
551
560
  });
552
- this.showWfInfoTab = true
561
+ this.showWfInfoTab = true;
553
562
  // this.initWfUserParam();
554
563
  // this.initTabIndex();
555
564
  // this.initShowTaskInfo();
@@ -563,7 +572,6 @@ wfContentMixin = {
563
572
 
564
573
  //初始化修改当前候选人权限
565
574
  // this.initWfParam14();
566
-
567
575
  }
568
576
  });
569
577
  },
@@ -572,14 +580,16 @@ wfContentMixin = {
572
580
  that.$http({
573
581
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
574
582
  method: `post`,
575
- data: {attributeKey: "param7"},
583
+ data: { attributeKey: "param7" },
576
584
  isLoading: true,
577
585
  success: (res) => {
578
586
  let val = res !== null ? res.objx === true : false;
579
587
  this.toTalk = val;
580
588
  let flag = false;
581
589
  if (val) {
582
- let flag1 = that.$attrs._isNotifyMessage == true || that.$attrs._isNotifyMessage == "true";
590
+ let flag1 =
591
+ that.$attrs._isNotifyMessage == true ||
592
+ that.$attrs._isNotifyMessage == "true";
583
593
  if (flag1) {
584
594
  this.tabIndex = "2";
585
595
  }
@@ -598,18 +608,26 @@ wfContentMixin = {
598
608
  }
599
609
  }
600
610
  this.initLinkup(flag);
601
- }
611
+ },
602
612
  });
603
-
604
613
  },
605
614
  initWf(done) {
606
615
  var data = this.wfInfo;
607
616
  if (data && data.instanceId) {
608
617
  /** 流程状态:0未启动,1审核中,2已完成,3驳回,4中断 */
609
618
  var statuses = {
610
- 1: '<span class="tag">' + this.$t2('审核中', 'components.wf.wfStatus1') + '</span>',
611
- 3: '<span class="tag red">' + this.$t2('已驳回', 'components.wf.wfStatus2') + '</span>',
612
- 2: '<span class="tag green">' + this.$t2('已完成', 'components.wf.wfStatus3') + '</span>',
619
+ 1:
620
+ '<span class="tag">' +
621
+ this.$t2("审核中", "components.wf.wfStatus1") +
622
+ "</span>",
623
+ 3:
624
+ '<span class="tag red">' +
625
+ this.$t2("已驳回", "components.wf.wfStatus2") +
626
+ "</span>",
627
+ 2:
628
+ '<span class="tag green">' +
629
+ this.$t2("已完成", "components.wf.wfStatus3") +
630
+ "</span>",
613
631
  };
614
632
  var statusStr = "";
615
633
  if (data.stat != null) {
@@ -637,11 +655,13 @@ wfContentMixin = {
637
655
  let token = getToken();
638
656
  let Authorization = `Bearer ${token}`;
639
657
  let prefix = this.current_prefix.substring(1);
640
- let baseApi = process.env.VUE_APP_BASE_API
641
- if(settingConfig.isTest){
642
- this.wfImage = `http://stdxx.sc.5mall.com/warm-flow-ui/index.html?id=${data.instanceId}&baseApi=${baseApi}&prefix=${prefix}&type=FlowChart&Authorization=${Authorization}`
643
- }else{
644
- this.wfImage = WEB_PREFIX + `/warm-flow-ui/index.html?id=${data.instanceId}&baseApi=${baseApi}&prefix=${prefix}&type=FlowChart&Authorization=${Authorization}`
658
+ let baseApi = process.env.VUE_APP_BASE_API;
659
+ if (settingConfig.isTest) {
660
+ this.wfImage = `http://stdxx.sc.5mall.com/warm-flow-ui/index.html?id=${data.instanceId}&baseApi=${baseApi}&prefix=${prefix}&type=FlowChart&Authorization=${Authorization}`;
661
+ } else {
662
+ this.wfImage =
663
+ WEB_PREFIX +
664
+ `/warm-flow-ui/index.html?id=${data.instanceId}&baseApi=${baseApi}&prefix=${prefix}&type=FlowChart&Authorization=${Authorization}`;
645
665
  }
646
666
  done();
647
667
  }
@@ -681,7 +701,7 @@ wfContentMixin = {
681
701
  url: this.current_prefix + "/wf/getAllWfTaskOpinions",
682
702
  data: {
683
703
  objId: wfInfo.objId,
684
- objTypeCode: wfInfo.objTypeCode
704
+ objTypeCode: wfInfo.objTypeCode,
685
705
  },
686
706
  method: "post",
687
707
  async: false,
@@ -727,49 +747,51 @@ wfContentMixin = {
727
747
  });
728
748
  },
729
749
  async rejectWfTask(operateType) {
730
- let that = getTarget(this);
731
- var instanceId = this.wfInfo.instanceId;
732
- var taskId = this.wfInfo.taskId;
733
- var destinations = [];
734
-
735
- await that.$http({
736
- url: this.current_prefix + "/wf/getBackTaskNode",
737
- data: {
738
- id: taskId,
739
- },
740
- method: "post",
741
- //contentType: 'application/json;charset=utf-8',
742
- async: false,
743
- isLoading: true,
744
- success: (resultMsg) => {
745
- destinations = (resultMsg.objx || []).reverse();
746
- },
747
- });
750
+ let that = getTarget(this);
751
+ var instanceId = this.wfInfo.instanceId;
752
+ var taskId = this.wfInfo.taskId;
753
+ var destinations = [];
748
754
 
749
- if (destinations == null) {
750
- return false;
751
- }
752
- if (destinations.length == 0) {
753
- that.$message({
754
- message: this.$t2('无法驳回,没有目标节点', 'components.wf.rejectWarnMsg1'),
755
- type: "error",
756
- duration: 2 * 1000,
757
- });
758
- return false;
759
- }
760
- this.operateType = operateType;
761
- let rejectSubmitModel = null;
762
- if (this.wfInfo.toNextNode === 1) {
763
- rejectSubmitModel = this.wfInfo.toNextNode
764
- } else {
765
- rejectSubmitModel = this.wfInfo.toRejectNode == false ? 2 : null
766
- }
767
- this.rejectForm.rejectSubmitModel = rejectSubmitModel;
768
- this.rejectForm.nodeCode = destinations[0].nodeCode;
769
- this.rejectForm.opinion = "";
770
- this.rejectNodes = destinations;
771
- this.rejectDialogVisible = true;
755
+ await that.$http({
756
+ url: this.current_prefix + "/wf/getBackTaskNode",
757
+ data: {
758
+ id: taskId,
759
+ },
760
+ method: "post",
761
+ //contentType: 'application/json;charset=utf-8',
762
+ async: false,
763
+ isLoading: true,
764
+ success: (resultMsg) => {
765
+ destinations = (resultMsg.objx || []).reverse();
766
+ },
767
+ });
772
768
 
769
+ if (destinations == null) {
770
+ return false;
771
+ }
772
+ if (destinations.length == 0) {
773
+ that.$message({
774
+ message: this.$t2(
775
+ "无法驳回,没有目标节点",
776
+ "components.wf.rejectWarnMsg1"
777
+ ),
778
+ type: "error",
779
+ duration: 2 * 1000,
780
+ });
781
+ return false;
782
+ }
783
+ this.operateType = operateType;
784
+ let rejectSubmitModel = null;
785
+ if (this.wfInfo.toNextNode === 1) {
786
+ rejectSubmitModel = this.wfInfo.toNextNode;
787
+ } else {
788
+ rejectSubmitModel = this.wfInfo.toRejectNode == false ? 2 : null;
789
+ }
790
+ this.rejectForm.rejectSubmitModel = rejectSubmitModel;
791
+ this.rejectForm.nodeCode = destinations[0].nodeCode;
792
+ this.rejectForm.opinion = "";
793
+ this.rejectNodes = destinations;
794
+ this.rejectDialogVisible = true;
773
795
  },
774
796
  subRejectForm() {
775
797
  let that = getTarget(this);
@@ -778,7 +800,7 @@ wfContentMixin = {
778
800
 
779
801
  if (!this.rejectForm.nodeCode) {
780
802
  that.$message({
781
- message: this.$t2('请选择驳回节点', 'components.wf.rejectWarnMsg2'),
803
+ message: this.$t2("请选择驳回节点", "components.wf.rejectWarnMsg2"),
782
804
  type: "error",
783
805
  duration: 2 * 1000,
784
806
  });
@@ -787,7 +809,7 @@ wfContentMixin = {
787
809
 
788
810
  if (!this.rejectForm.opinion) {
789
811
  that.$message({
790
- message: this.$t2('请输入驳回意见', 'components.wf.rejectWarnMsg3'),
812
+ message: this.$t2("请输入驳回意见", "components.wf.rejectWarnMsg3"),
791
813
  type: "error",
792
814
  duration: 2 * 1000,
793
815
  });
@@ -799,7 +821,7 @@ wfContentMixin = {
799
821
  uuid: this.wfInfo.uuid,
800
822
  nodeCode: this.rejectForm.nodeCode,
801
823
  suggestion: this.rejectForm.opinion,
802
- skipType: "REJECT"
824
+ skipType: "REJECT",
803
825
  // rejectSubmitModel: this.rejectForm.rejectSubmitModel
804
826
  });
805
827
  this.rejectDialogVisible = false;
@@ -824,50 +846,50 @@ wfContentMixin = {
824
846
  },
825
847
  });
826
848
  },
827
- handleReminderContent(scriptType, callback){
849
+ handleReminderContent(scriptType, callback) {
828
850
  let that = getTarget(this);
829
851
  that.$http({
830
- url: this.current_prefix + "/wf/getReminderContent",
831
- data: {
832
- scriptType,
833
- taskId: this.wfInfo.taskId,
834
- uuid: this.wfInfo.uuid,
835
- },
836
- method: "post",
837
- isLoading: true,
838
- errorMsg: false,
839
- success: (res) => {
840
- if(res.objx){
841
- that.$baseConfirm(res.objx).then(() => {
842
- callback && callback();
843
- });
844
- }else{
845
- callback && callback();
846
- }
847
- },
848
- error: (e) => {
849
- if(e.response.status === 404){
852
+ url: this.current_prefix + "/wf/getReminderContent",
853
+ data: {
854
+ scriptType,
855
+ taskId: this.wfInfo.taskId,
856
+ uuid: this.wfInfo.uuid,
857
+ },
858
+ method: "post",
859
+ isLoading: true,
860
+ errorMsg: false,
861
+ success: (res) => {
862
+ if (res.objx) {
863
+ that.$baseConfirm(res.objx).then(() => {
850
864
  callback && callback();
851
- }else{
852
- that.$errorMsg({
853
- content: e.message,
854
- type: 'error',
855
- });
856
- }
857
- },
865
+ });
866
+ } else {
867
+ callback && callback();
868
+ }
869
+ },
870
+ error: (e) => {
871
+ if (e.response.status === 404) {
872
+ callback && callback();
873
+ } else {
874
+ that.$errorMsg({
875
+ content: e.message,
876
+ type: "error",
877
+ });
878
+ }
879
+ },
858
880
  });
859
881
  },
860
882
  openAgreeDialog(operateType) {
861
883
  const done = () => {
862
- this.operateType = operateType;
863
- let that = getTarget(this);
864
- this.agreeForm = {
865
- opinion: this.$t2('同意', 'components.wf.defaultAgreeOption'),
866
- nodeId: null,
867
- };
868
- this.agreeNodes = [];
869
- this.agreeDialogVisible = true;
870
- /* that.$http({
884
+ this.operateType = operateType;
885
+ let that = getTarget(this);
886
+ this.agreeForm = {
887
+ opinion: this.$t2("同意", "components.wf.defaultAgreeOption"),
888
+ nodeId: null,
889
+ };
890
+ this.agreeNodes = [];
891
+ this.agreeDialogVisible = true;
892
+ /* that.$http({
871
893
  url: this.current_prefix + "/wf/getNextOutgoingNodes",
872
894
  data: {
873
895
  stringOne: this.wfInfo.taskId,
@@ -884,10 +906,10 @@ wfContentMixin = {
884
906
  this.agreeDialogVisible = true;
885
907
  },
886
908
  }); */
887
- }
909
+ };
888
910
  let wfConfig = this.wfConfig;
889
911
  if (wfConfig.onClickAgree) {
890
- wfConfig.onClickAgree(done)
912
+ wfConfig.onClickAgree(done);
891
913
  } else {
892
914
  done();
893
915
  }
@@ -896,9 +918,9 @@ wfContentMixin = {
896
918
  let wfConfig = this.wfConfig;
897
919
  let done = () => {
898
920
  this.subAgreeHandle();
899
- }
921
+ };
900
922
  if (wfConfig.onBeforeAgree) {
901
- wfConfig.onBeforeAgree(done)
923
+ wfConfig.onBeforeAgree(done);
902
924
  } else {
903
925
  done();
904
926
  }
@@ -907,7 +929,7 @@ wfContentMixin = {
907
929
  subAgreeHandle() {
908
930
  let that = getTarget(this);
909
931
  let nodeId = null;
910
- /* if (this.agreeNodes.length) {
932
+ /* if (this.agreeNodes.length) {
911
933
  if (!this.agreeForm.nodeId) {
912
934
  that.$message({
913
935
  message: this.$t2('请选择节点', 'components.wf.agreeWarnMsg1'),
@@ -921,12 +943,14 @@ wfContentMixin = {
921
943
 
922
944
  var instanceId = this.wfInfo.instanceId;
923
945
  var taskId = this.wfInfo.taskId;
924
- var memo = this.agreeForm.opinion || this.$t2('同意', 'components.wf.defaultAgreeOption');
946
+ var memo =
947
+ this.agreeForm.opinion ||
948
+ this.$t2("同意", "components.wf.defaultAgreeOption");
925
949
  var data = JSON.stringify({
926
950
  taskId: taskId,
927
951
  uuid: this.wfInfo.uuid,
928
952
  suggestion: memo,
929
- skipType: "PASS"
953
+ skipType: "PASS",
930
954
  // nodeId: nodeId,
931
955
  });
932
956
  this.agreeDialogVisible = false;
@@ -944,7 +968,7 @@ wfContentMixin = {
944
968
  taskId: taskId,
945
969
  uuid: this.wfInfo.uuid,
946
970
  suggestion: memo,
947
- errorMsg: resultMsg.objx.errorMsg
971
+ errorMsg: resultMsg.objx.errorMsg,
948
972
  });
949
973
  } else {
950
974
  that.$message({
@@ -1000,17 +1024,16 @@ wfContentMixin = {
1000
1024
 
1001
1025
  if (!userIds.length) {
1002
1026
  that.$message({
1003
- message: this.$t2('请选择转办人', 'components.wf.transferWarnMsg1'),
1027
+ message: this.$t2("请选择转办人", "components.wf.transferWarnMsg1"),
1004
1028
  type: "error",
1005
1029
  duration: 2000,
1006
- onClose: (t) => {
1007
- },
1030
+ onClose: (t) => {},
1008
1031
  });
1009
1032
  return false;
1010
1033
  }
1011
- let transferTo = userIds.map(userId=>{
1012
- return userId + ""
1013
- })
1034
+ let transferTo = userIds.map((userId) => {
1035
+ return userId + "";
1036
+ });
1014
1037
 
1015
1038
  var data = JSON.stringify({
1016
1039
  taskId: taskId,
@@ -1064,7 +1087,8 @@ wfContentMixin = {
1064
1087
  closeWinOnCheck(flag) {
1065
1088
  //_closeWindowOnCheck=true, 1提交,2驳回,3中断,4转办时,5沟通 关闭窗口
1066
1089
  let that = getTarget(this);
1067
- let _closeWindowOnCheck = that.$attrs._closeWindowOnCheck || that._closeWindowOnCheck;
1090
+ let _closeWindowOnCheck =
1091
+ that.$attrs._closeWindowOnCheck || that._closeWindowOnCheck;
1068
1092
  if (_closeWindowOnCheck === true || _closeWindowOnCheck === "true") {
1069
1093
  window.close && window.close();
1070
1094
  }
@@ -1089,13 +1113,13 @@ wfContentMixin = {
1089
1113
  openAddIncreaseSign(operateType) {
1090
1114
  this.operateType = operateType;
1091
1115
  this.addIncreaseSignUsers = [];
1092
- this.addIncreaseSignForm = {userNickNames: null};
1116
+ this.addIncreaseSignForm = { userNickNames: null };
1093
1117
  this.showAddIncreaseSignDialog = true;
1094
1118
  },
1095
1119
  initWfUserParam(callback) {
1096
- this.initTransferUserParam();//转办
1097
- this.initAddSignUserParam();//加签
1098
- this.initTalkUserParam();//沟通
1120
+ this.initTransferUserParam(); //转办
1121
+ this.initAddSignUserParam(); //加签
1122
+ this.initTalkUserParam(); //沟通
1099
1123
  },
1100
1124
  //
1101
1125
  initTransferUserParam(callback) {
@@ -1104,7 +1128,7 @@ wfContentMixin = {
1104
1128
  return that.$http({
1105
1129
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
1106
1130
  method: `post`,
1107
- data: {attributeKey: "param1"},
1131
+ data: { attributeKey: "param1" },
1108
1132
  isLoading: true,
1109
1133
  modalStrictly: true,
1110
1134
  success: (res) => {
@@ -1119,7 +1143,7 @@ wfContentMixin = {
1119
1143
  return that.$http({
1120
1144
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
1121
1145
  method: `post`,
1122
- data: {attributeKey: "param2"},
1146
+ data: { attributeKey: "param2" },
1123
1147
  isLoading: true,
1124
1148
  modalStrictly: true,
1125
1149
  success: (res) => {
@@ -1134,7 +1158,7 @@ wfContentMixin = {
1134
1158
  return that.$http({
1135
1159
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
1136
1160
  method: `post`,
1137
- data: {attributeKey: "param3"},
1161
+ data: { attributeKey: "param3" },
1138
1162
  isLoading: true,
1139
1163
  modalStrictly: true,
1140
1164
  success: (res) => {
@@ -1154,9 +1178,9 @@ wfContentMixin = {
1154
1178
  initLinkup(flag) {
1155
1179
  let h = this.$createElement;
1156
1180
  let statusMap = {
1157
- 0: this.$t2('未完成', 'components.wf.talkStatus0'),
1158
- 1: this.$t2('已完成', 'components.wf.talkStatus1'),
1159
- 2: this.$t2('已取消', 'components.wf.talkStatus2')
1181
+ 0: this.$t2("未完成", "components.wf.talkStatus0"),
1182
+ 1: this.$t2("已完成", "components.wf.talkStatus1"),
1183
+ 2: this.$t2("已取消", "components.wf.talkStatus2"),
1160
1184
  };
1161
1185
  let tableOption = {
1162
1186
  vue: this,
@@ -1169,18 +1193,18 @@ wfContentMixin = {
1169
1193
  };
1170
1194
  },
1171
1195
  config: {
1172
- height: 350
1196
+ height: 350,
1173
1197
  },
1174
1198
  columns: [
1175
- {type: "checkbox", width: 48, resizable: false, fixed: "left"},
1199
+ { type: "checkbox", width: 48, resizable: false, fixed: "left" },
1176
1200
  {
1177
- title: this.$t2('任务名称', 'components.wf.taskName'),
1201
+ title: this.$t2("任务名称", "components.wf.taskName"),
1178
1202
  field: "taskName",
1179
1203
  width: 150,
1180
1204
  fixed: "left",
1181
1205
  },
1182
1206
  {
1183
- title: this.$t2('发送人', 'components.wf.senderName'),
1207
+ title: this.$t2("发送人", "components.wf.senderName"),
1184
1208
  field: "senderName",
1185
1209
  width: 150,
1186
1210
  slots: {
@@ -1188,7 +1212,7 @@ wfContentMixin = {
1188
1212
  },
1189
1213
  },
1190
1214
  {
1191
- title: this.$t2('接收人', 'components.wf.receiverName'),
1215
+ title: this.$t2("接收人", "components.wf.receiverName"),
1192
1216
  field: "receiverName",
1193
1217
  width: 150,
1194
1218
  slots: {
@@ -1196,25 +1220,30 @@ wfContentMixin = {
1196
1220
  },
1197
1221
  },
1198
1222
  {
1199
- title: this.$t2('沟通内容', 'components.wf.talkContent'),
1223
+ title: this.$t2("沟通内容", "components.wf.talkContent"),
1200
1224
  field: "content",
1201
1225
  width: 250,
1202
1226
  showOverflow: false,
1203
1227
  slots: {
1204
- default: ({row, rowIndex}) => {
1205
- return row.replyId ? ("[" + this.$t2('回复', 'components.wf.reply') + "]" + row.content) : row.content;
1228
+ default: ({ row, rowIndex }) => {
1229
+ return row.replyId
1230
+ ? "[" +
1231
+ this.$t2("回复", "components.wf.reply") +
1232
+ "]" +
1233
+ row.content
1234
+ : row.content;
1206
1235
  },
1207
1236
  },
1208
1237
  },
1209
1238
  {
1210
1239
  width: 150,
1211
- title: this.$t2('沟通资料', 'components.wf.talkAttachment'),
1240
+ title: this.$t2("沟通资料", "components.wf.talkAttachment"),
1212
1241
  field: "attachmentImage",
1213
1242
  sortable: false,
1214
1243
  slots: {
1215
- default: ({row, rowIndex}) => {
1244
+ default: ({ row, rowIndex }) => {
1216
1245
  let option = {
1217
- title: this.$t2('沟通资料', 'components.wf.talkAttachment'),
1246
+ title: this.$t2("沟通资料", "components.wf.talkAttachment"),
1218
1247
  edit: false,
1219
1248
  rows: (done) => {
1220
1249
  done(row.attachmentDTOs);
@@ -1224,7 +1253,7 @@ wfContentMixin = {
1224
1253
  h("base-attachment", {
1225
1254
  props: {
1226
1255
  option: option,
1227
- imageLazy: false
1256
+ imageLazy: false,
1228
1257
  },
1229
1258
  }),
1230
1259
  ];
@@ -1233,17 +1262,17 @@ wfContentMixin = {
1233
1262
  },
1234
1263
 
1235
1264
  {
1236
- title: this.$t2('状态', 'components.wf.status'),
1265
+ title: this.$t2("状态", "components.wf.status"),
1237
1266
  field: "status",
1238
1267
  width: 150,
1239
1268
  slots: {
1240
- default: ({row, rowIndex}) => {
1269
+ default: ({ row, rowIndex }) => {
1241
1270
  return statusMap[row.status] || "";
1242
1271
  },
1243
1272
  },
1244
1273
  },
1245
1274
  {
1246
- title: this.$t2('创建时间', 'system.label.createDate'),
1275
+ title: this.$t2("创建时间", "system.label.createDate"),
1247
1276
  field: "createDate",
1248
1277
  width: 150,
1249
1278
  },
@@ -1253,8 +1282,8 @@ wfContentMixin = {
1253
1282
  title: "",
1254
1283
  sortable: false,
1255
1284
  slots: {
1256
- default: "operate"
1257
- }
1285
+ default: "operate",
1286
+ },
1258
1287
  },
1259
1288
  ],
1260
1289
  callback: (rows) => {
@@ -1263,11 +1292,17 @@ wfContentMixin = {
1263
1292
  if (row.replyToSender) {
1264
1293
  this.$nextTick(() => {
1265
1294
  this.tabIndex = "2";
1266
- this.openTalkDialog(row.sender, row.senderName, 'talk', 1, row.id)
1295
+ this.openTalkDialog(
1296
+ row.sender,
1297
+ row.senderName,
1298
+ "talk",
1299
+ 1,
1300
+ row.id
1301
+ );
1267
1302
  });
1268
1303
  }
1269
1304
  }
1270
- }
1305
+ },
1271
1306
  };
1272
1307
  this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
1273
1308
  this.linkupOption = opts;
@@ -1275,25 +1310,29 @@ wfContentMixin = {
1275
1310
  },
1276
1311
  cancelTalk(row) {
1277
1312
  let that = getTarget(this);
1278
- that.$baseConfirm(this.$t2('您确定要取消沟通记录吗?', 'components.wf.cancelTalkTip')).then(() => {
1279
- that.$http({
1280
- url: this.current_prefix + "/wf_linkup/cancel",
1281
- data: {id: row.id},
1282
- method: "post",
1283
- loadingTarget: document.body,
1284
- isLoading: true,
1285
- success: (resultMsg) => {
1286
- that.$message({
1287
- message: resultMsg.content,
1288
- type: "success",
1289
- duration: 500,
1290
- onClose: (t) => {
1291
- this.reloadContent();
1292
- },
1293
- });
1294
- },
1313
+ that
1314
+ .$baseConfirm(
1315
+ this.$t2("您确定要取消沟通记录吗?", "components.wf.cancelTalkTip")
1316
+ )
1317
+ .then(() => {
1318
+ that.$http({
1319
+ url: this.current_prefix + "/wf_linkup/cancel",
1320
+ data: { id: row.id },
1321
+ method: "post",
1322
+ loadingTarget: document.body,
1323
+ isLoading: true,
1324
+ success: (resultMsg) => {
1325
+ that.$message({
1326
+ message: resultMsg.content,
1327
+ type: "success",
1328
+ duration: 500,
1329
+ onClose: (t) => {
1330
+ this.reloadContent();
1331
+ },
1332
+ });
1333
+ },
1334
+ });
1295
1335
  });
1296
- });
1297
1336
  },
1298
1337
  openTalkDialog(receiver, receiverName, operateType, flag, replyId) {
1299
1338
  this.operateType = operateType;
@@ -1302,7 +1341,7 @@ wfContentMixin = {
1302
1341
  this.talkForm.replyId = replyId || null;
1303
1342
  this.talkForm.content = null;
1304
1343
  this.talkForm.attachmentDTOs = [];*/
1305
- this.initTalkForm(receiver, receiverName, replyId)
1344
+ this.initTalkForm(receiver, receiverName, replyId);
1306
1345
  this.showTalkDialog = true;
1307
1346
  if (flag == 1) {
1308
1347
  let opeaBtnDom = this.$refs.opeaBtn;
@@ -1323,7 +1362,7 @@ wfContentMixin = {
1323
1362
 
1324
1363
  if (!this.talkForm.receiver) {
1325
1364
  that.$message({
1326
- message: this.$t2('请选择接收人', 'components.wf.talkWarnMsg1'),
1365
+ message: this.$t2("请选择接收人", "components.wf.talkWarnMsg1"),
1327
1366
  type: "error",
1328
1367
  duration: 2 * 1000,
1329
1368
  });
@@ -1331,7 +1370,7 @@ wfContentMixin = {
1331
1370
  }
1332
1371
  if (!this.talkForm.content) {
1333
1372
  that.$message({
1334
- message: this.$t2('请输入沟通内容', 'components.wf.talkWarnMsg2'),
1373
+ message: this.$t2("请输入沟通内容", "components.wf.talkWarnMsg2"),
1335
1374
  type: "error",
1336
1375
  duration: 2 * 1000,
1337
1376
  });
@@ -1388,7 +1427,9 @@ wfContentMixin = {
1388
1427
  },
1389
1428
  confirmAddTaskUser(rows) {
1390
1429
  this.addIncreaseSignUsers = rows;
1391
- this.addIncreaseSignForm.userNickNames = rows.map(row => row.nickName).join(',');
1430
+ this.addIncreaseSignForm.userNickNames = rows
1431
+ .map((row) => row.nickName)
1432
+ .join(",");
1392
1433
  // this.reloadContent();
1393
1434
  },
1394
1435
  submitAddTaskUserForm(flag) {
@@ -1396,11 +1437,13 @@ wfContentMixin = {
1396
1437
  let userIds = this.addIncreaseSignUsers.map((checkRow) => checkRow.id);
1397
1438
  if (userIds.length == 0) {
1398
1439
  that.$message({
1399
- message: this.$t2('请选择候选人', 'components.wf.addIncreaseSignWarnMsg1'),
1440
+ message: this.$t2(
1441
+ "请选择候选人",
1442
+ "components.wf.addIncreaseSignWarnMsg1"
1443
+ ),
1400
1444
  type: "error",
1401
1445
  duration: 2000,
1402
- onClose: (t) => {
1403
- },
1446
+ onClose: (t) => {},
1404
1447
  });
1405
1448
  return false;
1406
1449
  }
@@ -1409,8 +1452,7 @@ wfContentMixin = {
1409
1452
  uuid: this.wfInfo.uuid,
1410
1453
  taskId: this.wfInfo.taskId,
1411
1454
  userIds: userIds,
1412
- suggestion: this.addIncreaseSignForm.opinion
1413
-
1455
+ suggestion: this.addIncreaseSignForm.opinion,
1414
1456
  });
1415
1457
  this.agreeDialogVisible = false;
1416
1458
  that.$http({
@@ -1423,7 +1465,7 @@ wfContentMixin = {
1423
1465
  },
1424
1466
  isLoading: true,
1425
1467
  success: (resultMsg) => {
1426
- this.showAddIncreaseSignDialog = false
1468
+ this.showAddIncreaseSignDialog = false;
1427
1469
  that.$message({
1428
1470
  message: resultMsg.content,
1429
1471
  type: "success",
@@ -1434,26 +1476,35 @@ wfContentMixin = {
1434
1476
  });
1435
1477
  },
1436
1478
  });
1437
- }
1479
+ };
1438
1480
  if (flag === 0) {
1439
1481
  toDo();
1440
1482
  } else {
1441
- that.$baseConfirm(this.$t2('您确定要加签吗?', 'components.wf.addIncreaseSignConfirmTip')).then(() => {
1442
- toDo();
1443
- });
1483
+ that
1484
+ .$baseConfirm(
1485
+ this.$t2(
1486
+ "您确定要加签吗?",
1487
+ "components.wf.addIncreaseSignConfirmTip"
1488
+ )
1489
+ )
1490
+ .then(() => {
1491
+ toDo();
1492
+ });
1444
1493
  }
1445
1494
  },
1446
1495
  openSetCandidateDialog(operateType) {
1447
1496
  this.operateType = operateType;
1448
1497
  this.showSetCandidateDialog = true;
1449
1498
  },
1450
- closeSetCandidateDialog() {
1499
+ closeSetCandidateDialog({ saved = false } = {}) {
1451
1500
  this.showSetCandidateDialog = false;
1452
- this.reloadContent();
1501
+ if (saved) {
1502
+ this.reloadContent();
1503
+ }
1453
1504
  },
1454
1505
  openRevokeDialog(operateType) {
1455
1506
  this.operateType = operateType;
1456
- this.revokeForm = {opinion: null}
1507
+ this.revokeForm = { opinion: null };
1457
1508
  this.revokeDialogVisible = true;
1458
1509
  },
1459
1510
  subRevokeForm(flag) {
@@ -1486,13 +1537,17 @@ wfContentMixin = {
1486
1537
  });
1487
1538
  },
1488
1539
  });
1489
- }
1540
+ };
1490
1541
  if (flag === 0) {
1491
1542
  toDo();
1492
1543
  } else {
1493
- that.$baseConfirm(this.$t2('您确定要撤回吗?', 'components.wf.revokeConfirmTip')).then(() => {
1494
- toDo();
1495
- });
1544
+ that
1545
+ .$baseConfirm(
1546
+ this.$t2("您确定要撤回吗?", "components.wf.revokeConfirmTip")
1547
+ )
1548
+ .then(() => {
1549
+ toDo();
1550
+ });
1496
1551
  }
1497
1552
  },
1498
1553
  initShowTaskInfo(callback) {
@@ -1501,7 +1556,7 @@ wfContentMixin = {
1501
1556
  return that.$http({
1502
1557
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
1503
1558
  method: `post`,
1504
- data: {attributeKey: "param9"},
1559
+ data: { attributeKey: "param9" },
1505
1560
  isLoading: true,
1506
1561
  modalStrictly: true,
1507
1562
  success: (res) => {
@@ -1510,19 +1565,19 @@ wfContentMixin = {
1510
1565
  },
1511
1566
  });
1512
1567
  },
1513
- getIsShowWfMemo(){
1568
+ getIsShowWfMemo() {
1514
1569
  let that = getTarget(this);
1515
1570
  that.$http({
1516
1571
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
1517
1572
  method: `post`,
1518
- data: {attributeKey: "param10"},
1573
+ data: { attributeKey: "param10" },
1519
1574
  isLoading: true,
1520
1575
  success: (res) => {
1521
1576
  this.showWfMemo = res?.objx === true;
1522
- if(this.showWfMemo){
1523
- this.$nextTick(()=>{
1577
+ if (this.showWfMemo) {
1578
+ this.$nextTick(() => {
1524
1579
  this.initWfMemo();
1525
- })
1580
+ });
1526
1581
  }
1527
1582
  },
1528
1583
  });
@@ -1600,7 +1655,7 @@ wfContentMixin = {
1600
1655
  this.wfMemoOption = opts;
1601
1656
  }); */
1602
1657
  },
1603
- wfMemoSearchEvent(){
1658
+ wfMemoSearchEvent() {
1604
1659
  // this.$refs['table-wfMemo'].commitProxy('reload');
1605
1660
  let that = getTarget(this);
1606
1661
  that.$http({
@@ -1617,14 +1672,14 @@ wfContentMixin = {
1617
1672
  });
1618
1673
  },
1619
1674
  openWfMemoDialog(row) {
1620
- if(row){
1675
+ if (row) {
1621
1676
  this.wfMemoForm = this.$baseLodash.cloneDeep(row);
1622
- }else{
1677
+ } else {
1623
1678
  this.wfMemoForm = {
1624
1679
  uuid: this.wfInfo.uuid,
1625
- content:null,
1626
- attachmentDTOs: []
1627
- }
1680
+ content: null,
1681
+ attachmentDTOs: [],
1682
+ };
1628
1683
  }
1629
1684
  this.showWfMemoDialog = true;
1630
1685
  },
@@ -1633,7 +1688,7 @@ wfContentMixin = {
1633
1688
 
1634
1689
  if (!this.wfMemoForm.content) {
1635
1690
  that.$message({
1636
- message: this.$t1('请输入内容'),
1691
+ message: this.$t1("请输入内容"),
1637
1692
  type: "error",
1638
1693
  duration: 2 * 1000,
1639
1694
  });
@@ -1649,13 +1704,13 @@ wfContentMixin = {
1649
1704
  success: (resultMsg) => {
1650
1705
  that.$message({
1651
1706
  message: resultMsg.content,
1652
- type: "success"
1707
+ type: "success",
1653
1708
  });
1654
1709
  this.wfMemoSearchEvent();
1655
1710
  },
1656
1711
  });
1657
1712
  },
1658
- }
1713
+ },
1659
1714
  };
1660
1715
 
1661
1716
  wfStartMixin = {
@@ -1669,7 +1724,7 @@ wfStartMixin = {
1669
1724
  parentVue: Object,
1670
1725
  wfName: String,
1671
1726
  formCode: String,
1672
- option: Object
1727
+ option: Object,
1673
1728
  },
1674
1729
  data() {
1675
1730
  return {
@@ -1677,10 +1732,11 @@ wfStartMixin = {
1677
1732
  wfStartForm: {},
1678
1733
  wfDefItems: [],
1679
1734
 
1680
- startFormData:{},
1735
+ startFormData: {},
1681
1736
  wfUserRangeEnabled: false,
1682
- preStartResult:[],
1683
- showSetCandidateDialog2:false
1737
+ preStartResult: [],
1738
+ showSetCandidateDialog2: false,
1739
+ wfSubmitted: false,
1684
1740
  };
1685
1741
  },
1686
1742
  computed: {
@@ -1693,41 +1749,41 @@ wfStartMixin = {
1693
1749
  // this.showDialog = true;
1694
1750
  },
1695
1751
  methods: {
1696
- preStart(){
1752
+ preStart() {
1697
1753
  let that = getTarget(this);
1698
- return new Promise(resolve=>{
1754
+ return new Promise((resolve) => {
1699
1755
  return that.$http({
1700
1756
  url: this.current_prefix + "/wf/preStart",
1701
1757
  method: `post`,
1702
1758
  data: {
1703
1759
  ...this.startFormData,
1704
- preStart: 1
1760
+ preStart: 1,
1705
1761
  },
1706
1762
  success: (res) => {
1707
1763
  resolve(res.objx);
1708
1764
  },
1709
1765
  });
1710
- })
1766
+ });
1711
1767
  },
1712
- initWfUserRangeParam(){
1768
+ initWfUserRangeParam() {
1713
1769
  let that = getTarget(this);
1714
1770
  return that.$http({
1715
1771
  url: USER_PREFIX + "/wf_diy_attribute/getValue",
1716
1772
  method: `post`,
1717
- data: {attributeKey: "param12"},
1773
+ data: { attributeKey: "param12" },
1718
1774
  success: (res) => {
1719
1775
  this.wfUserRangeEnabled = res?.objx === true;
1720
1776
  },
1721
1777
  });
1722
1778
  },
1723
- openSetCandidateDialog(){
1779
+ openSetCandidateDialog() {
1724
1780
  this.showSetCandidateDialog2 = true;
1725
1781
  },
1726
- confirmSetCandidateDialog(rows){
1782
+ confirmSetCandidateDialog(rows) {
1727
1783
  let formData = {
1728
1784
  ...this.startFormData,
1729
- wfNodeDTOs: rows
1730
- }
1785
+ wfNodeDTOs: rows,
1786
+ };
1731
1787
  this.startSubmitHanlde(formData);
1732
1788
  },
1733
1789
  async initWfInfo(code) {
@@ -1742,7 +1798,7 @@ wfStartMixin = {
1742
1798
  objTypeCode: code,
1743
1799
  enabled: true,
1744
1800
  published: true,
1745
- objId: objId
1801
+ objId: objId,
1746
1802
  },
1747
1803
  method: "post",
1748
1804
  async: false,
@@ -1756,7 +1812,9 @@ wfStartMixin = {
1756
1812
  });
1757
1813
 
1758
1814
  if (!wfDefItems || wfDefItems.length == 0) {
1759
- that.$baseAlert(this.$t2('无法启动,没有流程单据', 'components.wf.startWarnMsg1'));
1815
+ that.$baseAlert(
1816
+ this.$t2("无法启动,没有流程单据", "components.wf.startWarnMsg1")
1817
+ );
1760
1818
  this.close();
1761
1819
  return false;
1762
1820
  }
@@ -1767,7 +1825,10 @@ wfStartMixin = {
1767
1825
  (this.wfDefItems = wfDefItems);
1768
1826
  this.$set(this.wfStartForm, "flowCode", wfDefItems[0].flowCode);
1769
1827
  if (wfDefItems.length == 1) {
1770
- if (settingConfig.withoutConfrimByOneWf === true) {
1828
+ if (
1829
+ settingConfig.withoutConfrimByOneWf === true ||
1830
+ (this.option && this.option.skipStartConfirm)
1831
+ ) {
1771
1832
  this.startSubmit();
1772
1833
  } else {
1773
1834
  let wfStartOperateName =
@@ -1776,7 +1837,7 @@ wfStartMixin = {
1776
1837
  "启动流程";
1777
1838
  let startTip = "您确定要" + wfStartOperateName + "吗?";
1778
1839
  that
1779
- .$baseConfirm(this.$t2(startTip, 'components.wf.startTip'))
1840
+ .$baseConfirm(this.$t2(startTip, "components.wf.startTip"))
1780
1841
  .then(() => {
1781
1842
  this.startSubmit();
1782
1843
  });
@@ -1788,14 +1849,16 @@ wfStartMixin = {
1788
1849
  startSubmit() {
1789
1850
  var flowCode = this.wfStartForm.flowCode;
1790
1851
  if (!flowCode) {
1791
- that.$baseAlert(this.$t2('请选择流程模版', 'components.wf.startWarnMsg2'));
1852
+ this.$baseAlert(
1853
+ this.$t2("请选择流程模版", "components.wf.startWarnMsg2")
1854
+ );
1792
1855
  return false;
1793
1856
  }
1794
1857
  let option = this.option;
1795
1858
  if (option.onBeforeStartSubmit) {
1796
1859
  option.onBeforeStartSubmit(() => {
1797
1860
  this.subWfStartForm();
1798
- })
1861
+ });
1799
1862
  } else {
1800
1863
  this.subWfStartForm();
1801
1864
  }
@@ -1804,7 +1867,9 @@ wfStartMixin = {
1804
1867
  let that = getTarget(this);
1805
1868
  var flowCode = this.wfStartForm.flowCode;
1806
1869
  if (!flowCode) {
1807
- that.$baseAlert(this.$t2('请选择流程模版', 'components.wf.startWarnMsg2'));
1870
+ that.$baseAlert(
1871
+ this.$t2("请选择流程模版", "components.wf.startWarnMsg2")
1872
+ );
1808
1873
  return false;
1809
1874
  }
1810
1875
 
@@ -1820,22 +1885,22 @@ wfStartMixin = {
1820
1885
  objTypeCode: this.code,
1821
1886
  objId: objId,
1822
1887
  formData: startParam,
1823
- formCode: formCode
1888
+ formCode: formCode,
1824
1889
  // name:this.wfName
1825
1890
  };
1826
1891
  this.startFormData = data;
1827
1892
 
1828
- if(this.wfUserRangeEnabled){
1829
- this.preStartResult = await this.preStart() || []
1830
- if(this.preStartResult.length){
1831
- this.openSetCandidateDialog()
1832
- return
1893
+ if (this.wfUserRangeEnabled) {
1894
+ this.preStartResult = (await this.preStart()) || [];
1895
+ if (this.preStartResult.length) {
1896
+ this.openSetCandidateDialog();
1897
+ return;
1833
1898
  }
1834
1899
  }
1835
1900
  this.startSubmitHanlde(this.startFormData);
1836
-
1837
1901
  },
1838
- startSubmitHanlde(formData){
1902
+ startSubmitHanlde(formData) {
1903
+ this.wfSubmitted = true; // 标记已进入提交,避免随后关闭弹框误判为「取消」
1839
1904
  this.showDialog = false;
1840
1905
  let that = getTarget(this);
1841
1906
  let option = this.option;
@@ -1860,21 +1925,33 @@ wfStartMixin = {
1860
1925
  option.onStartSuccess();
1861
1926
  }
1862
1927
  if (resultMsg.objx) {
1863
- that.$baseAlert(resultMsg.objx)
1928
+ that.$baseAlert(resultMsg.objx);
1864
1929
  }
1865
1930
  },
1866
1931
  });
1867
1932
  } else {
1868
- option.onStartFail && option.onStartFail()
1933
+ option.onStartFail && option.onStartFail();
1869
1934
  }
1870
-
1871
- }
1935
+ },
1872
1936
  });
1873
1937
  },
1938
+ handleWfCancel() {
1939
+ // 未进入提交就关闭 = 取消启动,回调通用 onCancel(一次性,避免多个弹框关闭重复触发)
1940
+ if (this.wfSubmitted) return;
1941
+ this.wfSubmitted = true;
1942
+ this.option && this.option.onCancel && this.option.onCancel();
1943
+ },
1874
1944
  close() {
1945
+ this.handleWfCancel();
1875
1946
  this.$emit("update:visible", false);
1876
1947
  },
1877
1948
  },
1949
+ watch: {
1950
+ showSetCandidateDialog2(val, oldVal) {
1951
+ // 候选人弹框未提交就关闭 = 取消启动
1952
+ if (oldVal && !val) this.handleWfCancel();
1953
+ },
1954
+ },
1878
1955
  };
1879
1956
 
1880
1957
  wfModifyMixin = {
@@ -1886,7 +1963,7 @@ wfModifyMixin = {
1886
1963
  paramData: Object,
1887
1964
  parentVue: Object,
1888
1965
  wfInfo: Object,
1889
- title: String
1966
+ title: String,
1890
1967
  },
1891
1968
  data() {
1892
1969
  return {
@@ -1912,8 +1989,8 @@ wfModifyMixin = {
1912
1989
  },
1913
1990
  refreshEdit() {
1914
1991
  this.showModifyDialog = false;
1915
- this.parentVue.$baseReload()
1916
- }
1992
+ this.parentVue.$baseReload();
1993
+ },
1917
1994
  },
1918
1995
  };
1919
1996
 
@@ -1942,7 +2019,7 @@ wfUrgingMixin = {
1942
2019
  tableName: "wf_urgingDialog-m1",
1943
2020
  path: this.current_prefix + "/wf/getTaskCandidates",
1944
2021
  param: () => {
1945
- return {stringOne: this.wfInfo.uuid};
2022
+ return { stringOne: this.wfInfo.uuid };
1946
2023
  },
1947
2024
  config: {
1948
2025
  checkboxConfig: {
@@ -1958,9 +2035,18 @@ wfUrgingMixin = {
1958
2035
  },
1959
2036
  },
1960
2037
  columns: [
1961
- {type: "checkbox", width: 50, resizable: false, fixed: "left"},
1962
- {title: this.$t2('催办人', 'components.wf.urgingUser'), field: "name", width: 250, fixed: "left"},
1963
- {title: this.$t2('催办人ID', 'components.wf.urgingUserId'), field: "id", width: 150},
2038
+ { type: "checkbox", width: 50, resizable: false, fixed: "left" },
2039
+ {
2040
+ title: this.$t2("催办人", "components.wf.urgingUser"),
2041
+ field: "name",
2042
+ width: 250,
2043
+ fixed: "left",
2044
+ },
2045
+ {
2046
+ title: this.$t2("催办人ID", "components.wf.urgingUserId"),
2047
+ field: "id",
2048
+ width: 150,
2049
+ },
1964
2050
  {
1965
2051
  width: 47,
1966
2052
  fixed: "right",
@@ -1982,44 +2068,47 @@ wfUrgingMixin = {
1982
2068
  let urgingUserIds = this.checkRows.map((checkRow) => checkRow.id);
1983
2069
  if (urgingUserIds.length == 0) {
1984
2070
  that.$message({
1985
- message: this.$t2('请选择催办人', 'components.wf.urgingWarnMsg1'),
2071
+ message: this.$t2("请选择催办人", "components.wf.urgingWarnMsg1"),
1986
2072
  type: "error",
1987
2073
  duration: 2000,
1988
- onClose: (t) => {
1989
- },
2074
+ onClose: (t) => {},
1990
2075
  });
1991
2076
  return false;
1992
2077
  }
1993
- that.$baseConfirm(this.$t2('您确定要催办吗?', 'components.wf.urgingConfirmTip')).then(() => {
1994
- var data = JSON.stringify({
1995
- uuid: this.wfInfo.uuid,
1996
- taskId: this.wfInfo.taskId,
1997
- notifyType: "wfUrging",
1998
- userIds: urgingUserIds,
1999
- });
2000
- this.agreeDialogVisible = false;
2001
- that.$http({
2002
- url: this.current_prefix + "/wf/urging",
2003
- data: data,
2004
- method: "post",
2005
- loadingTarget: document.body,
2006
- headers: {
2007
- "Content-Type": "application/json;charset=utf-8",
2008
- },
2009
- isLoading: true,
2010
- success: (resultMsg) => {
2011
- that.$message({
2012
- message: resultMsg.content,
2013
- type: "success",
2014
- duration: 500,
2015
- onClose: (t) => {
2016
- // this.reloadContent();
2017
- this.dialogConfirm();
2018
- },
2019
- });
2020
- },
2078
+ that
2079
+ .$baseConfirm(
2080
+ this.$t2("您确定要催办吗?", "components.wf.urgingConfirmTip")
2081
+ )
2082
+ .then(() => {
2083
+ var data = JSON.stringify({
2084
+ uuid: this.wfInfo.uuid,
2085
+ taskId: this.wfInfo.taskId,
2086
+ notifyType: "wfUrging",
2087
+ userIds: urgingUserIds,
2088
+ });
2089
+ this.agreeDialogVisible = false;
2090
+ that.$http({
2091
+ url: this.current_prefix + "/wf/urging",
2092
+ data: data,
2093
+ method: "post",
2094
+ loadingTarget: document.body,
2095
+ headers: {
2096
+ "Content-Type": "application/json;charset=utf-8",
2097
+ },
2098
+ isLoading: true,
2099
+ success: (resultMsg) => {
2100
+ that.$message({
2101
+ message: resultMsg.content,
2102
+ type: "success",
2103
+ duration: 500,
2104
+ onClose: (t) => {
2105
+ // this.reloadContent();
2106
+ this.dialogConfirm();
2107
+ },
2108
+ });
2109
+ },
2110
+ });
2021
2111
  });
2022
- });
2023
2112
  },
2024
2113
  },
2025
2114
  };
@@ -2068,9 +2157,18 @@ deleteTaskUserMixin = {
2068
2157
  },
2069
2158
  },
2070
2159
  columns: [
2071
- {type: "checkbox", width: 50, resizable: false, fixed: "left"},
2072
- {title: this.$t2('候选人', 'components.wf.candidate'), field: "name", width: 250, fixed: "left"},
2073
- {title: this.$t2('候选人ID', 'components.wf.candidateId'), field: "id", width: 150},
2160
+ { type: "checkbox", width: 50, resizable: false, fixed: "left" },
2161
+ {
2162
+ title: this.$t2("候选人", "components.wf.candidate"),
2163
+ field: "name",
2164
+ width: 250,
2165
+ fixed: "left",
2166
+ },
2167
+ {
2168
+ title: this.$t2("候选人ID", "components.wf.candidateId"),
2169
+ field: "id",
2170
+ width: 150,
2171
+ },
2074
2172
  {
2075
2173
  width: 47,
2076
2174
  fixed: "right",
@@ -2092,42 +2190,51 @@ deleteTaskUserMixin = {
2092
2190
  let userIds = this.checkRows.map((checkRow) => checkRow.id);
2093
2191
  if (userIds.length == 0) {
2094
2192
  that.$message({
2095
- message: this.$t2('请选择候选人', 'components.wf.deleteIncreaseSignWarnMsg1'),
2193
+ message: this.$t2(
2194
+ "请选择候选人",
2195
+ "components.wf.deleteIncreaseSignWarnMsg1"
2196
+ ),
2096
2197
  type: "error",
2097
2198
  duration: 2000,
2098
- onClose: (t) => {
2099
- },
2199
+ onClose: (t) => {},
2100
2200
  });
2101
2201
  return false;
2102
2202
  }
2103
- that.$baseConfirm(this.$t2('您确定要减签选中的候选人吗?', 'components.wf.deleteIncreaseSignTip')).then(() => {
2104
- var data = JSON.stringify({
2105
- uuid: this.wfInfo.uuid,
2106
- taskId: this.wfInfo.taskId,
2107
- userIds: userIds,
2108
- });
2109
- this.agreeDialogVisible = false;
2110
- that.$http({
2111
- url: this.current_prefix + "/wf/deleteIncreaseSign",
2112
- data: data,
2113
- method: "post",
2114
- loadingTarget: document.body,
2115
- headers: {
2116
- "Content-Type": "application/json;charset=utf-8",
2117
- },
2118
- isLoading: true,
2119
- success: (resultMsg) => {
2120
- that.$message({
2121
- message: resultMsg.content,
2122
- type: "success",
2123
- duration: 500,
2124
- onClose: (t) => {
2125
- this.dialogConfirm();
2126
- },
2127
- });
2128
- },
2203
+ that
2204
+ .$baseConfirm(
2205
+ this.$t2(
2206
+ "您确定要减签选中的候选人吗?",
2207
+ "components.wf.deleteIncreaseSignTip"
2208
+ )
2209
+ )
2210
+ .then(() => {
2211
+ var data = JSON.stringify({
2212
+ uuid: this.wfInfo.uuid,
2213
+ taskId: this.wfInfo.taskId,
2214
+ userIds: userIds,
2215
+ });
2216
+ this.agreeDialogVisible = false;
2217
+ that.$http({
2218
+ url: this.current_prefix + "/wf/deleteIncreaseSign",
2219
+ data: data,
2220
+ method: "post",
2221
+ loadingTarget: document.body,
2222
+ headers: {
2223
+ "Content-Type": "application/json;charset=utf-8",
2224
+ },
2225
+ isLoading: true,
2226
+ success: (resultMsg) => {
2227
+ that.$message({
2228
+ message: resultMsg.content,
2229
+ type: "success",
2230
+ duration: 500,
2231
+ onClose: (t) => {
2232
+ this.dialogConfirm();
2233
+ },
2234
+ });
2235
+ },
2236
+ });
2129
2237
  });
2130
- });
2131
2238
  },
2132
2239
  },
2133
2240
  };
@@ -2158,42 +2265,51 @@ addTaskUserMixin = {
2158
2265
  let userIds = this.checkRows.map((checkRow) => checkRow.id);
2159
2266
  if (userIds.length == 0) {
2160
2267
  that.$message({
2161
- message: this.$t2('请选择候选人', 'components.wf.addIncreaseSignWarnMsg1'),
2268
+ message: this.$t2(
2269
+ "请选择候选人",
2270
+ "components.wf.addIncreaseSignWarnMsg1"
2271
+ ),
2162
2272
  type: "error",
2163
2273
  duration: 2000,
2164
- onClose: (t) => {
2165
- },
2274
+ onClose: (t) => {},
2166
2275
  });
2167
2276
  return false;
2168
2277
  }
2169
- that.$baseConfirm(this.$t2('您确定要加签选中的候选人吗?', 'components.wf.addIncreaseSignConfirmTip2')).then(() => {
2170
- var data = JSON.stringify({
2171
- uuid: this.wfInfo.uuid,
2172
- taskId: this.wfInfo.taskId,
2173
- userIds: userIds,
2174
- });
2175
- this.agreeDialogVisible = false;
2176
- that.$http({
2177
- url: this.current_prefix + "/wf/addIncreaseSign",
2178
- data: data,
2179
- method: "post",
2180
- loadingTarget: document.body,
2181
- headers: {
2182
- "Content-Type": "application/json;charset=utf-8",
2183
- },
2184
- isLoading: true,
2185
- success: (resultMsg) => {
2186
- that.$message({
2187
- message: resultMsg.content,
2188
- type: "success",
2189
- duration: 500,
2190
- onClose: (t) => {
2191
- this.dialogConfirm();
2192
- },
2193
- });
2194
- },
2278
+ that
2279
+ .$baseConfirm(
2280
+ this.$t2(
2281
+ "您确定要加签选中的候选人吗?",
2282
+ "components.wf.addIncreaseSignConfirmTip2"
2283
+ )
2284
+ )
2285
+ .then(() => {
2286
+ var data = JSON.stringify({
2287
+ uuid: this.wfInfo.uuid,
2288
+ taskId: this.wfInfo.taskId,
2289
+ userIds: userIds,
2290
+ });
2291
+ this.agreeDialogVisible = false;
2292
+ that.$http({
2293
+ url: this.current_prefix + "/wf/addIncreaseSign",
2294
+ data: data,
2295
+ method: "post",
2296
+ loadingTarget: document.body,
2297
+ headers: {
2298
+ "Content-Type": "application/json;charset=utf-8",
2299
+ },
2300
+ isLoading: true,
2301
+ success: (resultMsg) => {
2302
+ that.$message({
2303
+ message: resultMsg.content,
2304
+ type: "success",
2305
+ duration: 500,
2306
+ onClose: (t) => {
2307
+ this.dialogConfirm();
2308
+ },
2309
+ });
2310
+ },
2311
+ });
2195
2312
  });
2196
- });
2197
2313
  },
2198
2314
  },
2199
2315
  };