@ibiz-template/runtime 0.1.9 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/index.esm.js +259 -96
  2. package/dist/index.system.min.js +1 -1
  3. package/dist/index.system.min.js.map +1 -1
  4. package/out/config/global-config.js +1 -1
  5. package/out/interface/common/i-ui-action-result/i-ui-action-result.d.ts +7 -0
  6. package/out/interface/common/i-ui-action-result/i-ui-action-result.d.ts.map +1 -1
  7. package/out/interface/controller/controller/control/i-form.controller.d.ts +7 -0
  8. package/out/interface/controller/controller/control/i-form.controller.d.ts.map +1 -1
  9. package/out/interface/controller/controller/control/i-grid.controller.d.ts +9 -1
  10. package/out/interface/controller/controller/control/i-grid.controller.d.ts.map +1 -1
  11. package/out/interface/controller/controller/control/i-tree.controller.d.ts +6 -4
  12. package/out/interface/controller/controller/control/i-tree.controller.d.ts.map +1 -1
  13. package/out/interface/controller/event/control/i-pickup-view-panel.event.d.ts +0 -15
  14. package/out/interface/controller/event/control/i-pickup-view-panel.event.d.ts.map +1 -1
  15. package/out/interface/controller/state/control/i-tree-exp-bar.state.d.ts +8 -0
  16. package/out/interface/controller/state/control/i-tree-exp-bar.state.d.ts.map +1 -1
  17. package/out/register/helper/common-register.d.ts +11 -0
  18. package/out/register/helper/common-register.d.ts.map +1 -0
  19. package/out/register/helper/common-register.js +20 -0
  20. package/out/register/helper/control-register.d.ts.map +1 -1
  21. package/out/register/helper/control-register.js +22 -5
  22. package/out/register/helper/editor-register.d.ts.map +1 -1
  23. package/out/register/helper/editor-register.js +25 -5
  24. package/out/register/helper/form-detail-register.d.ts.map +1 -1
  25. package/out/register/helper/form-detail-register.js +19 -5
  26. package/out/register/helper/grid-column-register.d.ts.map +1 -1
  27. package/out/register/helper/grid-column-register.js +19 -5
  28. package/out/register/helper/panel-item-register.d.ts.map +1 -1
  29. package/out/register/helper/panel-item-register.js +25 -5
  30. package/out/register/helper/portlet-register.d.ts.map +1 -1
  31. package/out/register/helper/portlet-register.js +19 -5
  32. package/out/register/helper/ui-action-register.d.ts.map +1 -1
  33. package/out/register/helper/ui-action-register.js +19 -5
  34. package/out/register/helper/view-register.d.ts.map +1 -1
  35. package/out/register/helper/view-register.js +18 -1
  36. package/out/service/app-data-entity/app-data-entity.d.ts.map +1 -1
  37. package/out/service/app-data-entity/app-data-entity.js +0 -1
  38. package/out/service/service/counter/counter.service.d.ts.map +1 -1
  39. package/out/service/service/counter/counter.service.js +4 -1
  40. package/out/ui-action/provider/sys-ui-action-provider.d.ts +1 -0
  41. package/out/ui-action/provider/sys-ui-action-provider.d.ts.map +1 -1
  42. package/out/ui-action/provider/sys-ui-action-provider.js +42 -1
  43. package/out/ui-action/provider/ui-action-provider-base.d.ts.map +1 -1
  44. package/out/ui-action/provider/ui-action-provider-base.js +1 -0
  45. package/out/ui-action/uiaction-util.d.ts.map +1 -1
  46. package/out/ui-action/uiaction-util.js +13 -1
  47. package/package.json +4 -4
  48. package/src/config/global-config.ts +1 -1
  49. package/src/interface/common/i-ui-action-result/i-ui-action-result.ts +8 -0
  50. package/src/interface/controller/controller/control/i-form.controller.ts +8 -0
  51. package/src/interface/controller/controller/control/i-grid.controller.ts +10 -1
  52. package/src/interface/controller/controller/control/i-tree.controller.ts +9 -4
  53. package/src/interface/controller/event/control/i-pickup-view-panel.event.ts +0 -16
  54. package/src/interface/controller/state/control/i-tree-exp-bar.state.ts +10 -1
  55. package/src/register/helper/common-register.ts +28 -0
  56. package/src/register/helper/control-register.ts +21 -6
  57. package/src/register/helper/editor-register.ts +22 -7
  58. package/src/register/helper/form-detail-register.ts +18 -6
  59. package/src/register/helper/grid-column-register.ts +19 -6
  60. package/src/register/helper/panel-item-register.ts +22 -6
  61. package/src/register/helper/portlet-register.ts +19 -6
  62. package/src/register/helper/ui-action-register.ts +19 -6
  63. package/src/register/helper/view-register.ts +18 -1
  64. package/src/service/app-data-entity/app-data-entity.ts +0 -1
  65. package/src/service/service/counter/counter.service.ts +4 -1
  66. package/src/ui-action/provider/sys-ui-action-provider.ts +41 -1
  67. package/src/ui-action/provider/ui-action-provider-base.ts +1 -0
  68. package/src/ui-action/uiaction-util.ts +12 -1
