@ibiz-template/runtime 0.3.5 → 0.3.6-dev.0
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/dist/index.esm.js +13137 -13269
- package/dist/index.system.min.js +2 -2
- package/dist/index.system.min.js.map +1 -1
- package/out/config/global-config.d.ts +2 -0
- package/out/config/global-config.d.ts.map +1 -1
- package/out/config/global-config.js +4 -0
- package/out/controller/common/control/control.controller.d.ts.map +1 -1
- package/out/controller/common/control/control.controller.js +8 -3
- package/out/controller/control/chart/chart.controller.d.ts.map +1 -1
- package/out/controller/control/chart/chart.controller.js +0 -1
- package/out/controller/control/form/edit-form/edit-form.controller.d.ts +7 -0
- package/out/controller/control/form/edit-form/edit-form.controller.d.ts.map +1 -1
- package/out/controller/control/form/edit-form/edit-form.controller.js +28 -2
- package/out/controller/control/form/form/form.controller.d.ts +10 -1
- package/out/controller/control/form/form/form.controller.d.ts.map +1 -1
- package/out/controller/control/form/form/form.controller.js +21 -4
- package/out/controller/control/form/form-detail/form-button/form-button.controller.d.ts +0 -8
- package/out/controller/control/form/form-detail/form-button/form-button.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-button/form-button.controller.js +0 -10
- package/out/controller/control/form/form-detail/form-detail/form-detail.controller.d.ts +17 -0
- package/out/controller/control/form/form-detail/form-detail/form-detail.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-detail/form-detail.controller.js +22 -1
- package/out/controller/control/form/form-detail/form-druipart/form-druipart.controller.js +2 -2
- package/out/controller/control/form/form-detail/form-group-panel/form-group-panel.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-group-panel/form-group-panel.controller.js +2 -1
- package/out/controller/control/form/form-detail/form-item/form-item.controller.d.ts +0 -16
- package/out/controller/control/form/form-detail/form-item/form-item.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-item/form-item.controller.js +1 -3
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts +103 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts.map +1 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.js +161 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.d.ts +40 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.d.ts.map +1 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.js +9 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.d.ts +52 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.d.ts.map +1 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.js +80 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts +89 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts.map +1 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.js +179 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts +41 -72
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.js +53 -144
- package/out/controller/control/form/form-detail/form-mdctrl/index.d.ts +3 -11
- package/out/controller/control/form/form-detail/form-mdctrl/index.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/index.js +3 -11
- package/out/controller/control/form/search-form/search-form.controller.d.ts +45 -1
- package/out/controller/control/form/search-form/search-form.controller.d.ts.map +1 -1
- package/out/controller/control/form/search-form/search-form.controller.js +77 -8
- package/out/controller/control/index.d.ts +1 -0
- package/out/controller/control/index.d.ts.map +1 -1
- package/out/controller/control/index.js +1 -0
- package/out/controller/control/report-panel/generator/base-generator.d.ts +61 -0
- package/out/controller/control/report-panel/generator/base-generator.d.ts.map +1 -0
- package/out/controller/control/report-panel/generator/base-generator.js +50 -0
- package/out/controller/control/report-panel/generator/generator-factory.d.ts +20 -0
- package/out/controller/control/report-panel/generator/generator-factory.d.ts.map +1 -0
- package/out/controller/control/report-panel/generator/generator-factory.js +31 -0
- package/out/controller/control/report-panel/generator/user-generator.d.ts +26 -0
- package/out/controller/control/report-panel/generator/user-generator.d.ts.map +1 -0
- package/out/controller/control/report-panel/generator/user-generator.js +59 -0
- package/out/controller/control/report-panel/generator/user2-generator.d.ts +11 -0
- package/out/controller/control/report-panel/generator/user2-generator.d.ts.map +1 -0
- package/out/controller/control/report-panel/generator/user2-generator.js +10 -0
- package/out/controller/control/report-panel/index.d.ts +3 -0
- package/out/controller/control/report-panel/index.d.ts.map +1 -0
- package/out/controller/control/report-panel/index.js +2 -0
- package/out/controller/control/report-panel/report-panel.controller.d.ts +106 -0
- package/out/controller/control/report-panel/report-panel.controller.d.ts.map +1 -0
- package/out/controller/control/report-panel/report-panel.controller.js +144 -0
- package/out/controller/control/report-panel/report-panel.service.d.ts +21 -0
- package/out/controller/control/report-panel/report-panel.service.d.ts.map +1 -0
- package/out/controller/control/report-panel/report-panel.service.js +21 -0
- package/out/controller/control/wizard-panel/wizard-panel.controller.d.ts.map +1 -1
- package/out/controller/control/wizard-panel/wizard-panel.controller.js +6 -4
- package/out/install.d.ts.map +1 -1
- package/out/install.js +3 -1
- package/out/interface/common/i-global-config/i-global-config.d.ts +8 -0
- package/out/interface/common/i-global-config/i-global-config.d.ts.map +1 -1
- package/out/interface/common/i-global-config/i-global-form-config.d.ts +18 -0
- package/out/interface/common/i-global-config/i-global-form-config.d.ts.map +1 -0
- package/out/interface/common/i-global-config/i-global-form-config.js +1 -0
- package/out/interface/common/i-global-config/index.d.ts +1 -0
- package/out/interface/common/i-global-config/index.d.ts.map +1 -1
- package/out/interface/common/i-global-config/index.js +1 -0
- package/out/interface/controller/controller/control/i-report-panel.controller.d.ts +26 -0
- package/out/interface/controller/controller/control/i-report-panel.controller.d.ts.map +1 -0
- package/out/interface/controller/controller/control/i-report-panel.controller.js +1 -0
- package/out/interface/controller/controller/control/i-search-form.controller.d.ts +22 -0
- package/out/interface/controller/controller/control/i-search-form.controller.d.ts.map +1 -1
- package/out/interface/controller/controller/control/index.d.ts +1 -0
- package/out/interface/controller/controller/control/index.d.ts.map +1 -1
- package/out/interface/controller/controller/control/index.js +1 -0
- package/out/interface/controller/event/control/i-report-panel.event.d.ts +67 -0
- package/out/interface/controller/event/control/i-report-panel.event.d.ts.map +1 -0
- package/out/interface/controller/event/control/i-report-panel.event.js +1 -0
- package/out/interface/controller/event/control/index.d.ts +1 -0
- package/out/interface/controller/event/control/index.d.ts.map +1 -1
- package/out/interface/controller/event/control/index.js +1 -0
- package/out/interface/controller/event/view/i-report-view.event.d.ts +12 -0
- package/out/interface/controller/event/view/i-report-view.event.d.ts.map +1 -0
- package/out/interface/controller/event/view/i-report-view.event.js +1 -0
- package/out/interface/controller/event/view/index.d.ts +1 -0
- package/out/interface/controller/event/view/index.d.ts.map +1 -1
- package/out/interface/controller/event/view/index.js +1 -0
- package/out/interface/controller/state/control/i-report-panel.state.d.ts +33 -0
- package/out/interface/controller/state/control/i-report-panel.state.d.ts.map +1 -0
- package/out/interface/controller/state/control/i-report-panel.state.js +1 -0
- package/out/interface/controller/state/control/i-search-form.state.d.ts +30 -0
- package/out/interface/controller/state/control/i-search-form.state.d.ts.map +1 -1
- package/out/interface/controller/state/control/index.d.ts +1 -0
- package/out/interface/controller/state/control/index.d.ts.map +1 -1
- package/out/interface/controller/state/control/index.js +1 -0
- package/out/interface/controller/state/view/i-report-view.state.d.ts +11 -0
- package/out/interface/controller/state/view/i-report-view.state.d.ts.map +1 -0
- package/out/interface/controller/state/view/i-report-view.state.js +1 -0
- package/out/interface/controller/state/view/index.d.ts +1 -0
- package/out/interface/controller/state/view/index.d.ts.map +1 -1
- package/out/interface/controller/state/view/index.js +1 -0
- package/out/interface/provider/i-de-method.provider.d.ts +30 -0
- package/out/interface/provider/i-de-method.provider.d.ts.map +1 -0
- package/out/interface/provider/i-de-method.provider.js +1 -0
- package/out/interface/provider/index.d.ts +1 -0
- package/out/interface/provider/index.d.ts.map +1 -1
- package/out/model/form/form-detail.d.ts +9 -0
- package/out/model/form/form-detail.d.ts.map +1 -1
- package/out/model/form/form-detail.js +11 -0
- package/out/model/utils/util.d.ts +10 -1
- package/out/model/utils/util.d.ts.map +1 -1
- package/out/model/utils/util.js +16 -0
- package/out/register/helper/de-method-register.d.ts +23 -0
- package/out/register/helper/de-method-register.d.ts.map +1 -0
- package/out/register/helper/de-method-register.js +51 -0
- package/out/register/helper/index.d.ts +1 -0
- package/out/register/helper/index.d.ts.map +1 -1
- package/out/register/helper/index.js +1 -0
- package/out/service/service/config/config.service.js +1 -1
- package/out/service/service/entity/de.service.d.ts +1 -1
- package/out/service/service/entity/de.service.d.ts.map +1 -1
- package/out/service/service/entity/de.service.js +11 -24
- package/out/service/service/entity/method/index.d.ts +8 -0
- package/out/service/service/entity/method/index.d.ts.map +1 -0
- package/out/service/service/entity/method/index.js +7 -0
- package/out/service/service/entity/method/provider/de-action-de-method.provider.d.ts +15 -0
- package/out/service/service/entity/method/provider/de-action-de-method.provider.d.ts.map +1 -0
- package/out/service/service/entity/method/provider/de-action-de-method.provider.js +14 -0
- package/out/service/service/entity/method/provider/fetch-de-method.provider.d.ts +15 -0
- package/out/service/service/entity/method/provider/fetch-de-method.provider.d.ts.map +1 -0
- package/out/service/service/entity/method/provider/fetch-de-method.provider.js +18 -0
- package/out/service/service/entity/method/provider/index.d.ts +8 -0
- package/out/service/service/entity/method/provider/index.d.ts.map +1 -0
- package/out/service/service/entity/method/provider/index.js +18 -0
- package/out/service/service/index.d.ts +1 -0
- package/out/service/service/index.d.ts.map +1 -1
- package/out/service/service/index.js +1 -0
- package/package.json +4 -4
- package/src/config/global-config.ts +6 -0
- package/src/controller/common/control/control.controller.ts +11 -5
- package/src/controller/control/chart/chart.controller.ts +0 -1
- package/src/controller/control/form/edit-form/edit-form.controller.ts +29 -2
- package/src/controller/control/form/form/form.controller.ts +28 -6
- package/src/controller/control/form/form-detail/form-button/form-button.controller.ts +0 -11
- package/src/controller/control/form/form-detail/form-detail/form-detail.controller.ts +24 -1
- package/src/controller/control/form/form-detail/form-druipart/form-druipart.controller.ts +2 -2
- package/src/controller/control/form/form-detail/form-group-panel/form-group-panel.controller.ts +2 -1
- package/src/controller/control/form/form-detail/form-item/form-item.controller.ts +1 -21
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts +215 -0
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.ts +43 -0
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-md.controller.ts +118 -0
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts +204 -0
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.ts +54 -183
- package/src/controller/control/form/form-detail/form-mdctrl/index.ts +3 -11
- package/src/controller/control/form/search-form/search-form.controller.ts +99 -9
- package/src/controller/control/index.ts +1 -0
- package/src/controller/control/report-panel/generator/base-generator.ts +74 -0
- package/src/controller/control/report-panel/generator/generator-factory.ts +35 -0
- package/src/controller/control/report-panel/generator/user-generator.ts +63 -0
- package/src/controller/control/report-panel/generator/user2-generator.ts +10 -0
- package/src/controller/control/report-panel/index.ts +2 -0
- package/src/controller/control/report-panel/report-panel.controller.ts +204 -0
- package/src/controller/control/report-panel/report-panel.service.ts +40 -0
- package/src/controller/control/wizard-panel/wizard-panel.controller.ts +6 -4
- package/src/install.ts +3 -0
- package/src/interface/common/i-global-config/i-global-config.ts +9 -0
- package/src/interface/common/i-global-config/i-global-form-config.ts +17 -0
- package/src/interface/common/i-global-config/index.ts +1 -0
- package/src/interface/controller/controller/control/i-report-panel.controller.ts +32 -0
- package/src/interface/controller/controller/control/i-search-form.controller.ts +25 -0
- package/src/interface/controller/controller/control/index.ts +1 -0
- package/src/interface/controller/event/control/i-report-panel.event.ts +72 -0
- package/src/interface/controller/event/control/index.ts +1 -0
- package/src/interface/controller/event/view/i-report-view.event.ts +12 -0
- package/src/interface/controller/event/view/index.ts +1 -0
- package/src/interface/controller/state/control/i-report-panel.state.ts +37 -0
- package/src/interface/controller/state/control/i-search-form.state.ts +34 -1
- package/src/interface/controller/state/control/index.ts +1 -0
- package/src/interface/controller/state/view/i-report-view.state.ts +10 -0
- package/src/interface/controller/state/view/index.ts +1 -0
- package/src/interface/provider/i-de-method.provider.ts +35 -0
- package/src/interface/provider/index.ts +4 -0
- package/src/model/form/form-detail.ts +12 -0
- package/src/model/utils/util.ts +20 -0
- package/src/register/helper/de-method-register.ts +64 -0
- package/src/register/helper/index.ts +1 -0
- package/src/service/service/config/config.service.ts +1 -1
- package/src/service/service/entity/de.service.ts +15 -26
- package/src/service/service/entity/method/index.ts +7 -0
- package/src/service/service/entity/method/provider/de-action-de-method.provider.ts +25 -0
- package/src/service/service/entity/method/provider/fetch-de-method.provider.ts +29 -0
- package/src/service/service/entity/method/provider/index.ts +19 -0
- package/src/service/service/index.ts +1 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-content-type.controller.d.ts +0 -102
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-content-type.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-content-type.controller.js +0 -135
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-control/form-mdctrl-control.controller.d.ts +0 -41
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-control/form-mdctrl-control.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-control/form-mdctrl-control.controller.js +0 -34
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-data-view/form-mdctrl-data-view.controller.d.ts +0 -98
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-data-view/form-mdctrl-data-view.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-data-view/form-mdctrl-data-view.controller.js +0 -112
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.controller.d.ts +0 -136
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.controller.js +0 -192
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-grid/form-mdctrl-grid.controller.d.ts +0 -115
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-grid/form-mdctrl-grid.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-grid/form-mdctrl-grid.controller.js +0 -154
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-list/form-mdctrl-list.controller.d.ts +0 -98
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-list/form-mdctrl-list.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-list/form-mdctrl-list.controller.js +0 -112
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-item.controller.d.ts +0 -20
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-item.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-item.controller.js +0 -44
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.controller.d.ts +0 -42
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.controller.js +0 -60
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.controller.d.ts +0 -34
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.controller.js +0 -38
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-grid/form-mdctrl-repeater-grid.controller.d.ts +0 -75
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-grid/form-mdctrl-repeater-grid.controller.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-grid/form-mdctrl-repeater-grid.controller.js +0 -109
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.state.d.ts +0 -16
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.state.d.ts.map +0 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.state.js +0 -18
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-content-type.controller.ts +0 -154
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-control/form-mdctrl-control.controller.ts +0 -56
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-data-view/form-mdctrl-data-view.controller.ts +0 -127
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.controller.ts +0 -228
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-grid/form-mdctrl-grid.controller.ts +0 -174
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-list/form-mdctrl-list.controller.ts +0 -127
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-item.controller.ts +0 -78
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.controller.ts +0 -65
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.controller.ts +0 -40
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-grid/form-mdctrl-repeater-grid.controller.ts +0 -120
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl.state.ts +0 -16
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
import { IHttpResponse, mergeInLeft } from '@ibiz-template/core';
|
|
2
|
-
import { isArray } from 'lodash-es';
|
|
3
|
-
import { IEditFormController, EventBase } from '../../../../../../interface';
|
|
4
|
-
import { ControlVO } from '../../../../../../service';
|
|
5
|
-
import { EditFormService } from '../../../edit-form';
|
|
6
|
-
import { FormMDCtrlControlController } from '../form-mdctrl-control/form-mdctrl-control.controller';
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* 表单多数据部件表单类型控制器
|
|
10
|
-
*
|
|
11
|
-
* @author zk
|
|
12
|
-
* @date 2023-07-28 08:07:57
|
|
13
|
-
* @export
|
|
14
|
-
* @class FormMDCtrlFormController
|
|
15
|
-
* @extends {EditFormController}
|
|
16
|
-
* @implements {IFormController}
|
|
17
|
-
*/
|
|
18
|
-
export class FormMDCtrlFormController extends FormMDCtrlControlController {
|
|
19
|
-
/**
|
|
20
|
-
* 表格控制器
|
|
21
|
-
*
|
|
22
|
-
* @author zk
|
|
23
|
-
* @date 2023-07-30 07:07:18
|
|
24
|
-
* @type {IGridController}
|
|
25
|
-
* @memberof FormMDCtrlGridController
|
|
26
|
-
*/
|
|
27
|
-
controlControllerArray: IEditFormController[] = [];
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* uiState
|
|
31
|
-
*
|
|
32
|
-
* @author zk
|
|
33
|
-
* @date 2023-08-01 03:08:16
|
|
34
|
-
* @type {{ data: IData[] }}
|
|
35
|
-
* @memberof FormMDCtrlFormController
|
|
36
|
-
*/
|
|
37
|
-
state: { data: IData[] } = { data: [] };
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* 编辑表单服务
|
|
41
|
-
* @author lxm
|
|
42
|
-
* @date 2023-05-15 11:03:34
|
|
43
|
-
* @type {EditFormService}
|
|
44
|
-
*/
|
|
45
|
-
service!: EditFormService;
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* 表单初始化后把控制器抛出来
|
|
49
|
-
*
|
|
50
|
-
* @author zk
|
|
51
|
-
* @date 2023-07-30 07:07:25
|
|
52
|
-
* @param {EventBase} event
|
|
53
|
-
* @memberof FormMDCtrlGridController
|
|
54
|
-
*/
|
|
55
|
-
onControlCreated(event: EventBase, index: number): void {
|
|
56
|
-
const formController = event.ctrl as IEditFormController;
|
|
57
|
-
this.controlControllerArray[index] = formController;
|
|
58
|
-
formController.load();
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* 初始化
|
|
63
|
-
*
|
|
64
|
-
* @author zk
|
|
65
|
-
* @date 2023-07-25 10:07:11
|
|
66
|
-
* @protected
|
|
67
|
-
* @return {*} {Promise<void>}
|
|
68
|
-
* @memberof FormMDCtrlController
|
|
69
|
-
*/
|
|
70
|
-
async onInit(): Promise<void> {
|
|
71
|
-
super.onInit();
|
|
72
|
-
// 实例部件服务
|
|
73
|
-
this.service = new EditFormService(this.model.contentControl!);
|
|
74
|
-
await this.service.init(this.parent.form.context);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* 执行查询多条数据的方法
|
|
79
|
-
*
|
|
80
|
-
* @author lxm
|
|
81
|
-
* @date 2022-08-31 17:08:41
|
|
82
|
-
* @param {IParams} context 上下文
|
|
83
|
-
* @param {IParams} [params={}] 视图参数
|
|
84
|
-
* @returns {*} {Promise<IHttpResponse>}
|
|
85
|
-
*/
|
|
86
|
-
async fetch(
|
|
87
|
-
context: IParams,
|
|
88
|
-
params: IParams = {},
|
|
89
|
-
): Promise<IHttpResponse<ControlVO[]>> {
|
|
90
|
-
const fetchAction = 'fetchdefault';
|
|
91
|
-
let res = await this.service.exec(fetchAction, context, params);
|
|
92
|
-
res = this.handleResponse(res);
|
|
93
|
-
return res as IHttpResponse<ControlVO[]>;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* 处理响应(数组类型)
|
|
98
|
-
*
|
|
99
|
-
* @author lxm
|
|
100
|
-
* @date 2022-08-31 17:08:13
|
|
101
|
-
* @param {IHttpResponse} res
|
|
102
|
-
* @returns {*} {IHttpResponse}
|
|
103
|
-
*/
|
|
104
|
-
handleResponse(response: IHttpResponse): IHttpResponse {
|
|
105
|
-
const res = response as IHttpResponse<IData[] | IData>;
|
|
106
|
-
if (res.ok) {
|
|
107
|
-
if (isArray(res.data)) {
|
|
108
|
-
res.data = (res.data as IData[]).map(item =>
|
|
109
|
-
this.service.toUIData(item),
|
|
110
|
-
);
|
|
111
|
-
} else {
|
|
112
|
-
res.data = this.service.toUIData(res.data);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
return res;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* 初始化数据
|
|
120
|
-
*
|
|
121
|
-
* @author zk
|
|
122
|
-
* @date 2023-07-30 08:07:32
|
|
123
|
-
* @memberof FormMDCtrlFormController
|
|
124
|
-
*/
|
|
125
|
-
async initData(): Promise<void> {
|
|
126
|
-
const res = await this.fetch(
|
|
127
|
-
this.parent.form.context,
|
|
128
|
-
this.parent.form.params,
|
|
129
|
-
);
|
|
130
|
-
this.state.data = res.data;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* 数据删除
|
|
135
|
-
*
|
|
136
|
-
* @author zk
|
|
137
|
-
* @date 2023-07-30 05:07:32
|
|
138
|
-
* @param {number} index
|
|
139
|
-
* @memberof FormMDCtrlController
|
|
140
|
-
*/
|
|
141
|
-
onDataRemove(index: number): void {
|
|
142
|
-
const c = this.controlControllerArray[index];
|
|
143
|
-
if (!c) {
|
|
144
|
-
return;
|
|
145
|
-
}
|
|
146
|
-
c.remove();
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
/**
|
|
150
|
-
* 处理表单数据变化
|
|
151
|
-
*
|
|
152
|
-
* @author zk
|
|
153
|
-
* @date 2023-07-30 05:07:03
|
|
154
|
-
* @param {IData[]} data
|
|
155
|
-
* @param {number} index
|
|
156
|
-
* @memberof FormMDCtrlFormController
|
|
157
|
-
*/
|
|
158
|
-
onFormChange(data: IData[], index: number): void {
|
|
159
|
-
const c = this.controlControllerArray[index];
|
|
160
|
-
if (!c) {
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
c.save();
|
|
164
|
-
if (this.state.data[index]) {
|
|
165
|
-
mergeInLeft(this.state.data[index], data[0]);
|
|
166
|
-
}
|
|
167
|
-
this.parent.state.contentCtrlData = this.state.data;
|
|
168
|
-
this.parent.setFormDataValue();
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
/**
|
|
172
|
-
* 表单删除成功
|
|
173
|
-
*
|
|
174
|
-
* @author zk
|
|
175
|
-
* @date 2023-08-01 03:08:47
|
|
176
|
-
* @param {number} index
|
|
177
|
-
* @memberof FormMDCtrlFormController
|
|
178
|
-
*/
|
|
179
|
-
onFormRemoveSuccess(index: number): void {
|
|
180
|
-
this.state.data.splice(index, 1);
|
|
181
|
-
this.controlControllerArray.splice(index, 1);
|
|
182
|
-
this.parent.state.contentCtrlData = this.state.data;
|
|
183
|
-
this.parent.setFormDataValue();
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
/**
|
|
187
|
-
* 数据插入
|
|
188
|
-
*
|
|
189
|
-
* @author zk
|
|
190
|
-
* @date 2023-07-31 12:07:27
|
|
191
|
-
* @memberof FormMDCtrlFormController
|
|
192
|
-
*/
|
|
193
|
-
async onDataInsert(): Promise<void> {
|
|
194
|
-
const res = await this.service.getDraft(
|
|
195
|
-
this.parent.form.context,
|
|
196
|
-
this.parent.form.params,
|
|
197
|
-
);
|
|
198
|
-
if (res.data) {
|
|
199
|
-
const result = await this.service.create(
|
|
200
|
-
this.parent.form.context,
|
|
201
|
-
res.data,
|
|
202
|
-
);
|
|
203
|
-
this.state.data.push(result.data);
|
|
204
|
-
this.parent.state.contentCtrlData = this.state.data;
|
|
205
|
-
this.parent.setFormDataValue();
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
/**
|
|
210
|
-
* 表单项值规则校验
|
|
211
|
-
*
|
|
212
|
-
* @author zzq
|
|
213
|
-
* @date 2023-08-23 16:33:32
|
|
214
|
-
* @memberof FormMDCtrlFormController
|
|
215
|
-
*/
|
|
216
|
-
async validate(): Promise<boolean> {
|
|
217
|
-
const values = await Promise.all(
|
|
218
|
-
this.controlControllerArray.map(form => form.validate()),
|
|
219
|
-
);
|
|
220
|
-
|
|
221
|
-
// 找不到value为false即全部是true
|
|
222
|
-
return values.findIndex(value => !value) === -1;
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
refresh(): void {
|
|
226
|
-
this.initData();
|
|
227
|
-
}
|
|
228
|
-
}
|
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
import { RuntimeError, mergeInLeft } from '@ibiz-template/core';
|
|
2
|
-
import { IGridController, EventBase } from '../../../../../../interface';
|
|
3
|
-
import { getControlProvider } from '../../../../../../register';
|
|
4
|
-
import { FormMDCtrlControlController } from '../form-mdctrl-control/form-mdctrl-control.controller';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* 表单多数据部件表格类型控制器
|
|
8
|
-
*
|
|
9
|
-
* @author zk
|
|
10
|
-
* @date 2023-07-28 08:07:57
|
|
11
|
-
* @export
|
|
12
|
-
* @class FormMDCtrlGridController
|
|
13
|
-
* @extends {EditFormController}
|
|
14
|
-
* @implements {IFormController}
|
|
15
|
-
*/
|
|
16
|
-
export class FormMDCtrlGridController extends FormMDCtrlControlController {
|
|
17
|
-
/**
|
|
18
|
-
* 表格控制器
|
|
19
|
-
*
|
|
20
|
-
* @author zk
|
|
21
|
-
* @date 2023-07-30 07:07:18
|
|
22
|
-
* @type {IGridController}
|
|
23
|
-
* @memberof FormMDCtrlGridController
|
|
24
|
-
*/
|
|
25
|
-
gridController?: IGridController;
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* 表格选中数据
|
|
29
|
-
*
|
|
30
|
-
* @author zk
|
|
31
|
-
* @date 2023-07-30 07:07:45
|
|
32
|
-
* @type {IData[]}
|
|
33
|
-
* @memberof FormMDCtrlGridController
|
|
34
|
-
*/
|
|
35
|
-
selectData: IData[] = [];
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* uiState
|
|
39
|
-
*
|
|
40
|
-
* @author zk
|
|
41
|
-
* @date 2023-07-31 12:07:57
|
|
42
|
-
* @type {{ isSelect: boolean }}
|
|
43
|
-
* @memberof FormMDCtrlGridController
|
|
44
|
-
*/
|
|
45
|
-
state: { isSelect: boolean } = { isSelect: false };
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* 表格初始化后把控制器抛出来
|
|
49
|
-
*
|
|
50
|
-
* @author zk
|
|
51
|
-
* @date 2023-07-30 07:07:25
|
|
52
|
-
* @param {EventBase} event
|
|
53
|
-
* @memberof FormMDCtrlGridController
|
|
54
|
-
*/
|
|
55
|
-
onGridCreated(event: EventBase): void {
|
|
56
|
-
this.gridController = event.ctrl as IGridController;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* 表格选中事件
|
|
61
|
-
*
|
|
62
|
-
* @author zk
|
|
63
|
-
* @date 2023-07-30 07:07:06
|
|
64
|
-
* @param {EventBase} event
|
|
65
|
-
* @memberof FormMDCtrlGridController
|
|
66
|
-
*/
|
|
67
|
-
onSelectionChange(event: EventBase): void {
|
|
68
|
-
this.state.isSelect = event.data.length > 0;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* 数据删除
|
|
73
|
-
*
|
|
74
|
-
* @author zk
|
|
75
|
-
* @date 2023-07-30 05:07:32
|
|
76
|
-
* @param {number} index
|
|
77
|
-
* @memberof FormMDCtrlController
|
|
78
|
-
*/
|
|
79
|
-
onDataRemove(): void {
|
|
80
|
-
if (!this.gridController) {
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
this.gridController.remove();
|
|
84
|
-
this.parent.state.contentCtrlData = this.gridController.state.items;
|
|
85
|
-
this.parent.setFormDataValue();
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* 内部表单数据发生改变,同步contentCtrlData并设置外部表单值
|
|
90
|
-
*
|
|
91
|
-
* @author zk
|
|
92
|
-
* @date 2023-07-30 05:07:18
|
|
93
|
-
* @param {IData[]} data
|
|
94
|
-
* @memberof FormMDCtrlController
|
|
95
|
-
*/
|
|
96
|
-
onDataChange(data: IData[]): void {
|
|
97
|
-
this.parent.state.contentCtrlData = data;
|
|
98
|
-
this.parent.setFormDataValue();
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
/**
|
|
102
|
-
* 初始化数据
|
|
103
|
-
*
|
|
104
|
-
* @author zk
|
|
105
|
-
* @date 2023-07-30 08:07:32
|
|
106
|
-
* @memberof FormMDCtrlContentTypeController
|
|
107
|
-
*/
|
|
108
|
-
async initData(): Promise<void> {
|
|
109
|
-
this.gridController?.load();
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
/**
|
|
113
|
-
* 数据插入
|
|
114
|
-
*
|
|
115
|
-
* @author zk
|
|
116
|
-
* @date 2023-07-31 12:07:27
|
|
117
|
-
* @param {IData} [data]
|
|
118
|
-
* @memberof FormMDCtrlContentTypeController
|
|
119
|
-
*/
|
|
120
|
-
async onDataInsert(): Promise<void> {
|
|
121
|
-
if (!this.gridController) {
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
|
-
await this.gridController.newRow();
|
|
125
|
-
this.parent.state.contentCtrlData = this.gridController.state.items;
|
|
126
|
-
this.parent.setFormDataValue();
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
/**
|
|
130
|
-
* 初始化, 表格默认支持行编辑、行编辑
|
|
131
|
-
*
|
|
132
|
-
* @author zzq
|
|
133
|
-
* @date 2023-08-23 15:41:27
|
|
134
|
-
* @param {IData} [data]
|
|
135
|
-
* @memberof FormMDCtrlContentTypeController
|
|
136
|
-
*/
|
|
137
|
-
public async onInit(): Promise<void> {
|
|
138
|
-
const { model } = this.parent;
|
|
139
|
-
const { contentControl } = model;
|
|
140
|
-
if (!contentControl) {
|
|
141
|
-
throw new RuntimeError('表单多数据部件未配置嵌入部件');
|
|
142
|
-
}
|
|
143
|
-
mergeInLeft(contentControl, { enableRowEdit: true, enableRowNew: true });
|
|
144
|
-
this.controlModel = contentControl;
|
|
145
|
-
const controlProvider = await getControlProvider(this.controlModel);
|
|
146
|
-
if (controlProvider) {
|
|
147
|
-
this.provider = controlProvider;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
/**
|
|
152
|
-
* 表单项值规则校验
|
|
153
|
-
*
|
|
154
|
-
* @author zzq
|
|
155
|
-
* @date 2023-08-23 16:33:32
|
|
156
|
-
* @memberof FormMDCtrlFormController
|
|
157
|
-
*/
|
|
158
|
-
async validate(): Promise<boolean> {
|
|
159
|
-
if (!this.gridController) {
|
|
160
|
-
return true;
|
|
161
|
-
}
|
|
162
|
-
const { rows } = this.gridController.state;
|
|
163
|
-
const values = await Promise.all(
|
|
164
|
-
rows.map(row => this.gridController!.validate(row)),
|
|
165
|
-
);
|
|
166
|
-
|
|
167
|
-
// 找不到value为false即全部是true
|
|
168
|
-
return values.findIndex(value => !value) === -1;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
refresh(): void {
|
|
172
|
-
this.gridController?.refresh();
|
|
173
|
-
}
|
|
174
|
-
}
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
import { IListController, EventBase } from '../../../../../../interface';
|
|
2
|
-
import { FormMDCtrlControlController } from '../form-mdctrl-control/form-mdctrl-control.controller';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* 表单多数据部件表格类型控制器
|
|
6
|
-
*
|
|
7
|
-
* @author zk
|
|
8
|
-
* @date 2023-07-28 08:07:57
|
|
9
|
-
* @export
|
|
10
|
-
* @class FormMDCtrlListController
|
|
11
|
-
* @extends {EditFormController}
|
|
12
|
-
* @implements {IFormController}
|
|
13
|
-
*/
|
|
14
|
-
export class FormMDCtrlListController extends FormMDCtrlControlController {
|
|
15
|
-
/**
|
|
16
|
-
* 表格控制器
|
|
17
|
-
*
|
|
18
|
-
* @author zk
|
|
19
|
-
* @date 2023-07-30 07:07:18
|
|
20
|
-
* @type {IListController}
|
|
21
|
-
* @memberof FormMDCtrlListController
|
|
22
|
-
*/
|
|
23
|
-
listController?: IListController;
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* 表格选中数据
|
|
27
|
-
*
|
|
28
|
-
* @author zk
|
|
29
|
-
* @date 2023-07-30 07:07:45
|
|
30
|
-
* @type {IData[]}
|
|
31
|
-
* @memberof FormMDCtrlListController
|
|
32
|
-
*/
|
|
33
|
-
selectData: IData[] = [];
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* uiState
|
|
37
|
-
*
|
|
38
|
-
* @author zk
|
|
39
|
-
* @date 2023-07-31 12:07:57
|
|
40
|
-
* @type {{ isSelect: boolean }}
|
|
41
|
-
* @memberof FormMDCtrlListController
|
|
42
|
-
*/
|
|
43
|
-
state: { isSelect: boolean } = { isSelect: false };
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* 表格挂载后把控制器抛出来
|
|
47
|
-
*
|
|
48
|
-
* @author zk
|
|
49
|
-
* @date 2023-07-30 07:07:25
|
|
50
|
-
* @param {EventBase} event
|
|
51
|
-
* @memberof FormMDCtrlListController
|
|
52
|
-
*/
|
|
53
|
-
onListCreated(event: EventBase): void {
|
|
54
|
-
this.listController = event.ctrl as IListController;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* 表格选中事件
|
|
59
|
-
*
|
|
60
|
-
* @author zk
|
|
61
|
-
* @date 2023-07-30 07:07:06
|
|
62
|
-
* @param {EventBase} event
|
|
63
|
-
* @memberof FormMDCtrlListController
|
|
64
|
-
*/
|
|
65
|
-
onSelectionChange(event: EventBase): void {
|
|
66
|
-
this.state.isSelect = event.data.length > 0;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* 数据删除
|
|
71
|
-
*
|
|
72
|
-
* @author zk
|
|
73
|
-
* @date 2023-07-30 05:07:32
|
|
74
|
-
* @param {number} index
|
|
75
|
-
* @memberof FormMDCtrlController
|
|
76
|
-
*/
|
|
77
|
-
onDataRemove(): void {
|
|
78
|
-
if (!this.listController) {
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
81
|
-
this.listController.remove();
|
|
82
|
-
this.parent.state.contentCtrlData = this.listController.state.items;
|
|
83
|
-
this.parent.setFormDataValue();
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
* 内部表单数据发生改变,同步contentCtrlData并设置外部表单值
|
|
88
|
-
*
|
|
89
|
-
* @author zk
|
|
90
|
-
* @date 2023-07-30 05:07:18
|
|
91
|
-
* @param {IData[]} data
|
|
92
|
-
* @memberof FormMDCtrlController
|
|
93
|
-
*/
|
|
94
|
-
onDataChange(data: IData[]): void {
|
|
95
|
-
this.parent.state.contentCtrlData = data;
|
|
96
|
-
this.parent.setFormDataValue();
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* 初始化数据
|
|
101
|
-
*
|
|
102
|
-
* @author zk
|
|
103
|
-
* @date 2023-07-30 08:07:32
|
|
104
|
-
* @memberof FormMDCtrlContentTypeController
|
|
105
|
-
*/
|
|
106
|
-
async initData(): Promise<void> {
|
|
107
|
-
this.listController?.load();
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* 数据插入
|
|
112
|
-
*
|
|
113
|
-
* @author zk
|
|
114
|
-
* @date 2023-07-31 12:07:27
|
|
115
|
-
* @param {IData} [data]
|
|
116
|
-
* @memberof FormMDCtrlContentTypeController
|
|
117
|
-
*/
|
|
118
|
-
async onDataInsert(): Promise<void> {
|
|
119
|
-
// await this.listController.newRow();
|
|
120
|
-
// this.parent.state.contentCtrlData = this.listController.state.items;
|
|
121
|
-
// this.parent.setFormDataValue();
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
refresh(): void {
|
|
125
|
-
this.listController?.refresh();
|
|
126
|
-
}
|
|
127
|
-
}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import { IControl, IDEFormDetail, IDEFormMDCtrl } from '@ibiz/model-core';
|
|
2
|
-
import { clone } from 'ramda';
|
|
3
|
-
import { IFormController } from '../../../../../../../interface';
|
|
4
|
-
import { findChildFormDetails } from '../../../../../../../model';
|
|
5
|
-
import { getFormDetailProvider } from '../../../../../../../register';
|
|
6
|
-
import { CTX } from '../../../../../../ctx';
|
|
7
|
-
import { EditFormController } from '../../../../edit-form';
|
|
8
|
-
import { FormController } from '../../../../form';
|
|
9
|
-
import { FormGroupPanelController } from '../../../form-group-panel';
|
|
10
|
-
import { FormItemController } from '../../../form-item';
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* 表单多数据部件项控制器
|
|
14
|
-
*
|
|
15
|
-
* @author chitanda
|
|
16
|
-
* @date 2022-08-03 11:08:20
|
|
17
|
-
* @export
|
|
18
|
-
* @class MDCtrlFormController
|
|
19
|
-
* @extends {FormController<MDCtrlFormModel>}
|
|
20
|
-
*/
|
|
21
|
-
export class FormMDCtrlItemController
|
|
22
|
-
extends EditFormController
|
|
23
|
-
implements IFormController
|
|
24
|
-
{
|
|
25
|
-
constructor(
|
|
26
|
-
model: IControl,
|
|
27
|
-
context: IContext,
|
|
28
|
-
params: IParams,
|
|
29
|
-
ctx: CTX,
|
|
30
|
-
data: IData,
|
|
31
|
-
form: FormController,
|
|
32
|
-
) {
|
|
33
|
-
const tempModel = clone(form.model);
|
|
34
|
-
// 合并父级表单模型 兼容值规则 和 父表单模型
|
|
35
|
-
Object.assign(tempModel, model, { name: undefined });
|
|
36
|
-
super(tempModel, context, params, ctx);
|
|
37
|
-
this.state.data = data;
|
|
38
|
-
this.state.isSimple = true;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
protected async initDetailControllers(
|
|
42
|
-
details: IDEFormDetail[] = (this.model as IDEFormMDCtrl).deformDetails!,
|
|
43
|
-
form: FormController = this,
|
|
44
|
-
parent: FormGroupPanelController | undefined = undefined,
|
|
45
|
-
): Promise<void> {
|
|
46
|
-
await Promise.all(
|
|
47
|
-
details.map(async detail => {
|
|
48
|
-
// 生成表单成员控制器
|
|
49
|
-
const detailProvider = await getFormDetailProvider(detail);
|
|
50
|
-
if (!detailProvider) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
form.providers[detail.id!] = detailProvider;
|
|
54
|
-
const detailController = await detailProvider.createController(
|
|
55
|
-
detail,
|
|
56
|
-
form,
|
|
57
|
-
parent,
|
|
58
|
-
);
|
|
59
|
-
form.details[detail.id!] = detailController;
|
|
60
|
-
if (
|
|
61
|
-
detail.detailType === 'FORMITEM' ||
|
|
62
|
-
detail.detailType === 'MDCTRL'
|
|
63
|
-
) {
|
|
64
|
-
form.formItems.push(detailController as FormItemController);
|
|
65
|
-
}
|
|
66
|
-
// 有子成员的生成子控制器
|
|
67
|
-
const childDetails = findChildFormDetails(detail);
|
|
68
|
-
if (childDetails.length) {
|
|
69
|
-
await this.initDetailControllers(
|
|
70
|
-
childDetails,
|
|
71
|
-
form,
|
|
72
|
-
detailController as FormGroupPanelController,
|
|
73
|
-
);
|
|
74
|
-
}
|
|
75
|
-
}),
|
|
76
|
-
);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { FormMDCtrlContentTypeController } from '../../form-mdctrl-content-type.controller';
|
|
2
|
-
import { FormMDCtrlItemController } from './form-mdctrl-repeater-form-item.controller';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* 表单多数据部件表格类型控制器
|
|
6
|
-
*
|
|
7
|
-
* @author zk
|
|
8
|
-
* @date 2023-07-28 08:07:57
|
|
9
|
-
* @export
|
|
10
|
-
* @class FormMDCtrlGridController
|
|
11
|
-
* @extends {EditFormController}
|
|
12
|
-
* @implements {IFormController}
|
|
13
|
-
*/
|
|
14
|
-
export class FormMDCtrlRepeaterFormController extends FormMDCtrlContentTypeController {
|
|
15
|
-
/**
|
|
16
|
-
* 数据插入
|
|
17
|
-
*
|
|
18
|
-
* @author zk
|
|
19
|
-
* @date 2023-07-31 12:07:21
|
|
20
|
-
* @memberof FormMDCtrlRepeaterFormController
|
|
21
|
-
*/
|
|
22
|
-
async onDataInsert(): Promise<void> {
|
|
23
|
-
const data = {};
|
|
24
|
-
super.onDataInsert(data);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* 数据删除
|
|
29
|
-
*
|
|
30
|
-
* @author zk
|
|
31
|
-
* @date 2023-07-30 05:07:32
|
|
32
|
-
* @param {number} index
|
|
33
|
-
* @memberof FormMDCtrlController
|
|
34
|
-
*/
|
|
35
|
-
onDataRemove(index: number): void {
|
|
36
|
-
if (index < 0) {
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
super.onDataRemove(index);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
formControllerArray: Array<FormMDCtrlItemController> = [];
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* 表单项值规则校验
|
|
46
|
-
*
|
|
47
|
-
* @author zzq
|
|
48
|
-
* @date 2023-08-23 17:21:37
|
|
49
|
-
* @memberof FormMDCtrlRepeaterFormController
|
|
50
|
-
*/
|
|
51
|
-
async validate(): Promise<boolean> {
|
|
52
|
-
const values: Promise<boolean>[] = this.formControllerArray.map(
|
|
53
|
-
(c: FormMDCtrlItemController) => {
|
|
54
|
-
return c.validate();
|
|
55
|
-
},
|
|
56
|
-
);
|
|
57
|
-
const results = await Promise.all(values);
|
|
58
|
-
// 找不到value为false即全部是true
|
|
59
|
-
return results.findIndex(value => !value) === -1;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
setFromController(c: FormMDCtrlItemController): void {
|
|
63
|
-
this.formControllerArray.push(c);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { FormMDCtrlRepeaterFormController } from '../form-mdctrl-repeater-form/form-mdctrl-repeater-form.controller';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* 表单多数据部件表格类型控制器
|
|
5
|
-
*
|
|
6
|
-
* @author zk
|
|
7
|
-
* @date 2023-07-28 08:07:57
|
|
8
|
-
* @export
|
|
9
|
-
* @class FormMDCtrlGridController
|
|
10
|
-
* @extends {EditFormController}
|
|
11
|
-
* @implements {IFormController}
|
|
12
|
-
*/
|
|
13
|
-
export class FormMDCtrlRepeaterFormOneController extends FormMDCtrlRepeaterFormController {
|
|
14
|
-
/**
|
|
15
|
-
* 数据
|
|
16
|
-
*
|
|
17
|
-
* @author zk
|
|
18
|
-
* @date 2023-07-31 09:07:25
|
|
19
|
-
* @readonly
|
|
20
|
-
* @type {IData[]}
|
|
21
|
-
* @memberof FormMDCtrlRepeaterFormOneController
|
|
22
|
-
*/
|
|
23
|
-
get data(): IData[] {
|
|
24
|
-
return this.parent.state.contentCtrlData as IData[];
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* 内部表单项数据发生改变,同步contentCtrlData并设置外部表单值
|
|
29
|
-
*
|
|
30
|
-
* @author zk
|
|
31
|
-
* @date 2023-07-30 05:07:11
|
|
32
|
-
* @param {IData} data
|
|
33
|
-
* @param {number} index
|
|
34
|
-
* @memberof FormMDCtrlController
|
|
35
|
-
*/
|
|
36
|
-
onDataItemChange(data: IData): void {
|
|
37
|
-
this.parent.state.contentCtrlData = data;
|
|
38
|
-
this.parent.setFormDataValue();
|
|
39
|
-
}
|
|
40
|
-
}
|