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.
- package/package.json +9 -7
- package/src/api/user.js +54 -46
- package/src/components/baseAlert/index.vue +57 -53
- package/src/components/baseInputExport/index.vue +3 -3
- package/src/components/baseTabs/mixins.js +12 -1
- package/src/components/errorMsg/index.vue +78 -78
- package/src/components/excelExport/button.vue +54 -45
- package/src/components/excelExport/exportFieldDialog.vue +3 -3
- package/src/components/excelExport/index.js +1 -43
- package/src/components/excelExport/index.vue +62 -34
- package/src/components/excelExport/mixins.js +74 -87
- package/src/components/excelImport/index.js +1 -62
- package/src/components/excelImport/mixins.js +1 -774
- package/src/components/fileLibrary/index.vue +113 -33
- package/src/components/fileLibrary/propertiesDialog.vue +6 -0
- package/src/components/hiprint/view/design/index.vue +139 -47
- package/src/components/hiprint/view/design/preview.vue +75 -52
- package/src/components/hiprint/view/json-view.vue +31 -31
- package/src/components/luckysheet/dialog.vue +159 -0
- package/src/components/luckysheet/export.js +595 -0
- package/src/components/luckysheet/fileUtils.js +147 -0
- package/src/components/luckysheet/index.js +69 -0
- package/src/components/luckysheet/templateJson.js +12078 -0
- package/src/components/luckysheet/view.vue +210 -0
- package/src/components/onlineTalk/index.vue +328 -6
- package/src/components/onlineTalk/talkUserDialog.vue +280 -0
- package/src/components/wf/addTaskUserdialog.vue +5 -5
- package/src/components/wf/content.vue +1244 -1169
- package/src/components/wf/mixins/setCandidateDialog.js +228 -2
- package/src/components/wf/mixins/setCandidateDialog2.js +115 -100
- package/src/components/wf/mixins/wfTaskUserRangeDialog.js +67 -1
- package/src/components/wf/setCandidateDialog.vue +5 -7
- package/src/components/wf/setCandidateDialog2.vue +14 -10
- package/src/components/wf/wf.js +527 -411
- package/src/components/wf/wfTaskUserRangeDialog.vue +1 -1
- package/src/components/wf/wfUtil.js +129 -91
- package/src/components/xform/form-designer/designer.js +1994 -9
- package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +10 -0
- package/src/components/xform/form-designer/form-widget/container-widget/detail-pane-widget.vue +3 -2
- package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +5 -1
- package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin - /345/211/257/346/234/254.js" +1639 -0
- package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin.js +1756 -2
- package/src/components/xform/form-designer/form-widget/field-widget/baseAttachment-widget.vue +1 -0
- package/src/components/xform/form-designer/form-widget/field-widget/dropdown-item-widget.vue +10 -1
- package/src/components/xform/form-designer/form-widget/field-widget/dropdown-widget.vue +170 -0
- package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +1630 -1
- package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +153 -40
- package/src/components/xform/form-designer/form-widget/field-widget/status-widget.vue +65 -46
- package/src/components/xform/form-designer/form-widget/field-widget/vue-page-widget.vue +231 -0
- package/src/components/xform/form-designer/setting-panel/form-setting.vue +7 -4
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/edit-tree-button-group-config-dialog.vue +281 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +659 -221
- package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +133 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/event-handler/onClick-editor.vue +14 -6
- package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import-button-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/field-vue-page/vue-page-editor.vue +48 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/labelIconClass-editor.vue +18 -17
- package/src/components/xform/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue +26 -26
- package/src/components/xform/form-designer/setting-panel/property-editor/labelTooltip-editor.vue +67 -13
- package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +2 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/showViewButton-editor.vue +29 -0
- package/src/components/xform/form-designer/setting-panel/propertyRegister.js +8 -6
- package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +1 -0
- package/src/components/xform/form-render/container-item/data-table-mixin.js +20 -17
- package/src/components/xform/form-render/container-item/detail-item.vue +72 -48
- package/src/components/xform/form-render/container-item/sub-form-item.vue +10 -2
- package/src/components/xform/form-render/container-item/table2-item.vue +40 -10
- package/src/components/xform/form-render/indexMixin.js +3705 -1
- package/src/components/xform/icon-picker/icons.json +284 -0
- package/src/components/xform/icon-picker/index.vue +145 -0
- package/src/components/xform/lang/zh-CN.js +2 -1
- package/src/components/xform/mixins/defaultHandle.js +366 -2
- package/src/components/xform/utils/formula-util.js +3 -0
- package/src/components/xform/utils/sfc-generator.js +2 -2
- package/src/components/xform/utils/smart-vue-i18n/index.js +2 -1
- package/src/components/xform/utils/tableColumnHelper.js +54 -10
- package/src/components/xform/utils/util.js +1547 -1
- package/src/index.js +190 -211
- package/src/lang/locale/en/login.js +26 -19
- package/src/lang/locale/zh/login.js +25 -19
- package/src/layout/components/Sidebar/default.vue +252 -71
- package/src/layout/components/Sidebar/index.vue +6 -1
- package/src/layout/components/TagsView/index.vue +6 -0
- package/src/layout/components/langTool.vue +32 -29
- package/src/layout/defaultLayout.vue +16 -8
- package/src/layout/index.vue +5 -3
- package/src/permission.js +135 -1
- package/src/router/index.js +1 -4
- package/src/store/config/index.js +667 -1
- package/src/store/getters.js +2 -1
- package/src/store/modules/permission.js +332 -1
- package/src/store/modules/settings.js +26 -1
- package/src/store/modules/tagsView.js +190 -1
- package/src/store/modules/user.js +358 -1
- package/src/utils/aes.js +15 -1
- package/src/utils/auth.js +27 -1
- package/src/utils/componentDialog.js +217 -0
- package/src/utils/request.js +368 -1
- package/src/utils/vab.js +1256 -7
- package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
- package/src/views/bd/setting/bd_company_env/edit.vue +193 -193
- package/src/views/bd/setting/formVersion/button.vue +55 -0
- package/src/views/bd/setting/formVersion/compareBasicSection.vue +125 -0
- package/src/views/bd/setting/formVersion/compareCodeSection.vue +539 -0
- package/src/views/bd/setting/formVersion/compareContMixin.scss +65 -0
- package/src/views/bd/setting/formVersion/compareContent.vue +63 -0
- package/src/views/bd/setting/formVersion/compareDialog.vue +88 -0
- package/src/views/bd/setting/formVersion/compareMixin.js +93 -0
- package/src/views/bd/setting/formVersion/fieldCompare.vue +54 -0
- package/src/views/bd/setting/formVersion/formScriptCompareView.vue +94 -0
- package/src/views/bd/setting/formVersion/formTemplateCompareView.vue +74 -0
- package/src/views/bd/setting/formVersion/ftHistoryDialog.vue +491 -0
- package/src/views/bd/setting/formVersion/link.vue +58 -0
- package/src/views/bd/setting/formVersion/preformDialog.vue +87 -0
- package/src/views/bd/setting/formVersion/reverButton.vue +82 -0
- package/src/views/bd/setting/formVersion/tableDetailDiff.js +99 -0
- package/src/views/bd/setting/formVersion/tableModelCompareView.vue +514 -0
- package/src/views/bd/setting/formVersion/textDiff.js +102 -0
- package/src/views/bd/setting/form_import_log/edit.vue +6 -3
- package/src/views/bd/setting/form_import_log/list.vue +5 -0
- package/src/views/bd/setting/form_script/edit.vue +196 -83
- package/src/views/bd/setting/form_script/edit1.vue +410 -220
- package/src/views/bd/setting/form_script/form_list.vue +19 -0
- package/src/views/bd/setting/form_script/list.vue +95 -21
- package/src/views/bd/setting/form_script/list1.vue +24 -0
- package/src/views/bd/setting/form_script/mixins/dialog.js +2 -2
- package/src/views/bd/setting/form_script/mixins/edit.js +265 -207
- package/src/views/bd/setting/form_script/mixins/edit1.js +259 -201
- package/src/views/bd/setting/form_script/mixins/form_list.js +322 -296
- package/src/views/bd/setting/form_script/mixins/list.js +163 -95
- package/src/views/bd/setting/form_script/mixins/list1.js +244 -155
- package/src/views/bd/setting/form_script/mixins/otherAuthDialog.js +1 -1
- package/src/views/bd/setting/form_template/batchWfObjConfigDialog.vue +1 -1
- package/src/views/bd/setting/form_template/edit.vue +355 -205
- package/src/views/bd/setting/form_template/formDesignerDialog.vue +171 -0
- package/src/views/bd/setting/form_template/list.vue +49 -74
- package/src/views/bd/setting/form_template/mixins/batchWfObjConfigDialog.js +3 -3
- package/src/views/bd/setting/form_template/mixins/edit.js +51 -8
- package/src/views/bd/setting/form_template/mixins/itemList.js +1 -1
- package/src/views/bd/setting/form_template/mixins/list.js +114 -82
- package/src/views/bd/setting/form_template/mixins/list2.js +3 -3
- package/src/views/bd/setting/form_template/mixins/otherAuthDialog.js +1 -1
- package/src/views/bd/setting/form_template/mixins/wf_list.js +3 -7
- package/src/views/bd/setting/form_template/wfObjConfigDialog.vue +254 -254
- package/src/views/bd/setting/form_template/wf_list.vue +161 -127
- package/src/views/bd/setting/request_async_setting/edit.vue +320 -320
- package/src/views/bd/setting/request_setting/edit.vue +300 -300
- package/src/views/bd/setting/request_setting/list.vue +15 -25
- package/src/views/bd/setting/table_model/edit.vue +702 -498
- package/src/views/bd/setting/table_model/list.vue +28 -0
- package/src/views/bd/setting/table_model/mixins/dialog.js +1 -1
- package/src/views/bd/setting/table_model/mixins/edit copy.js +903 -0
- package/src/views/bd/setting/table_model/mixins/edit.js +228 -121
- package/src/views/bd/setting/table_model/mixins/list.js +55 -20
- package/src/views/bd/setting/table_model/mixins/otherAuthDialog.js +1 -1
- package/src/views/bd/setting/table_model/mixins/zdDialog.js +50 -46
- package/src/views/bd/setting/utils/index.js +15 -0
- package/src/views/user/api_request/list.vue +203 -203
- package/src/views/user/bill_setting/list.vue +345 -345
- package/src/views/user/code_rules/list.vue +204 -204
- package/src/views/user/common_attribute/list.vue +378 -378
- package/src/views/user/common_script/list.vue +341 -341
- package/src/views/user/company_info/dialog.vue +80 -49
- package/src/views/user/country/list.vue +197 -197
- package/src/views/user/extend_datasource/dialog.vue +0 -3
- package/src/views/user/extend_datasource/edit.vue +1 -2
- package/src/views/user/extend_datasource/list.vue +221 -224
- package/src/views/user/fieldTranslation/editDialog.vue +1 -1
- package/src/views/user/fieldTranslation/list.vue +473 -473
- package/src/views/user/field_values_invisible/list.vue +207 -207
- package/src/views/user/file_type/list.vue +271 -271
- package/src/views/user/file_view_area/list.vue +331 -331
- package/src/views/user/form/vform/designer.vue +303 -287
- package/src/views/user/form/vform/formFieldMapping.js +2 -3
- package/src/views/user/form/view/edit.vue +19 -1
- package/src/views/user/form/view/list.vue +59 -17
- package/src/views/user/groups/list.vue +158 -158
- package/src/views/user/home/default.vue +274 -182
- package/src/views/user/home/default2.vue +1148 -0
- package/src/views/user/home/index.vue +2 -1
- package/src/views/user/lang_tag/list.vue +170 -170
- package/src/views/user/language_setting/list.vue +208 -208
- package/src/views/user/ledger_library/list.vue +12 -10
- package/src/views/user/login/default.vue +1 -1
- package/src/views/user/login/indexMixin.js +204 -169
- package/src/views/user/menu/list.vue +575 -575
- package/src/views/user/notify_message/dialog.vue +7 -1
- package/src/views/user/notify_template/list.vue +192 -192
- package/src/views/user/notify_template/list2.vue +190 -190
- package/src/views/user/position/list.vue +188 -188
- package/src/views/user/project_tag/list.vue +175 -175
- package/src/views/user/push_setting/list.vue +236 -236
- package/src/views/user/request_setting/list.vue +248 -248
- package/src/views/user/role/list.vue +182 -182
- package/src/views/user/system_notice/infoDialog.vue +61 -2
- package/src/views/user/system_notice/list.vue +203 -203
- package/src/views/user/system_parameter/list.vue +141 -141
- package/src/views/user/user/edit.vue +45 -0
- package/src/views/user/user/form_list.vue +245 -245
- package/src/views/user/user/info.vue +253 -140
- package/src/views/user/user_log_classify/list.vue +197 -197
- package/src/views/user/wf/iframe/index.vue +46 -46
- package/src/views/user/wf/wfReport/index.vue +1 -1
- package/src/views/user/wf/wf_auto_submit_data/list.vue +659 -659
- package/src/views/user/wf/wf_diy_attribute/edit.vue +1 -1
- package/src/views/user/wf/wf_manage/list.vue +795 -795
- package/src/views/user/wf/wf_manage/wfContentDialog.vue +106 -106
- package/src/views/user/wf/wf_obj_config/dialog.vue +2 -2
- package/src/views/user/wf/wf_obj_config/edit.vue +1 -1
- package/src/views/user/wf/wf_obj_config/edit_form.vue +2 -2
- package/src/views/user/wf/wf_obj_config/itemEdit.vue +1 -1
- package/src/views/user/wf/wf_obj_config/itemEdit_form.vue +1 -1
- package/src/views/user/wf/wf_obj_config/itemOperateDialog.vue +4 -4
- package/src/views/user/wf/wf_obj_config/list.vue +28 -28
- package/src/views/user/wf/wf_obj_config/list_form.vue +5 -5
- package/src/views/user/wf/wf_obj_config/wfBizDataSettingDialog.vue +292 -292
- package/src/views/user/wf/wf_param/edit.vue +1 -1
- package/src/views/user/wf/wf_transfer_setting/edit.vue +1 -1
- package/src/views/user/wf/wf_transfer_setting/list.vue +321 -319
- package/src/views/user/wf/wf_work_calendar/components/calendar.vue +369 -367
- package/src/views/user/wf/wf_work_calendar/components/calendar2.vue +401 -399
- package/src/views/user/wf/wf_work_calendar/configDialog.vue +6 -6
- package/src/views/user/wf/wf_work_calendar/date.js +84 -83
- package/src/views/user/wf/wf_work_calendar/list.vue +6 -6
- package/src/views/user/workbench_menu/list.vue +555 -0
|
@@ -1,6 +1,370 @@
|
|
|
1
|
-
// import dayjs from "dayjs";
|
|
2
1
|
import moment from "moment";
|
|
3
2
|
|
|
4
3
|
let modules = {};
|
|
5
|
-
function _0x40b94e(_0x5a2122,_0x28cf98,_0x5b4130,_0x3ba039,_0x56f222){return _0x1a0e(_0x5a2122-0x347,_0x56f222);}function _0x1d54e0(_0xfd70d0,_0x212f26,_0x1b325b,_0x353cff,_0x5a5b85){return _0x1a0e(_0x212f26- -0x3b2,_0x5a5b85);}function _0x2c6f59(_0x2252bf,_0x83b59d,_0x2e97d0,_0x196368,_0xc48aac){return _0x639e(_0x2252bf- -0x2fa,_0x83b59d);}(function(_0x7e0b7,_0x3366fa){function _0x49eff0(_0x500b6d,_0x1e556a,_0x1beefa,_0xf91277,_0x27099d){return _0x639e(_0x1beefa-0x2c2,_0x500b6d);}function _0x4c2257(_0x240025,_0x39e098,_0x40a0c9,_0x55060c,_0x1265d7){return _0x1a0e(_0x55060c- -0x3c9,_0x1265d7);}function _0x4fa924(_0x44ec54,_0xa9e1f5,_0x5d7c28,_0x64068a,_0x105a89){return _0x1a0e(_0x64068a-0x1a2,_0x5d7c28);}function _0x4bacfe(_0x542f99,_0xd5794,_0x5b1a86,_0x37efb0,_0x1ed377){return _0x639e(_0x5b1a86-0x2fc,_0x37efb0);}const _0xfd08e9=_0x7e0b7();function _0x44e778(_0x26f78d,_0x51c64b,_0x186b19,_0xa542d0,_0x5b0f1b){return _0x1a0e(_0x186b19-0x2d9,_0x51c64b);}function _0x43b4ac(_0x2b7e41,_0x40a9b2,_0x87655,_0x21b0f3,_0x3829e8){return _0x1a0e(_0x87655- -0x283,_0x3829e8);}function _0x70fecd(_0x2ae24c,_0x2851bc,_0x4723d2,_0x4c803e,_0x96daa0){return _0x639e(_0x2851bc- -0x56,_0x4723d2);}function _0x6d13c5(_0xaeab6,_0x15ece8,_0x59ceda,_0x2f7f98,_0x550f1f){return _0x1a0e(_0x59ceda- -0x1dc,_0x15ece8);}function _0x1abecd(_0x3c469a,_0x3add5,_0x1a3156,_0x54bc5c,_0x2d78fa){return _0x639e(_0x3add5-0x25,_0x1a3156);}do{try{const _0x5964e5=-parseInt(_0x1abecd(0x7b,0x65,0xa0,0x75,0x4e))/0x1+-parseInt(_0x4c2257(-0x37d,-0x3a8,-0x3b3,-0x39c,"\u0028\u0076\u0062\u0067"))/0x2*(-parseInt(_0x4c2257(-0x396,-0x385,-0x3a1,-0x3c5,"\u0035\u0039\u0059\u006a"))/0x3)+parseInt(_0x43b4ac(-0x292,-0x273,-0x282,-0x2a3,"2%C6".split("").reverse().join("")))/0x4*(parseInt(_0x6d13c5(-0x190,"T[*t".split("").reverse().join(""),-0x16d,-0x166,-0x156))/0x5)+parseInt(_0x4c2257(-0x377,-0x3b4,-0x374,-0x38d,"^2W9".split("").reverse().join("")))/0x6+parseInt(_0x49eff0(0x2f3,0x29f,0x2c5,0x2ca,0x2ab))/0x7*(-parseInt(_0x43b4ac(-0x2a5,-0x23c,-0x271,-0x25e,"\u0030\u0036\u005e\u002a"))/0x8)+-parseInt(_0x4bacfe(0x32d,0x35e,0x335,0x35d,0x321))/0x9*(parseInt(_0x44e778(0x380,"\u0041\u0066\u0046\u0077",0x346,0x36e,0x370))/0xa)+parseInt(_0x4bacfe(0x39e,0x327,0x366,0x359,0x38c))/0xb;if(_0x5964e5===_0x3366fa){break;}else{_0xfd08e9['push'](_0xfd08e9["\u0073\u0068\u0069\u0066\u0074"]());}}catch(_0x2a78fe){_0xfd08e9['push'](_0xfd08e9["\u0073\u0068\u0069\u0066\u0074"]());}}while(!![]);})(_0x300c,0x97f2a);function _0x312e14(_0x1cb664,_0x25f2a1,_0x36d4f2,_0x53d7bd,_0x504565){return _0x1a0e(_0x1cb664- -0x356,_0x504565);}function _0x2bcf0d(_0x490e95,_0x41e30d,_0x144298,_0x339a82,_0x30cd0a){return _0x1a0e(_0x339a82- -0x160,_0x490e95);}function _0x639e(_0x281209,_0x300c26){const _0x639e1d=_0x300c();_0x639e=function(_0x42f6d1,_0x3b6b86){_0x42f6d1=_0x42f6d1-0x0;let _0x20163a=_0x639e1d[_0x42f6d1];if(_0x639e["\u004c\u0041\u0067\u0075\u0042\u0058"]===undefined){var _0x1f9a5a=function(_0x372433){const _0x1fbdde="\u0061\u0062\u0063\u0064\u0065\u0066\u0067\u0068\u0069\u006a\u006b\u006c\u006d\u006e\u006f\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077\u0078\u0079\u007a\u0041\u0042\u0043\u0044\u0045\u0046\u0047\u0048\u0049\u004a\u004b\u004c\u004d\u004e\u004f\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057\u0058\u0059\u005a\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037\u0038\u0039\u002b\u002f\u003d";let _0x5364ab='';let _0xe5cdf2='';for(let _0x26ebb6=0x0,_0x3f0817,_0x3195ec,_0x57e5dd=0x0;_0x3195ec=_0x372433['charAt'](_0x57e5dd++);~_0x3195ec&&(_0x3f0817=_0x26ebb6%0x4?_0x3f0817*0x40+_0x3195ec:_0x3195ec,_0x26ebb6++%0x4)?_0x5364ab+=String["\u0066\u0072\u006f\u006d\u0043\u0068\u0061\u0072\u0043\u006f\u0064\u0065"](0xff&_0x3f0817>>(-0x2*_0x26ebb6&0x6)):0x0){_0x3195ec=_0x1fbdde["\u0069\u006e\u0064\u0065\u0078\u004f\u0066"](_0x3195ec);}for(let _0x50cbd0=0x0,_0x33e0d3=_0x5364ab['length'];_0x50cbd0<_0x33e0d3;_0x50cbd0++){_0xe5cdf2+="\u0025"+("\u0030\u0030"+_0x5364ab["\u0063\u0068\u0061\u0072\u0043\u006f\u0064\u0065\u0041\u0074"](_0x50cbd0)["\u0074\u006f\u0053\u0074\u0072\u0069\u006e\u0067"](0x10))["\u0073\u006c\u0069\u0063\u0065"](-0x2);}return decodeURIComponent(_0xe5cdf2);};_0x639e["\u0066\u006e\u004e\u006e\u0058\u0047"]=_0x1f9a5a;_0x281209=arguments;_0x639e["\u004c\u0041\u0067\u0075\u0042\u0058"]=!![];}const _0x15e492=_0x639e1d[0x0];const _0x16b488=_0x42f6d1+_0x15e492;const _0x1a0e88=_0x281209[_0x16b488];if(!_0x1a0e88){_0x20163a=_0x639e["\u0066\u006e\u004e\u006e\u0058\u0047"](_0x20163a);_0x281209[_0x16b488]=_0x20163a;}else{_0x20163a=_0x1a0e88;}return _0x20163a;};return _0x639e(_0x281209,_0x300c26);}function _0x1a0e(_0x281209,_0x300c26){const _0x639e1d=_0x300c();_0x1a0e=function(_0x42f6d1,_0x3b6b86){_0x42f6d1=_0x42f6d1-0x0;let _0x20163a=_0x639e1d[_0x42f6d1];if(_0x1a0e['mPISmX']===undefined){var _0x1f9a5a=function(_0x1fbdde){const _0x5364ab="\u0061\u0062\u0063\u0064\u0065\u0066\u0067\u0068\u0069\u006a\u006b\u006c\u006d\u006e\u006f\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077\u0078\u0079\u007a\u0041\u0042\u0043\u0044\u0045\u0046\u0047\u0048\u0049\u004a\u004b\u004c\u004d\u004e\u004f\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057\u0058\u0059\u005a\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037\u0038\u0039\u002b\u002f\u003d";let _0xe5cdf2='';let _0x26ebb6='';for(let _0x3f0817=0x0,_0x3195ec,_0x57e5dd,_0x50cbd0=0x0;_0x57e5dd=_0x1fbdde["\u0063\u0068\u0061\u0072\u0041\u0074"](_0x50cbd0++);~_0x57e5dd&&(_0x3195ec=_0x3f0817%0x4?_0x3195ec*0x40+_0x57e5dd:_0x57e5dd,_0x3f0817++%0x4)?_0xe5cdf2+=String["\u0066\u0072\u006f\u006d\u0043\u0068\u0061\u0072\u0043\u006f\u0064\u0065"](0xff&_0x3195ec>>(-0x2*_0x3f0817&0x6)):0x0){_0x57e5dd=_0x5364ab["\u0069\u006e\u0064\u0065\u0078\u004f\u0066"](_0x57e5dd);}for(let _0x33e0d3=0x0,_0x4c8383=_0xe5cdf2["\u006c\u0065\u006e\u0067\u0074\u0068"];_0x33e0d3<_0x4c8383;_0x33e0d3++){_0x26ebb6+="\u0025"+("\u0030\u0030"+_0xe5cdf2['charCodeAt'](_0x33e0d3)["\u0074\u006f\u0053\u0074\u0072\u0069\u006e\u0067"](0x10))['slice'](-0x2);}return decodeURIComponent(_0x26ebb6);};const _0x372433=function(_0x4f3cdb,_0x5714e6){let _0x2fa475=[],_0x2ec9fe=0x0,_0x45b457,_0x424fd9='';_0x4f3cdb=_0x1f9a5a(_0x4f3cdb);let _0x2c0f46;for(_0x2c0f46=0x0;_0x2c0f46<0x100;_0x2c0f46++){_0x2fa475[_0x2c0f46]=_0x2c0f46;}for(_0x2c0f46=0x0;_0x2c0f46<0x100;_0x2c0f46++){_0x2ec9fe=(_0x2ec9fe+_0x2fa475[_0x2c0f46]+_0x5714e6['charCodeAt'](_0x2c0f46%_0x5714e6['length']))%0x100;_0x45b457=_0x2fa475[_0x2c0f46];_0x2fa475[_0x2c0f46]=_0x2fa475[_0x2ec9fe];_0x2fa475[_0x2ec9fe]=_0x45b457;}_0x2c0f46=0x0;_0x2ec9fe=0x0;for(let _0x9e6782=0x0;_0x9e6782<_0x4f3cdb['length'];_0x9e6782++){_0x2c0f46=(_0x2c0f46+0x1)%0x100;_0x2ec9fe=(_0x2ec9fe+_0x2fa475[_0x2c0f46])%0x100;_0x45b457=_0x2fa475[_0x2c0f46];_0x2fa475[_0x2c0f46]=_0x2fa475[_0x2ec9fe];_0x2fa475[_0x2ec9fe]=_0x45b457;_0x424fd9+=String['fromCharCode'](_0x4f3cdb['charCodeAt'](_0x9e6782)^_0x2fa475[(_0x2fa475[_0x2c0f46]+_0x2fa475[_0x2ec9fe])%0x100]);}return _0x424fd9;};_0x1a0e['pRQQOK']=_0x372433;_0x281209=arguments;_0x1a0e['mPISmX']=!![];}const _0x15e492=_0x639e1d[0x0];const _0x16b488=_0x42f6d1+_0x15e492;const _0x1a0e88=_0x281209[_0x16b488];if(!_0x1a0e88){if(_0x1a0e['kVHLLc']===undefined){_0x1a0e["\u006b\u0056\u0048\u004c\u004c\u0063"]=!![];}_0x20163a=_0x1a0e['pRQQOK'](_0x20163a,_0x3b6b86);_0x281209[_0x16b488]=_0x20163a;}else{_0x20163a=_0x1a0e88;}return _0x20163a;};return _0x1a0e(_0x281209,_0x300c26);}function ErThvI(_0x219bd0,_0x4121d8){if(!![]!=![])return;ErThvI=function(_0x4bfc90,_0x58439d){_0x4bfc90=_0x4bfc90-(0x973c9^0x973c9);var _0x10e486=_0x5e50e6[_0x4bfc90];return _0x10e486;};return ErThvI(_0x219bd0,_0x4121d8);}ErThvI();function KGrrlm(_0x4c8383,_0x4f3cdb){if(!![]!=![])return;KGrrlm=function(_0x5714e6,_0x2fa475){_0x5714e6=_0x5714e6-(0x973c9^0x973c9);var _0x2ec9fe=_0x5e50e6[_0x5714e6];return _0x2ec9fe;};return KGrrlm(_0x4c8383,_0x4f3cdb);}KGrrlm();function _0x42ea9d(_0x25912e,_0x327ed6,_0x5c3971,_0x48b0ac,_0x50a017){return _0x1a0e(_0x327ed6- -0x31d,_0x25912e);}modules={'data'(){return{'timerMap':{}};},"\u0062\u0065\u0066\u006f\u0072\u0065\u0044\u0065\u0073\u0074\u0072\u006f\u0079"(){for(let _0x1facff in this['timerMap']){this["\u0063\u006c\u0065\u0061\u0072\u0049\u006e\u0074\u0065\u0072\u0076\u0061\u006c"](_0x1facff);}},"\u006d\u0065\u0074\u0068\u006f\u0064\u0073":{"\u0061\u0064\u0064\u0046\u006f\u0072\u006d\u0061\u0074\u0044\u0061\u0074\u0065"(_0x4e450a,_0x4aba5e){function _0x3f8f39(_0x586fca,_0x16fc1a,_0x3aae90,_0xfbf2d0,_0x53732a){return _0x1a0e(_0xfbf2d0-0x36e,_0x16fc1a);}const _0x553b99={"\u0066\u0044\u004c\u004c\u0066":_0x29a2a3(-0x14e,-0x137,-0x183,-0x183,-0x17c)};if(!_0x4e450a)return _0x4e450a;function _0x29a2a3(_0x159286,_0x184b55,_0x175ce4,_0x5df3fc,_0x27e250){return _0x639e(_0x159286- -0x176,_0x175ce4);}return moment(_0x4e450a)["\u0061\u0064\u0064"](_0x4aba5e,_0x553b99["\u0066\u0044\u004c\u004c\u0066"])['format'](_0x3f8f39(0x3da,"TNjX".split("").reverse().join(""),0x40e,0x3e6,0x3f4));},"\u0066\u006f\u0072\u006d\u0061\u0074\u0044\u0061\u0074\u0065"(_0x373feb){function _0x170723(_0x4bb35c,_0x10c765,_0x38c868,_0x4e1782,_0x3afcfb){return _0x639e(_0x4bb35c- -0x134,_0x10c765);}const _0x1f039b={'CyNFy':function(_0x2aa707,_0x39457e){return _0x2aa707(_0x39457e);}};if(!_0x373feb)return _0x373feb;return _0x1f039b["\u0043\u0079\u004e\u0046\u0079"](moment,_0x373feb)['format'](_0x170723(-0xf2,-0x100,-0x119,-0xc6,-0xd1));},"\u0066\u006f\u0072\u006d\u0061\u0074\u0044\u0061\u0074\u0065\u0054\u0069\u006d\u0065"(_0x3b970c,_0x54aafd=_0x1d54e0(-0x345,-0x358,-0x356,-0x379,"\u0071\u004f\u0061\u0077")){const _0x5284c5={"\u0042\u0041\u004a\u0052\u0043":function(_0x413c0d,_0x64cd5d){return _0x413c0d(_0x64cd5d);}};if(!_0x3b970c)return _0x3b970c;return _0x5284c5["\u0042\u0041\u004a\u0052\u0043"](moment,_0x3b970c)['format'](_0x54aafd);},'getFormEntityData'(_0x4b42af){let _0x348547=this["\u0067\u0065\u0074\u0046\u006f\u0072\u006d\u0052\u0065\u0066"]?this['getFormRef']():this;let _0x90bdf4=_0x348547["\u0066\u006f\u0072\u006d\u0043\u006f\u006e\u0066\u0069\u0067"];let _0x55a830=_0x90bdf4["\u0065\u006e\u0074\u0069\u0074\u0079"];if(!_0x4b42af)_0x4b42af=this['getReqFormData']();return _0x4b42af["\u0064\u0061\u0074\u0061"][_0x55a830];},"\u0067\u0065\u0074\u0052\u0065\u0071\u0046\u006f\u0072\u006d\u0044\u0061\u0074\u0061"(){let _0x8d57c4=this["\u0067\u0065\u0074\u0046\u006f\u0072\u006d\u0052\u0065\u0066"]?this['getFormRef']():this;let _0x49ab4f=_0x8d57c4['formConfig'];let _0x4b7c49=_0x49ab4f["\u0065\u006e\u0074\u0069\u0074\u0079"];if(!_0x4b7c49)return;let _0x5a2930=_0x8d57c4?.["\u0064\u0061\u0074\u0061\u0049\u0064"];let _0x57fe00=_0x8d57c4?.["\u0072\u0065\u0070\u006f\u0072\u0074\u0054\u0065\u006d\u0070\u006c\u0061\u0074\u0065"];let _0x36a848=_0x57fe00?.["\u0066\u006f\u0072\u006d\u0043\u006f\u0064\u0065"];let _0x4e760a=this['$baseLodash']['cloneDeep'](_0x8d57c4["\u0067\u0065\u0074\u0052\u0065\u0061\u006c\u0046\u006f\u0072\u006d\u0044\u0061\u0074\u0061"]());let _0x164c82=_0x4e760a[_0x36a848]||{};delete _0x4e760a[_0x36a848];_0x4e760a[_0x4b7c49]=_0x164c82;delete _0x164c82["\u005f\u0063\u0072\u0065\u0061\u0074\u0065\u004e\u0069\u0063\u006b\u004e\u0061\u006d\u0065"];delete _0x164c82["\u005f\u0063\u0072\u0065\u0061\u0074\u0065\u004d\u006f\u0062\u0069\u006c\u0065"];delete _0x164c82["\u005f\u006d\u006f\u0064\u0069\u0066\u0079\u004e\u0069\u0063\u006b\u004e\u0061\u006d\u0065"];delete _0x164c82['_modifyMobile'];delete _0x164c82['_createBy'];delete _0x164c82['_modifyBy'];let _0x1722ff={"\u0066\u006f\u0072\u006d\u0043\u006f\u0064\u0065":_0x36a848,'formVersion':_0x57fe00['formVersion'],"\u0074\u0061\u0042\u006d":_0x4b7c49,"\u0064\u0061\u0074\u0061":_0x4e760a};return _0x1722ff;},"\u0073\u0061\u0076\u0065\u0044\u0065\u0066\u0061\u0075\u006c\u0074\u0048\u0061\u006e\u0064\u006c\u0065"(_0x2f65ca){let _0xe9dec6=this["\u0067\u0065\u0074\u0046\u006f\u0072\u006d\u0052\u0065\u0066"]?this["\u0067\u0065\u0074\u0046\u006f\u0072\u006d\u0052\u0065\u0066"]():this;let _0x29c3cd=_0xe9dec6["\u0066\u006f\u0072\u006d\u0043\u006f\u006e\u0066\u0069\u0067"];let _0x4af272=_0x29c3cd['entity'];if(!_0x4af272)return;function _0x4a9326(_0x54ce07,_0xe0fce3,_0x30e581,_0x4c3b66,_0x4817c4){return _0x639e(_0x4c3b66- -0x6b,_0x30e581);}let _0x4fdd0f=_0xe9dec6?.["\u0064\u0061\u0074\u0061\u0049\u0064"];let _0x33f1ad=_0xe9dec6?.["etalpmeTtroper".split("").reverse().join("")];let _0x20a271=_0x33f1ad?.["edoCmrof".split("").reverse().join("")];let _0x17b8c8=_0x29c3cd['saveScriptCode']||_0x4a9326(-0x79,-0x54,-0x46,-0x3b,-0x5a);let _0x59ffe8=_0x2f65ca?.["\u0063\u006f\u006e\u0066\u0069\u0067"];_0xe9dec6["\u0076\u0061\u006c\u0069\u0064\u0061\u0074\u0065"](_0x1b4e7f=>{function _0x4a2891(_0x20458e,_0x1e0942,_0x3f80e4,_0x47df63,_0x433105){return _0x639e(_0x47df63-0xee,_0x433105);}if(_0x1b4e7f){let _0x300c6a=this['getReqFormData']();this['formHttp']({'scriptCode':_0x17b8c8,"\u0064\u0061\u0074\u0061":_0x300c6a,"\u0073\u0075\u0063\u0063\u0065\u0073\u0073\u004d\u0073\u0067":!![],"\u0069\u0073\u0043\u006f\u006e\u0066\u0069\u0072\u006d":!![],'confirmText':this["\u0024\u0074\u0031"](_0x4a2891(0x147,0x10c,0x138,0x134,0x119)),'success':_0x4f1d8c=>{let _0x5589f1=_0x29c3cd["\u0065\u0064\u0069\u0074\u0046\u006f\u0072\u006d\u0043\u006f\u0064\u0065"];let _0x5c9f7b={"\u0064\u0061\u0074\u0061\u0049\u0064":_0x4f1d8c["\u006f\u0062\u006a\u0078"]};if(_0x5589f1){_0x5c9f7b['formCode']=_0x5589f1;}_0xe9dec6['reloadForm']({"\u0075\u0070\u0064\u0061\u0074\u0065\u0050\u0061\u0072\u0061\u006d":_0x5c9f7b});},..._0x59ffe8});}});},"\u0073\u0065\u0074\u0049\u006e\u0074\u0065\u0072\u0076\u0061\u006c"(_0x3758d4,_0x1f7140){let _0x1b9f07=setInterval(_0x3758d4,_0x1f7140);this["\u0074\u0069\u006d\u0065\u0072\u004d\u0061\u0070"][_0x1b9f07]=_0x1b9f07;},'clearInterval'(_0x5c89aa){const _0x528e00={'SBfHR':function(_0x1bd041,_0x5c47df){return _0x1bd041(_0x5c47df);}};_0x528e00["\u0053\u0042\u0066\u0048\u0052"](clearInterval,_0x5c89aa);delete this["\u0074\u0069\u006d\u0065\u0072\u004d\u0061\u0070"][_0x5c89aa];},"\u0067\u0065\u0074\u0047\u006c\u006f\u0062\u0061\u006c\u0043\u006f\u006e\u0066\u0069\u0067"(){let _0x52cf1f=this['getFormRef']?this["\u0067\u0065\u0074\u0046\u006f\u0072\u006d\u0052\u0065\u0066"]():this;return _0x52cf1f['globalConfig'];},"\u0067\u0065\u0074\u0046\u006f\u0072\u006d\u0050\u0061\u0072\u0061\u006d"(){let _0xf2365c=this['getFormRef']?this['getFormRef']():this;return _0xf2365c["\u0070\u0061\u0072\u0061\u006d"];},'setGlobalParam'(_0x15d0d5,_0x2e4f68){let _0x46074b=this['getFormRef']?this['getFormRef']():this;_0x46074b['globalParam'][_0x15d0d5]=_0x2e4f68;},'getGlobalParam'(_0x5959f3){let _0x1f00d0=this["\u0067\u0065\u0074\u0046\u006f\u0072\u006d\u0052\u0065\u0066"]?this["\u0067\u0065\u0074\u0046\u006f\u0072\u006d\u0052\u0065\u0066"]():this;return _0x1f00d0['globalParam'][_0x5959f3];},"\u0064\u0065\u006c\u0065\u0074\u0065\u004e\u0075\u006d\u0052\u006f\u0077\u0073"(_0x53255,_0x59115d,_0x4d7dce=_0x312e14(-0x30d,-0x31f,-0x2ff,-0x301,"\u006a\u0023\u005d\u0050")){const _0x5ce0a6={"\u0074\u0043\u0074\u0067\u0073":function(_0x24eef2,_0x15a50d){return _0x24eef2+_0x15a50d;},"\u004b\u0057\u0061\u006f\u006d":function(_0x2a8a7e,_0x1677a4){return _0x2a8a7e^_0x1677a4;}};if(_0x59115d<_0x5ce0a6['KWaom'](0x46162,0x46162)||_0x59115d>=_0x53255["\u006c\u0065\u006e\u0067\u0074\u0068"]){return[..._0x53255];}const _0x1ffdd3=[..._0x53255];_0x1ffdd3["\u0073\u0070\u006c\u0069\u0063\u0065"](_0x59115d,0xf1391^0xf1390);_0x1ffdd3["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"]((_0x10a0fc,_0x2918c3)=>{_0x10a0fc[_0x4d7dce]=_0x5ce0a6['tCtgs'](_0x2918c3,0x20139^0x20138);});return _0x1ffdd3;},"\u0069\u006e\u0073\u0065\u0072\u0074\u004e\u0075\u006d\u0052\u006f\u0077\u0073"(_0xfa77ba,_0x562b0b,_0x3dac06=_0xfa77ba["\u006c\u0065\u006e\u0067\u0074\u0068"],_0x1b7de9=_0x40b94e(0x39b,0x3c3,0x39d,0x3ac,"\u005a\u0068\u0037\u0025")){const _0x27bece={"\u007a\u0070\u0045\u0075\u0076":function(_0x1bee70,_0x514214){return _0x1bee70!==_0x514214;},'CLfTU':function(_0x4ec8a5,_0x2a4329){return _0x4ec8a5^_0x2a4329;}};const _0x5aa274=Array['isArray'](_0x562b0b)?_0x562b0b:[_0x562b0b];_0x3dac06=Math["\u006d\u0061\u0078"](0xdd4f8^0xdd4f8,Math["\u006d\u0069\u006e"](_0x3dac06,_0xfa77ba["\u006c\u0065\u006e\u0067\u0074\u0068"]));const _0x419722=[..._0xfa77ba];const _0x16936c=_0x5aa274["\u006d\u0061\u0070"](_0x5a2fb4=>{const _0x4c73ae={..._0x5a2fb4};if(_0x27bece["\u007a\u0070\u0045\u0075\u0076"](_0x4c73ae[_0x1b7de9],undefined)){delete _0x4c73ae[_0x1b7de9];}return _0x4c73ae;});_0x419722["\u0073\u0070\u006c\u0069\u0063\u0065"](_0x3dac06,_0x27bece["\u0043\u004c\u0066\u0054\u0055"](0x8ba3e,0x8ba3e),..._0x16936c);_0x419722['forEach']((_0x4af2b9,_0x592170)=>{_0x4af2b9[_0x1b7de9]=_0x592170+_0x27bece["\u0043\u004c\u0066\u0054\u0055"](0xb5887,0xb5886);});return _0x419722;},'insertRelRows'(_0x590e23,_0x21e888,_0x104b30,_0x123155=[],_0x534c7d,_0x396458=_0x42ea9d("\u0041\u0048\u005b\u0043",-0x2c6,-0x29b,-0x293,-0x28a),_0x4d2966=_0x2bcf0d("9gc4".split("").reverse().join(""),-0xfd,-0xee,-0xed,-0xdd)){const _0x3bf72e={"\u0043\u0077\u004c\u0045\u005a":function(_0x56c179,_0x3af292){return _0x56c179^_0x3af292;},'xcrxf':function(_0x12575f,_0x45a2d8){return _0x12575f!==_0x45a2d8;},'vpjoL':function(_0x195f9d,_0x56e1a0){return _0x195f9d>_0x56e1a0;},"\u004c\u0079\u0057\u0042\u0046":function(_0x95cc67,_0x973463){return _0x95cc67===_0x973463;},"\u006f\u0065\u006e\u006f\u0045":function(_0x5aa7e4,_0x5bb155){return _0x5aa7e4<_0x5bb155;},"\u0070\u0070\u0058\u006c\u0045":function(_0x30da32,_0x2cc8ae){return _0x30da32+_0x2cc8ae;}};const _0x5f8c33=Array["\u0069\u0073\u0041\u0072\u0072\u0061\u0079"](_0x104b30)?_0x104b30:[_0x104b30];const _0x2ec080=Array["\u0069\u0073\u0041\u0072\u0072\u0061\u0079"](_0x123155)&&_0x3bf72e["\u0076\u0070\u006a\u006f\u004c"](_0x123155['length'],0x286ec^0x286ec)&&Array["\u0069\u0073\u0041\u0072\u0072\u0061\u0079"](_0x123155[0xc24a8^0xc24a8])?_0x123155:[_0x123155];if(_0x534c7d===null||_0x3bf72e['LyWBF'](_0x534c7d,undefined)){_0x534c7d=_0x590e23["\u006c\u0065\u006e\u0067\u0074\u0068"];}_0x534c7d=Math["\u006d\u0061\u0078"](_0x3bf72e['CwLEZ'](0xed0b8,0xed0b8),Math["\u006d\u0069\u006e"](_0x534c7d,_0x590e23["\u006c\u0065\u006e\u0067\u0074\u0068"]));const _0x372017=[..._0x590e23];const _0x20862b=[..._0x21e888];const _0x5f4e2f=_0x5f8c33["\u006d\u0061\u0070"](_0x458a28=>{const _0x1a3d78={..._0x458a28};if(_0x1a3d78[_0x396458]!==undefined){delete _0x1a3d78[_0x396458];}return _0x1a3d78;});_0x372017["\u0073\u0070\u006c\u0069\u0063\u0065"](_0x534c7d,0x4b690^0x4b690,..._0x5f4e2f);const _0x52cd6a={};_0x372017["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"]((_0xf60b46,_0x4aef40)=>{const _0x13448c=_0x4aef40+_0x3bf72e["\u0043\u0077\u004c\u0045\u005a"](0x91874,0x91875);const _0x333cd2=_0xf60b46[_0x396458];if(_0x3bf72e["\u0078\u0063\u0072\u0078\u0066"](_0x333cd2,undefined)){_0x52cd6a[_0x333cd2]=_0x13448c;}_0xf60b46[_0x396458]=_0x13448c;});const _0x57a7df=[];for(let _0x116f7f=0x23021^0x23021;_0x3bf72e['oenoE'](_0x116f7f,_0x5f8c33['length']);_0x116f7f++){_0x57a7df["\u0070\u0075\u0073\u0068"](_0x3bf72e['ppXlE'](_0x534c7d,_0x116f7f)+_0x3bf72e["\u0043\u0077\u004c\u0045\u005a"](0x70306,0x70307));}_0x20862b["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"](_0x312ecc=>{const _0x370964=_0x312ecc[_0x4d2966];if(_0x3bf72e["\u0078\u0063\u0072\u0078\u0066"](_0x52cd6a[_0x370964],undefined)){_0x312ecc[_0x4d2966]=_0x52cd6a[_0x370964];}});_0x2ec080["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"]((_0x4e7f31,_0x163ef9)=>{const _0x4977fa=_0x57a7df[_0x163ef9];if(Array['isArray'](_0x4e7f31)&&_0x4e7f31["\u006c\u0065\u006e\u0067\u0074\u0068"]>(0x62184^0x62184)){_0x4e7f31['forEach'](_0x3dc3e7=>{const _0x326593={..._0x3dc3e7};_0x326593[_0x4d2966]=_0x4977fa;_0x20862b["\u0070\u0075\u0073\u0068"](_0x326593);});}});return{'list1':_0x372017,"\u006c\u0069\u0073\u0074\u0032":_0x20862b};},"\u0064\u0065\u006c\u0065\u0074\u0065\u0052\u0065\u006c\u0052\u006f\u0077\u0073"(_0x4f5982,_0x4bdc52,_0x1c614d,_0x3a89f0=_0x40b94e(0x35a,0x398,0x319,0x354,"\u0077\u007a\u005e\u0063"),_0x2c38bf=_0x2c6f59(-0x2d1,-0x30a,-0x2ba,-0x300,-0x2c0)){const _0x3cb651={"\u0059\u0075\u0074\u0058\u0043":function(_0x58f32e,_0x3087c3){return _0x58f32e>=_0x3087c3;},'JKIVG':function(_0x333a05,_0x1c9ec8){return _0x333a05^_0x1c9ec8;},'XQssO':function(_0x3e233f,_0x5393b7){return _0x3e233f-_0x5393b7;},"\u0046\u006c\u0072\u0071\u0072":function(_0x2868e0,_0x284b56){return _0x2868e0^_0x284b56;}};if(_0x1c614d<(0x2d70f^0x2d70f)||_0x3cb651['YutXC'](_0x1c614d,_0x4f5982['length'])){return{'masters':[..._0x4f5982],"\u0073\u006c\u0061\u0076\u0065\u0073":[..._0x4bdc52]};}const _0x51e0e6=[..._0x4f5982];const _0x12e794=[..._0x4bdc52];const[_0x5af087]=_0x51e0e6["\u0073\u0070\u006c\u0069\u0063\u0065"](_0x1c614d,_0x3cb651["\u004a\u004b\u0049\u0056\u0047"](0x79919,0x79918));const _0x156090=_0x5af087[_0x3a89f0];for(let _0x1af013=_0x3cb651['XQssO'](_0x12e794["\u006c\u0065\u006e\u0067\u0074\u0068"],_0x3cb651['Flrqr'](0x1ab3f,0x1ab3e));_0x1af013>=(0x66c64^0x66c64);_0x1af013--){if(_0x12e794[_0x1af013][_0x2c38bf]===_0x156090){_0x12e794["\u0073\u0070\u006c\u0069\u0063\u0065"](_0x1af013,0x980c1^0x980c0);}}const _0x35beb2={};_0x51e0e6["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"]((_0x35aef3,_0x5d05c5)=>{const _0x4a70e8=_0x35aef3[_0x3a89f0];const _0x30ce7b=_0x5d05c5+(0x71784^0x71785);_0x35beb2[_0x4a70e8]=_0x30ce7b;_0x35aef3[_0x3a89f0]=_0x30ce7b;});_0x12e794["\u0066\u006f\u0072\u0045\u0061\u0063\u0068"](_0x1c2dc4=>{const _0x52121=_0x1c2dc4[_0x2c38bf];if(_0x35beb2[_0x52121]!==undefined){_0x1c2dc4[_0x2c38bf]=_0x35beb2[_0x52121];}});return{"\u006c\u0069\u0073\u0074\u0031":_0x51e0e6,"\u006c\u0069\u0073\u0074\u0032":_0x12e794};}}};function _0x300c(){const _0x120776=["\u006a\u006d\u006f\u0045\u0066\u0067\u0043\u0055\u0045\u0043\u006b\u006c","\u006e\u0064\u0068\u0063\u0051\u0071","\u0071\u0033\u0044\u006d\u0072\u0076\u004f","80CZffw".split("").reverse().join(""),"\u006f\u004d\u0068\u0063\u0053\u0047","Krwy".split("").reverse().join(""),"\u0041\u0078\u006e\u0062\u0043\u004e\u006a\u0048\u0045\u0071","\u0057\u0037\u0078\u0064\u0056\u0065\u004a\u0064\u004b\u0053\u006f\u0070\u0057\u0050\u004b\u004b\u0057\u0050\u0072\u0063\u0057\u0051\u0042\u0063\u0049\u0043\u006b\u0046\u0057\u0036\u0057\u006c\u0074\u0078\u0074\u0064\u004e\u0072\u0064\u0064\u0047\u0061","KLuy0fgz".split("").reverse().join(""),"9uQWOW7WnH6WOkmHdFGp".split("").reverse().join(""),"WLcF6Wlv3JcJxi4WdUcxJKdNhA".split("").reverse().join(""),"SoCUdN7WkoSNcR5W8omUc/aMcF1KcB5W".split("").reverse().join(""),"\u0057\u0051\u0071\u004d\u0057\u0051\u0070\u0064\u004f\u0043\u006b\u006b","\u006b\u006d\u006b\u0072\u0057\u0037\u0031\u0069\u0057\u0034\u0038","x0QWwb7WbkmzQPPWlomu".split("").reverse().join(""),"\u0057\u0051\u004f\u0044\u0067\u0032\u0064\u0063\u0053\u006d\u006b\u0058\u006f\u0038\u006b\u0031\u0057\u0036\u0030\u0052","\u0074\u0068\u004c\u0078\u0071\u004b\u0079","iq3l6omc".split("").reverse().join(""),"aEPoSsgkCmVnhCGS4W".split("").reverse().join(""),"\u007a\u004d\u0039\u0059\u0072\u0077\u0066\u004a\u0041\u0061","\u0057\u0052\u006e\u004c\u0061\u0053\u006f\u004d\u0057\u0034\u0079\u0050\u0057\u0035\u005a\u0063\u0047\u0061\u004a\u0063\u0047\u006d\u006f\u0058\u0043\u0061","\u0071\u004b\u0066\u006b\u0075\u004b\u006d","i4WbkmJdJqRct0Ocxuk".split("").reverse().join(""),"8uALf1urfdm2edmYGtm".split("").reverse().join(""),"FkmCNkSNcVNn".split("").reverse().join(""),"1bxUdZuVdpcpwoSRdZOW".split("").reverse().join(""),"\u0057\u0052\u0062\u0047\u0079\u006d\u006b\u0054\u0057\u0052\u0058\u0031\u0057\u0034\u0078\u0063\u004c\u0047","\u0072\u004d\u0058\u0059\u0043\u0078\u0069","iPW+k8GcB4WTkSiYk8l".split("").reverse().join(""),"C7WmSOW15vmqoCSdh7W".split("").reverse().join(""),"\u0044\u004d\u006c\u0064\u004f\u0068\u0050\u004d\u0057\u0036\u004e\u0063\u0054\u0067\u0074\u0064\u004f\u0066\u0038","\u0041\u0038\u006f\u0050\u0057\u0034\u0078\u0063\u0053\u0053\u006f\u0053\u0057\u0034\u0043\u0047","\u0057\u0050\u004e\u0064\u0054\u006d\u006f\u0075\u006e\u0062\u006c\u0064\u004a\u0076\u0068\u0064\u0055\u004d\u0047","Or3zUvgB".split("").reverse().join(""),"u0BUv2B".split("").reverse().join(""),"FoSdADXF".split("").reverse().join(""),"\u007a\u0032\u0076\u0030\u0075\u004d\u0076\u0048\u0042\u0065\u007a\u0056\u0043\u004d\u0031\u0065\u0079\u0078\u0072\u0048","\u006e\u0053\u006f\u0047\u0057\u0051\u0035\u0034\u0072\u0053\u006b\u004e\u0072\u0053\u006f\u0032\u0057\u0052\u0070\u0063\u0052\u0057","\u0057\u0051\u0043\u0075\u0042\u0038\u006b\u0079\u0057\u0050\u0069\u0074\u0072\u004e\u0065","9zWVcdPWGm4W".split("").reverse().join(""),"8sUddWbJjRW+k8LdRQWgaOW".split("").reverse().join(""),"\u006d\u004a\u0079\u0030\u006d\u004a\u0065\u0035\u006d\u004d\u0054\u004f\u007a\u0078\u0048\u0069\u0079\u0047","\u0043\u0063\u0033\u0063\u0047\u0053\u006b\u0052","\u0078\u0032\u0031\u0056\u007a\u0067\u004c\u004d\u0045\u0075\u0031\u0056\u0079\u004d\u004c\u0053\u007a\u0071","\u0044\u0067\u004c\u0054\u007a\u0078\u006a\u006e\u0079\u0078\u0061","JKPWTkmDon7W".split("").reverse().join(""),"\u007a\u004d\u0039\u0059\u0042\u0077\u0066\u0030","YoSwBo8h8oSUdV4WpkCCLy2k".split("").reverse().join(""),"\u007a\u0074\u0042\u0063\u0048\u0043\u006b\u0051\u0057\u0037\u0074\u0064\u004f\u0071","\u006e\u0032\u0050\u004d\u0043\u004c\u004c\u006a\u0079\u0047","\u0057\u0035\u007a\u0043\u0057\u0037\u0033\u0063\u004a\u006d\u006b\u0076\u0057\u004f\u0050\u002b\u0070\u0047\u0052\u0064\u004b\u0061","\u0044\u0064\u006a\u004d","ugDHXgCTvgv0j3BWvMC".split("").reverse().join(""),"\u0057\u004f\u0061\u0070\u0057\u0052\u0068\u0064\u0053\u0038\u006b\u0057\u0057\u0051\u0058\u0045\u006e\u0062\u0046\u0064\u0056\u0047","GvwXoCLctITcFOWSu4WJoCbKvRW".split("").reverse().join(""),"\u0067\u0071\u0043\u006d\u0057\u0037\u0070\u0064\u0054\u0078\u0068\u0063\u004c\u0053\u006f\u0071\u0057\u004f\u004e\u0063\u004f\u0061","\u007a\u0077\u0035\u0030\u0041\u0078\u0072\u0035","\u0045\u0067\u006e\u0059\u0045\u0067\u0079","\u007a\u004d\u0039\u0059\u0042\u0075\u006e\u0056\u007a\u0067\u0075","qAVLPW".split("").reverse().join(""),"\u0043\u0033\u0062\u0053\u0041\u0077\u006e\u004c","\u0057\u0034\u006d\u0030\u006a\u0053\u006b\u0066\u006e\u004b\u0030\u0057","\u006a\u0068\u0071\u0058","\u0057\u0051\u0030\u0055\u0057\u0034\u0044\u0063\u0057\u0037\u0075","Wo8d20RWzi7WFW2KcJYuxj6W".split("").reverse().join(""),"\u0041\u0078\u004e\u0064\u004b\u0057","\u0042\u0043\u006b\u0035\u0065\u006d\u006b\u0077\u0057\u0034\u0046\u0063\u0053\u0071\u0043","W4WzePWGkCB".split("").reverse().join(""),"\u0070\u0075\u0052\u0064\u0054\u004e\u004a\u0063\u0055\u0067\u0075","\u006d\u0074\u0062\u0072\u0045\u0065\u0058\u004f\u0043\u0076\u0043","\u0044\u0064\u0050\u0034","07Wp16WB0RW".split("").reverse().join(""),"\u0057\u0037\u006a\u0057\u0076\u0076\u007a\u0046","\u0043\u0043\u006f\u0078\u0070\u006d\u006f\u0037\u006c\u0031\u004a\u0063\u004c\u0043\u006f\u0048\u0041\u0062\u004f\u0036\u0043\u004d\u0066\u0030\u0077\u0071","W0BQbND".split("").reverse().join(""),"42BPnNCLzvBY9Mz".split("").reverse().join(""),"GA7o8vvoCp".split("").reverse().join(""),"\u0057\u0034\u0069\u0033\u006f\u0038\u006b\u0049\u006e\u004b\u0069\u0042\u0057\u0035\u0031\u0032\u0061\u0068\u0071\u0066","GzLjvBY9Mr0v2z".split("").reverse().join(""),"\u006d\u0074\u0061\u0034\u006f\u0067\u0031\u006f\u0076\u0076\u0062\u004f\u0044\u0071","\u0071\u0030\u0058\u004d\u0076\u0066\u0075","0wyYfgC".split("").reverse().join(""),"dkmiHbNDQO4W".split("").reverse().join(""),"\u0042\u0077\u0066\u0034","qOWfKbPcpMTcpfSddep".split("").reverse().join(""),"L1wyoT2yP5uz0fwzYn2x".split("").reverse().join(""),"\u007a\u0067\u0066\u0035\u0043\u0057","Xv2CFjxzWv3C".split("").reverse().join(""),"\u0043\u0032\u002f\u0064\u004f\u0059\u004a\u0063\u0055\u0063\u004b\u0076","\u0057\u0052\u0030\u0065\u0057\u004f\u0044\u0042\u0042\u0066\u002f\u0063\u004f\u006d\u006b\u0041\u0074\u004e\u0034\u0045","\u007a\u004d\u0039\u0059\u0042\u0075\u006e\u0056\u0042\u004d\u007a\u0050\u007a\u0057","3mtHdVINcJ5WCoCA6oCn".split("").reverse().join(""),"a4W/oSuokmAGqMeuoCj".split("").reverse().join(""),"\u0057\u0036\u0037\u0064\u0053\u0043\u006b\u0063\u0074\u0038\u006b\u006e\u0057\u0050\u004b","qz0fgzWvvz2f2C".split("").reverse().join(""),"WyjkScKvOWwoCc".split("").reverse().join(""),"\u0042\u0032\u006a\u0051\u0045\u0061","qzSLMyV1uz0fwzYn2x".split("").reverse().join(""),"ugzVneDWLMCJnvz2f2C".split("").reverse().join(""),"\u0069\u0064\u0068\u0063\u0052\u0061\u0076\u0064\u0057\u0034\u002f\u0063\u004c\u0067\u0037\u0064\u0056\u0078\u0065","m4WBomQdh6WD17WDkSn".split("").reverse().join(""),"GuD1r4W".split("").reverse().join(""),"\u007a\u0067\u0066\u0030\u0079\u0071","qBVD2B2D3mXuJn0qdn".split("").reverse().join(""),"Lr2Bd1MCVzeDPrwz".split("").reverse().join(""),"\u0057\u0035\u006c\u0063\u004d\u004b\u0042\u0063\u0056\u0058\u006c\u0063\u0047\u0038\u006f\u002f\u0057\u0037\u005a\u0063\u004e\u0053\u006f\u0045","47Wuo8JcN4WFoCVdxbk7kSiCkmC".split("").reverse().join(""),"\u0078\u0032\u0031\u0056\u007a\u0067\u004c\u004d\u0045\u0075\u006a\u0035","\u0078\u0053\u006f\u002b\u0062\u0043\u006b\u005a\u0057\u0035\u0075","\u0079\u0032\u0039\u0055\u007a\u004d\u004c\u004e","\u006f\u0074\u0079\u0059\u006e\u005a\u0065\u0033\u0076\u0076\u006e\u0048\u0042\u004d\u0031\u004e","\u006d\u0030\u0057\u0052\u0057\u0050\u0072\u0055\u0057\u0052\u0030\u002f\u0057\u0036\u0071\u0044\u0057\u0052\u0047","\u0077\u0076\u004c\u007a\u0077\u0073\u0031\u006e\u0074\u0073\u0031\u0065\u0072\u0061","\u0057\u0036\u0035\u004c\u0079\u0031\u0031\u0055\u0057\u0034\u0047","yOWno8kI1dF".split("").reverse().join(""),"ugDHrwASfMD".split("").reverse().join(""),"\u0035\u004f\u006b\u004f\u0035\u0036\u0067\u0055\u0035\u0041\u0036\u0041\u0036\u006b\u0041\u0062\u0035\u006c\u002b\u0044\u0035\u0041\u0032\u0079\u0035\u007a\u0063\u0078\u0037\u0037\u0059\u0046","\u0057\u0037\u0069\u0047\u0078\u0043\u006b\u0038\u0057\u0050\u006e\u0034","\u0057\u0036\u0057\u0058\u0071\u0071","\u0057\u0035\u0038\u0047\u0044\u0071","egDHruBY9MrXvMu0v2z".split("").reverse().join(""),"\u0057\u0051\u0033\u0064\u004e\u0043\u006b\u004d\u0057\u0050\u0031\u0034\u0057\u0037\u0072\u0052\u006d\u0057\u004e\u0063\u0055\u006d\u006f\u0058\u006e\u0061","Lkmxqo8Nct5W".split("").reverse().join(""),"RkmUcN4WIkCUddrRcpKVcRue".split("").reverse().join(""),"\u006c\u0073\u0068\u0064\u0048\u006d\u006b\u006a\u0057\u0037\u0071","\u0057\u0035\u002f\u0064\u004c\u0078\u0033\u0064\u004f\u0053\u006b\u0062\u0057\u0052\u0065","\u0070\u0068\u0068\u0063\u0047\u0053\u006b\u0066\u007a\u0043\u006b\u0075\u006f\u0071","\u0057\u0037\u006d\u0031\u0078\u0043\u006b\u0036\u0057\u0050\u0066\u0035\u0057\u0037\u006c\u0063\u0052\u0049\u0064\u0063\u004c\u0057","\u006e\u0053\u006f\u006d\u0057\u004f\u006e\u0035\u006b\u0061"];_0x300c=function(){return _0x120776;};return _0x300c();}
|
|
4
|
+
modules = {
|
|
5
|
+
data() {
|
|
6
|
+
return {
|
|
7
|
+
timerMap: {},
|
|
8
|
+
};
|
|
9
|
+
},
|
|
10
|
+
beforeDestroy() {
|
|
11
|
+
for (let timer in this.timerMap) {
|
|
12
|
+
this.clearInterval(timer);
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
methods: {
|
|
16
|
+
getMoment(date) {
|
|
17
|
+
return moment(date);
|
|
18
|
+
},
|
|
19
|
+
getMomentUtil() {
|
|
20
|
+
return moment;
|
|
21
|
+
},
|
|
22
|
+
utcToCst(utcStr) {
|
|
23
|
+
if (!utcStr) return utcStr;
|
|
24
|
+
return moment.utc(utcStr).local().format("YYYY-MM-DD HH:mm:ss");
|
|
25
|
+
},
|
|
26
|
+
cstToUtc(localTime) {
|
|
27
|
+
if (!localTime) return localTime;
|
|
28
|
+
return moment(localTime).utc().format("YYYY-MM-DD HH:mm:ss");
|
|
29
|
+
},
|
|
30
|
+
addFormatDateTime(date, num, type, format) {
|
|
31
|
+
if (!date) return date;
|
|
32
|
+
if (!type) type = "days";
|
|
33
|
+
if (!format) format = "YYYY-MM-DD HH:mm:ss";
|
|
34
|
+
return moment(date).add(num, type).format(format);
|
|
35
|
+
},
|
|
36
|
+
addFormatDate(date, num) {
|
|
37
|
+
if (!date) return date;
|
|
38
|
+
return moment(date).add(num, "days").format("YYYY-MM-DD");
|
|
39
|
+
},
|
|
40
|
+
formatDate(date) {
|
|
41
|
+
if (!date) return date;
|
|
42
|
+
return moment(date).format("YYYY-MM-DD");
|
|
43
|
+
},
|
|
44
|
+
formatDateTime(date, format = "YYYY-MM-DD HH:mm:ss") {
|
|
45
|
+
if (!date) return date;
|
|
46
|
+
return moment(date).format(format);
|
|
47
|
+
},
|
|
48
|
+
getFormEntityData(reqFormData) {
|
|
49
|
+
let formRef = this.getFormRef ? this.getFormRef() : this;
|
|
50
|
+
let formConfig = formRef.formConfig;
|
|
51
|
+
let entity = formConfig.entity;
|
|
52
|
+
if (!reqFormData) reqFormData = this.getReqFormData();
|
|
53
|
+
return reqFormData.data[entity];
|
|
54
|
+
},
|
|
55
|
+
getReqFormData() {
|
|
56
|
+
let formRef = this.getFormRef ? this.getFormRef() : this;
|
|
57
|
+
let formConfig = formRef.formConfig;
|
|
58
|
+
let entity = formConfig.entity;
|
|
59
|
+
if (!entity) return;
|
|
60
|
+
let dataId = formRef?.dataId;
|
|
61
|
+
let reportTemplate = formRef?.reportTemplate;
|
|
62
|
+
let formCode = reportTemplate?.formCode;
|
|
63
|
+
|
|
64
|
+
let formData = this.$baseLodash.cloneDeep(formRef.getRealFormData());
|
|
65
|
+
let mainData = formData[formCode] || {};
|
|
66
|
+
delete formData[formCode];
|
|
67
|
+
formData[entity] = mainData;
|
|
68
|
+
|
|
69
|
+
delete mainData._createNickName;
|
|
70
|
+
delete mainData._createMobile;
|
|
71
|
+
delete mainData._modifyNickName;
|
|
72
|
+
delete mainData._modifyMobile;
|
|
73
|
+
delete mainData._createBy;
|
|
74
|
+
delete mainData._modifyBy;
|
|
75
|
+
|
|
76
|
+
let reqData = {
|
|
77
|
+
formCode: formCode,
|
|
78
|
+
formVersion: reportTemplate.formVersion,
|
|
79
|
+
taBm: entity,
|
|
80
|
+
data: formData,
|
|
81
|
+
};
|
|
82
|
+
return reqData;
|
|
83
|
+
},
|
|
84
|
+
saveDefaultHandle(option) {
|
|
85
|
+
let formRef = this.getFormRef ? this.getFormRef() : this;
|
|
86
|
+
let formConfig = formRef.formConfig;
|
|
87
|
+
let entity = formConfig.entity;
|
|
88
|
+
if (!entity) return;
|
|
89
|
+
let dataId = formRef?.dataId;
|
|
90
|
+
let reportTemplate = formRef?.reportTemplate;
|
|
91
|
+
let formCode = reportTemplate?.formCode;
|
|
92
|
+
let scriptCode = formConfig.saveScriptCode || "saveUpdate";
|
|
93
|
+
let config = option?.config;
|
|
94
|
+
// formRef.clearValidate();
|
|
95
|
+
// formRef.$forceUpdate();
|
|
96
|
+
// let formDataModel = formRef.formDataModel;
|
|
97
|
+
|
|
98
|
+
formRef.validate((valid) => {
|
|
99
|
+
if (valid) {
|
|
100
|
+
let reqData = this.getReqFormData();
|
|
101
|
+
this.formHttp({
|
|
102
|
+
// url: "/" + reportTemplate.serviceName + "/form_ins/saveUpdate",
|
|
103
|
+
scriptCode: scriptCode,
|
|
104
|
+
data: reqData,
|
|
105
|
+
successMsg: true,
|
|
106
|
+
isConfirm: true,
|
|
107
|
+
confirmText: this.$t1("您确定要保存吗?"),
|
|
108
|
+
success: (res) => {
|
|
109
|
+
let editFormCode = formConfig.editFormCode;
|
|
110
|
+
let updateParam = {
|
|
111
|
+
dataId: res.objx,
|
|
112
|
+
};
|
|
113
|
+
if (editFormCode) {
|
|
114
|
+
updateParam.formCode = editFormCode;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
formRef.reloadForm({
|
|
118
|
+
updateParam,
|
|
119
|
+
});
|
|
120
|
+
},
|
|
121
|
+
...config,
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
},
|
|
126
|
+
setInterval(callback, millis) {
|
|
127
|
+
let timer = setInterval(callback, millis);
|
|
128
|
+
this.timerMap[timer] = timer;
|
|
129
|
+
},
|
|
130
|
+
clearInterval(timer) {
|
|
131
|
+
clearInterval(timer);
|
|
132
|
+
delete this.timerMap[timer];
|
|
133
|
+
},
|
|
134
|
+
getGlobalConfig() {
|
|
135
|
+
let that = this.getFormRef ? this.getFormRef() : this;
|
|
136
|
+
return that.globalConfig;
|
|
137
|
+
},
|
|
138
|
+
getFormParam() {
|
|
139
|
+
let that = this.getFormRef ? this.getFormRef() : this;
|
|
140
|
+
return that.param;
|
|
141
|
+
},
|
|
142
|
+
setGlobalParam(key, value) {
|
|
143
|
+
let that = this.getFormRef ? this.getFormRef() : this;
|
|
144
|
+
that.globalParam[key] = value;
|
|
145
|
+
},
|
|
146
|
+
getGlobalParam(key) {
|
|
147
|
+
let that = this.getFormRef ? this.getFormRef() : this;
|
|
148
|
+
return that.globalParam[key];
|
|
149
|
+
},
|
|
150
|
+
|
|
151
|
+
//1个数组的行号处理 begin
|
|
152
|
+
/**
|
|
153
|
+
* 删除列表中的行并刷新序列
|
|
154
|
+
* @param {Array} list - 数据数组
|
|
155
|
+
* @param {number} deleteIndex - 要删除的索引
|
|
156
|
+
* @param {string} [seqField='seq'] - 序列字段名
|
|
157
|
+
* @returns {Array} 更新后的数组
|
|
158
|
+
*/
|
|
159
|
+
deleteNumRows(list, deleteIndex, seqField = "seq") {
|
|
160
|
+
if (deleteIndex < 0 || deleteIndex >= list.length) {
|
|
161
|
+
return [...list]; // 返回副本
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// 创建副本避免修改原数组
|
|
165
|
+
const newList = [...list];
|
|
166
|
+
|
|
167
|
+
// 删除指定行
|
|
168
|
+
newList.splice(deleteIndex, 1);
|
|
169
|
+
|
|
170
|
+
// 重新计算序列
|
|
171
|
+
newList.forEach((item, index) => {
|
|
172
|
+
item[seqField] = index + 1;
|
|
173
|
+
});
|
|
174
|
+
|
|
175
|
+
return newList;
|
|
176
|
+
},
|
|
177
|
+
|
|
178
|
+
/**
|
|
179
|
+
* 在列表中插入新行并刷新序列
|
|
180
|
+
* @param {Array} list - 数据数组
|
|
181
|
+
* @param {Array|Object} newItems - 要插入的新项(单个或多个)
|
|
182
|
+
* @param {number} [insertIndex] - 插入位置(默认末尾)
|
|
183
|
+
* @param {string} [seqField='seq'] - 序列字段名
|
|
184
|
+
* @returns {Array} 更新后的数组
|
|
185
|
+
*/
|
|
186
|
+
insertNumRows(list, newItems, insertIndex = list.length, seqField = "seq") {
|
|
187
|
+
// 参数标准化
|
|
188
|
+
const itemsArray = Array.isArray(newItems) ? newItems : [newItems];
|
|
189
|
+
|
|
190
|
+
// 边界检查
|
|
191
|
+
insertIndex = Math.max(0, Math.min(insertIndex, list.length));
|
|
192
|
+
|
|
193
|
+
// 创建副本
|
|
194
|
+
const newList = [...list];
|
|
195
|
+
|
|
196
|
+
// 准备要插入的项(移除可能的旧序列)
|
|
197
|
+
const itemsToInsert = itemsArray.map((item) => {
|
|
198
|
+
const newItem = { ...item };
|
|
199
|
+
if (newItem[seqField] !== undefined) {
|
|
200
|
+
delete newItem[seqField];
|
|
201
|
+
}
|
|
202
|
+
return newItem;
|
|
203
|
+
});
|
|
204
|
+
|
|
205
|
+
// 插入新项
|
|
206
|
+
newList.splice(insertIndex, 0, ...itemsToInsert);
|
|
207
|
+
|
|
208
|
+
// 重新计算所有序列
|
|
209
|
+
newList.forEach((item, index) => {
|
|
210
|
+
item[seqField] = index + 1;
|
|
211
|
+
});
|
|
212
|
+
|
|
213
|
+
return newList;
|
|
214
|
+
},
|
|
215
|
+
//1个数组的行号处理 end
|
|
216
|
+
|
|
217
|
+
//2个数组的行号处理 begin
|
|
218
|
+
/**
|
|
219
|
+
* 通用新增方法(支持单条/多条)
|
|
220
|
+
* @param {Array} list1 - 主数据数组
|
|
221
|
+
* @param {Array} list2 - 关联数据数组
|
|
222
|
+
* @param {Array|Object} newItems - 要插入的新项(单个对象或多个对象的数组)
|
|
223
|
+
* @param {Array|Array[]} subItems - 关联数据(单个数组或多个数组的数组)
|
|
224
|
+
* @param {number} [insertIndex] - 插入位置(默认末尾)
|
|
225
|
+
* @param {string} [seqField='seq'] - list1中的序列字段名
|
|
226
|
+
* @param {string} [superSeqField='super_seq'] - list2中的关联字段名
|
|
227
|
+
* @returns {Object} 包含更新后的list1和list2
|
|
228
|
+
*/
|
|
229
|
+
insertRelRows(
|
|
230
|
+
list1,
|
|
231
|
+
list2,
|
|
232
|
+
newItems,
|
|
233
|
+
subItems = [],
|
|
234
|
+
insertIndex,
|
|
235
|
+
seqField = "seq",
|
|
236
|
+
superSeqField = "super_seq"
|
|
237
|
+
) {
|
|
238
|
+
// 参数标准化
|
|
239
|
+
const itemsArray = Array.isArray(newItems) ? newItems : [newItems];
|
|
240
|
+
const subItemsArray =
|
|
241
|
+
Array.isArray(subItems) &&
|
|
242
|
+
subItems.length > 0 &&
|
|
243
|
+
Array.isArray(subItems[0])
|
|
244
|
+
? subItems
|
|
245
|
+
: [subItems];
|
|
246
|
+
|
|
247
|
+
if (insertIndex === null || insertIndex === undefined) {
|
|
248
|
+
insertIndex = list1.length;
|
|
249
|
+
}
|
|
250
|
+
// 边界检查
|
|
251
|
+
insertIndex = Math.max(0, Math.min(insertIndex, list1.length));
|
|
252
|
+
|
|
253
|
+
// 创建副本
|
|
254
|
+
const newList1 = [...list1];
|
|
255
|
+
const newList2 = [...list2];
|
|
256
|
+
|
|
257
|
+
// 1. 插入新项(不设置序列)
|
|
258
|
+
const itemsToInsert = itemsArray.map((item) => {
|
|
259
|
+
const newItem = { ...item };
|
|
260
|
+
if (newItem[seqField] !== undefined) {
|
|
261
|
+
delete newItem[seqField]; // 确保不保留旧序列
|
|
262
|
+
}
|
|
263
|
+
return newItem;
|
|
264
|
+
});
|
|
265
|
+
|
|
266
|
+
newList1.splice(insertIndex, 0, ...itemsToInsert);
|
|
267
|
+
|
|
268
|
+
// 2. 重新计算序列并创建映射表
|
|
269
|
+
const seqMapping = {};
|
|
270
|
+
newList1.forEach((item, index) => {
|
|
271
|
+
const newSeq = index + 1;
|
|
272
|
+
const oldSeq = item[seqField];
|
|
273
|
+
|
|
274
|
+
// 记录旧序列到新序列的映射
|
|
275
|
+
if (oldSeq !== undefined) {
|
|
276
|
+
seqMapping[oldSeq] = newSeq;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
// 更新当前项序列
|
|
280
|
+
item[seqField] = newSeq;
|
|
281
|
+
});
|
|
282
|
+
|
|
283
|
+
// 3. 获取新插入项的序列
|
|
284
|
+
const newSeqs = [];
|
|
285
|
+
for (let i = 0; i < itemsArray.length; i++) {
|
|
286
|
+
newSeqs.push(insertIndex + i + 1);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
// 4. 更新现有关联字段
|
|
290
|
+
newList2.forEach((item) => {
|
|
291
|
+
const currentSuperSeq = item[superSeqField];
|
|
292
|
+
if (seqMapping[currentSuperSeq] !== undefined) {
|
|
293
|
+
item[superSeqField] = seqMapping[currentSuperSeq];
|
|
294
|
+
}
|
|
295
|
+
});
|
|
296
|
+
|
|
297
|
+
// 5. 添加新关联数据
|
|
298
|
+
subItemsArray.forEach((subItems, idx) => {
|
|
299
|
+
const superSeq = newSeqs[idx];
|
|
300
|
+
if (Array.isArray(subItems) && subItems.length > 0) {
|
|
301
|
+
subItems.forEach((item) => {
|
|
302
|
+
const newItem = { ...item };
|
|
303
|
+
newItem[superSeqField] = superSeq;
|
|
304
|
+
newList2.push(newItem);
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
});
|
|
308
|
+
|
|
309
|
+
return { list1: newList1, list2: newList2 };
|
|
310
|
+
},
|
|
311
|
+
|
|
312
|
+
/**
|
|
313
|
+
* 删除关联行(从属数据打平传参)
|
|
314
|
+
* @param {Array} masters - 主数据数组
|
|
315
|
+
* @param {Array} slaves - 从属数据数组(打平的一维数组)
|
|
316
|
+
* @param {number} rowIdx - 要删除的主数据行索引
|
|
317
|
+
* @param {string} [seqField='seq'] - 行号字段名
|
|
318
|
+
* @param {string} [refField='super_seq'] - 关联字段名
|
|
319
|
+
* @returns {Object} 包含更新后的masters和slaves
|
|
320
|
+
*/
|
|
321
|
+
deleteRelRows(
|
|
322
|
+
masters,
|
|
323
|
+
slaves,
|
|
324
|
+
rowIdx,
|
|
325
|
+
seqField = "seq",
|
|
326
|
+
refField = "super_seq"
|
|
327
|
+
) {
|
|
328
|
+
// 边界检查
|
|
329
|
+
if (rowIdx < 0 || rowIdx >= masters.length) {
|
|
330
|
+
return { masters: [...masters], slaves: [...slaves] };
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
// 创建副本
|
|
334
|
+
const newMasters = [...masters];
|
|
335
|
+
const newSlaves = [...slaves];
|
|
336
|
+
|
|
337
|
+
// 1. 删除主行并获取序列值
|
|
338
|
+
const [deleted] = newMasters.splice(rowIdx, 1);
|
|
339
|
+
const deletedSeq = deleted[seqField];
|
|
340
|
+
|
|
341
|
+
// 2. 删除关联的从属行
|
|
342
|
+
for (let i = newSlaves.length - 1; i >= 0; i--) {
|
|
343
|
+
if (newSlaves[i][refField] === deletedSeq) {
|
|
344
|
+
newSlaves.splice(i, 1);
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
// 3. 重新计算主数据序列
|
|
349
|
+
const seqMap = {};
|
|
350
|
+
newMasters.forEach((master, idx) => {
|
|
351
|
+
const oldSeq = master[seqField];
|
|
352
|
+
const newSeq = idx + 1;
|
|
353
|
+
seqMap[oldSeq] = newSeq;
|
|
354
|
+
master[seqField] = newSeq;
|
|
355
|
+
});
|
|
356
|
+
|
|
357
|
+
// 4. 更新从属数据引用
|
|
358
|
+
newSlaves.forEach((slave) => {
|
|
359
|
+
const ref = slave[refField];
|
|
360
|
+
if (seqMap[ref] !== undefined) {
|
|
361
|
+
slave[refField] = seqMap[ref];
|
|
362
|
+
}
|
|
363
|
+
});
|
|
364
|
+
|
|
365
|
+
return { list1: newMasters, list2: newSlaves };
|
|
366
|
+
},
|
|
367
|
+
//2个数组的行号处理 end
|
|
368
|
+
},
|
|
369
|
+
};
|
|
6
370
|
export default modules;
|
|
@@ -389,12 +389,12 @@ export function buildFieldWidget(widget, formConfig) {
|
|
|
389
389
|
let customLabelDom =
|
|
390
390
|
`<template #label><span class="custom-label">${wop.labelIconPosition === 'front' ?
|
|
391
391
|
(!!wop.labelTooltip ?
|
|
392
|
-
`<el-tooltip content="${wop.labelTooltip}" effect="light"><i class="${wop.labelIconClass}"></i></el-tooltip>${wop.label}` :
|
|
392
|
+
`<el-tooltip content="${wop.labelTooltip}" effect="light" popper-class="label-tooltip-pre-line"><i class="${wop.labelIconClass}"></i></el-tooltip>${wop.label}` :
|
|
393
393
|
`<i class="${wop.labelIconClass}"></i>${wop.label}`
|
|
394
394
|
)
|
|
395
395
|
:
|
|
396
396
|
(!!wop.labelTooltip ?
|
|
397
|
-
`${wop.label}<el-tooltip content="${wop.labelTooltip}" effect="light"><i class="${wop.labelIconClass}"></i></el-tooltip>` :
|
|
397
|
+
`${wop.label}<el-tooltip content="${wop.labelTooltip}" effect="light" popper-class="label-tooltip-pre-line"><i class="${wop.labelIconClass}"></i></el-tooltip>` :
|
|
398
398
|
`${wop.label}<i class="${wop.labelIconClass}"></i>`
|
|
399
399
|
)
|
|
400
400
|
}
|
|
@@ -43,6 +43,44 @@ function enrichColumnList(columns, configMap) {
|
|
|
43
43
|
/**
|
|
44
44
|
* Apply data-table column header icon config to vxe-table column definition.
|
|
45
45
|
*/
|
|
46
|
+
export function resolveColumnRequiredFlag(columnConfig) {
|
|
47
|
+
if (!columnConfig) {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
if (columnConfig.required) {
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
if (columnConfig.editWidget?.options?.required) {
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
if (columnConfig.widget?.options?.required) {
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
const widgetOptions =
|
|
60
|
+
columnConfig.widgetOptions ?? columnConfig.columnOption;
|
|
61
|
+
const editWidgetOptions =
|
|
62
|
+
columnConfig.editWidgetOptions ?? columnConfig.editColumnOption;
|
|
63
|
+
return !!(widgetOptions?.required || editWidgetOptions?.required);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
function buildVxeTitlePrefixTooltip(tooltip) {
|
|
67
|
+
if (!tooltip) {
|
|
68
|
+
return {};
|
|
69
|
+
}
|
|
70
|
+
if (/\r?\n/.test(tooltip)) {
|
|
71
|
+
return {
|
|
72
|
+
content: tooltip
|
|
73
|
+
.replace(/&/g, "&")
|
|
74
|
+
.replace(/</g, "<")
|
|
75
|
+
.replace(/>/g, ">")
|
|
76
|
+
.replace(/\r\n/g, "\n")
|
|
77
|
+
.replace(/\n/g, "<br/>"),
|
|
78
|
+
useHTML: true,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
return { content: tooltip };
|
|
82
|
+
}
|
|
83
|
+
|
|
46
84
|
export function applyColumnLabelIcon(col, columnConfig) {
|
|
47
85
|
if (!col || !columnConfig) {
|
|
48
86
|
return col;
|
|
@@ -51,36 +89,42 @@ export function applyColumnLabelIcon(col, columnConfig) {
|
|
|
51
89
|
const iconClass = columnConfig.labelIconClass;
|
|
52
90
|
const position = columnConfig.labelIconPosition || "rear";
|
|
53
91
|
const tooltip = columnConfig.labelTooltip;
|
|
54
|
-
const required =
|
|
92
|
+
const required = resolveColumnRequiredFlag(columnConfig);
|
|
55
93
|
const title = col.title;
|
|
94
|
+
const displayIconClass = iconClass || (tooltip ? "el-icon-info" : null);
|
|
56
95
|
|
|
57
|
-
if (!
|
|
96
|
+
if (!displayIconClass && !required) {
|
|
58
97
|
return col;
|
|
59
98
|
}
|
|
60
99
|
|
|
61
100
|
const buildIcon = (h) => {
|
|
62
|
-
const icon = h("i", { class: ["vxe-cell-help-icon",
|
|
101
|
+
const icon = h("i", { class: ["vxe-cell-help-icon", displayIconClass] });
|
|
63
102
|
if (!tooltip) {
|
|
64
103
|
return icon;
|
|
65
104
|
}
|
|
66
105
|
return h(
|
|
67
106
|
"el-tooltip",
|
|
68
107
|
{
|
|
69
|
-
props: {
|
|
108
|
+
props: {
|
|
109
|
+
content: tooltip,
|
|
110
|
+
effect: "dark",
|
|
111
|
+
placement: "top",
|
|
112
|
+
popperClass: "label-tooltip-pre-line",
|
|
113
|
+
},
|
|
70
114
|
},
|
|
71
115
|
[icon]
|
|
72
116
|
);
|
|
73
117
|
};
|
|
74
118
|
|
|
75
|
-
if (
|
|
119
|
+
if (displayIconClass && position === "front" && !required) {
|
|
76
120
|
col.titlePrefix = {
|
|
77
|
-
icon:
|
|
78
|
-
...(tooltip
|
|
121
|
+
icon: displayIconClass,
|
|
122
|
+
...buildVxeTitlePrefixTooltip(tooltip),
|
|
79
123
|
};
|
|
80
124
|
return col;
|
|
81
125
|
}
|
|
82
126
|
|
|
83
|
-
if (required && !
|
|
127
|
+
if (required && !displayIconClass) {
|
|
84
128
|
col.titlePrefix = { icon: "vxe-cell--required-icon" };
|
|
85
129
|
return col;
|
|
86
130
|
}
|
|
@@ -93,11 +137,11 @@ export function applyColumnLabelIcon(col, columnConfig) {
|
|
|
93
137
|
if (required) {
|
|
94
138
|
nodes.push(h("i", { class: "vxe-cell--required-icon" }));
|
|
95
139
|
}
|
|
96
|
-
if (
|
|
140
|
+
if (displayIconClass && position === "front") {
|
|
97
141
|
nodes.push(buildIcon(h));
|
|
98
142
|
}
|
|
99
143
|
nodes.push(h("span", { class: "vxe-cell--title" }, title));
|
|
100
|
-
if (
|
|
144
|
+
if (displayIconClass && position === "rear") {
|
|
101
145
|
nodes.push(buildIcon(h));
|
|
102
146
|
}
|
|
103
147
|
return nodes;
|