@@ -1,5 +1,6 @@
1
1
  import { IAppView } from '@ibiz/model-core';
2
2
  import { IViewProvider } from '../../interface';
3
+ import { getPluginRegisterKey } from './common-register';
3
4
 
4
5
  /** 视图适配器前缀 */
5
6
  export const VIEW_PROVIDER_PREFIX = 'VIEW';
@@ -35,7 +36,21 @@ export async function getViewProvider(
35
36
  model: IAppView,
36
37
  ): Promise<IViewProvider | undefined> {
37
38
  let provider: IViewProvider | undefined;
38
- const { viewType, viewStyle } = model as Required<IAppView>;
39
+ const { viewType, viewStyle, sysPFPluginId, appId } =
40
+ model as Required<IAppView>;
41
+
42
+ // 找插件适配器
43
+ if (sysPFPluginId) {
44
+ const pluginKey = await getPluginRegisterKey(sysPFPluginId, appId);
45
+ if (pluginKey) {
46
+ provider = getProvider(pluginKey);
47
+ }
48
+ if (!provider) {
49
+ ibiz.log.error(`找不到视图插件${pluginKey}对应的适配器`);
50
+ } else {
51
+ return provider;
52
+ }
53
+ }
39
54
 
40
55
  // 再找视图类型和视图样式
41
56
  if (viewStyle && viewStyle !== 'DEFAULT') {
@@ -46,6 +61,8 @@ export async function getViewProvider(
46
61
  `找不到视图类型:[${viewType}]的视图样式:[${viewStyle}]对应的适配器`,
47
62
  model,
48
63
  );
64
+ } else {
65
+ return provider;
49
66
  }
50
67
  }
51
68
 
@@ -82,7 +82,6 @@ export class AppDataEntity implements IDataEntity {
82
82
  Object.defineProperty(this, 'srfkey', {
83
83
  set(val: unknown) {
84
84
  _srfkey = val;
85
- this._data[key] = val;
86
85
  },
87
86
  get() {
88
87
  return this._data[key] || _srfkey;
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/no-unused-vars */
2
- import { RuntimeModelError } from '@ibiz-template/core';
2
+ import { ModelError, RuntimeModelError } from '@ibiz-template/core';
3
3
  import { IAppCounter, IAppCounterRef } from '@ibiz/model-core';
4
4
  import { AppCounter } from '../../utils';
5
5
 
@@ -70,6 +70,9 @@ export class CounterService {
70
70
  if (!appCounter) {
71
71
  throw new RuntimeModelError(model, `未配置应用计数器!`);
72
72
  }
73
+ if (appCounter.counterType === 'CUSTOM') {
74
+ throw new ModelError(appCounter, `未支持自定义计数器`);
75
+ }
73
76
  return this.getCounter(appCounter, context, params);
74
77
  }
75
78
  }
@@ -13,12 +13,52 @@ import { UIActionProviderBase } from './ui-action-provider-base';
13
13
  * @implements {IUIActionProvider}
14
14
  */
15
15
  export class SysUIActionProvider extends UIActionProviderBase {
16
+ private predefinedActionMap: Map<string, string> = new Map([
17
+ ['EDITVIEW_EXITACTION', 'Exit'],
18
+ ['EDITVIEW_SAVEANDEXITACTION', 'SaveAndExit'],
19
+ ['TREEVIEW_REFRESHPARENTACTION', 'RefreshParent'],
20
+ ['GRIDVIEW_EXPORTXMLACTION', 'ExportModel'],
21
+ ['GRIDVIEW_EXPORTACTION', 'ExportExcel'],
22
+ ['EDITVIEW_REMOVEANDEXITACTION', 'RemoveAndExit'],
23
+ ['GRIDVIEW_PRINTACTION', 'Print'],
24
+ ['EDITVIEW_NEXTRECORDACTION', 'NextRecord'],
25
+ ['GRIDVIEW_NEWROWACTION', 'NewRow'],
26
+ ['EDITVIEW_LASTRECORDACTION', 'LastRecord'],
27
+ ['EDITVIEW_PREVRECORDACTION', 'PrevRecord'],
28
+ ['GRIDVIEW_SEARCHBAR', 'ToggleFilter'],
29
+ ['EDITVIEW_SAVEANDSTARTWFACTION', 'SaveAndStart'],
30
+ ['EDITVIEW_NEWACTION', 'New'],
31
+ ['EDITVIEW_PRINTACTION', 'Print'],
32
+ ['EDITVIEW_COPYACTION', 'Copy'],
33
+ ['EDITVIEW_HELPACTION', 'Help'],
34
+ ['EDITVIEW_FIRSTRECORDACTION', 'FirstRecord'],
35
+ ['GRIDVIEW_REFRESHACTION', 'Refresh'],
36
+ ['EDITVIEW_SAVEANDNEWACTION', 'SaveAndNew'],
37
+ ['EDITVIEW_VIEWWFSTEPACTORACTION', 'ViewWFStep'],
38
+ ['EDITVIEW_SAVEACTION', 'Save'],
39
+ ['TREEVIEW_REFRESHALLACTION', 'RefreshAll'],
40
+ ['GRIDVIEW_IMPORTBAR', 'Import'],
41
+ ['GRIDVIEW_ROWEDITACTION', 'ToggleRowEdit'],
42
+ ['GRIDVIEW_NEWACTION', 'New'],
43
+ ['GRIDVIEW_EDITACTION', 'Edit'],
44
+ ['GRIDVIEW_HELPACTION', 'Help'],
45
+ ['EDITVIEW_REFRESHACTION', 'Refresh'],
46
+ ['GRIDVIEW_REMOVEACTION', 'Remove'],
47
+ ['GRIDVIEW_COPYACTION', 'Copy'],
48
+ ['GRIDVIEW_VIEWACTION', 'View'],
49
+ ['GRIDVIEW_SAVEROWACTION', 'SaveRow'],
50
+ ['APP_LOGIN', 'login'],
51
+ ['APP_LOGOUT', 'logout'],
52
+ ]);
53
+
16
54
  async execAction(
17
55
  action: IAppDEUIAction,
18
56
  args: IUILogicParams,
19
57
  ): Promise<IUIActionResult> {
20
58
  const { view } = args!;
21
- const uIActionTag = action.uiactionTag!;
59
+ const uIActionTag =
60
+ this.predefinedActionMap.get(action.predefinedType!) ||
61
+ action.uiactionTag!;
22
62
 
23
63
  if (uIActionTag === SysUIActionTag.EXIT) {
24
64
  return { closeView: true };
@@ -34,6 +34,7 @@ export abstract class UIActionProviderBase implements IUIActionProvider {
34
34
  const { context, params, data } = args;
35
35
  const result: IUIActionResult = {
36
36
  refresh: action.reloadData,
37
+ refreshMode: action.refreshMode,
37
38
  closeView: action.closeEditView,
38
39
  };
39
40
 
@@ -51,7 +51,18 @@ export class UIActionUtil {
51
51
  if (result.closeView) {
52
52
  params.view.closeView();
53
53
  } else if (result.refresh) {
54
- await params.view.callUIAction(SysUIActionTag.REFRESH);
54
+ switch (result.refreshMode) {
55
+ case 1:
56
+ await params.view.callUIAction(SysUIActionTag.REFRESH);
57
+ break;
58
+ case 2:
59
+ await params.view.parentView?.callUIAction(SysUIActionTag.REFRESH);
60
+ break;
61
+ case 3:
62
+ await params.view.getTopView()?.callUIAction(SysUIActionTag.REFRESH);
63
+ break;
64
+ default:
65
+ }
55
66
  }
56
67
  }
57
68
  }