@ibiz-template/runtime 0.6.17 → 0.7.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.
Files changed (114) hide show
  1. package/dist/index.esm.js +1083 -331
  2. package/dist/index.system.min.js +1 -1
  3. package/out/app-hub.d.ts +7 -0
  4. package/out/app-hub.d.ts.map +1 -1
  5. package/out/app-hub.js +11 -0
  6. package/out/application.d.ts +7 -0
  7. package/out/application.d.ts.map +1 -1
  8. package/out/application.js +9 -0
  9. package/out/controller/common/control/md-control.controller.d.ts.map +1 -1
  10. package/out/controller/common/control/md-control.controller.js +3 -0
  11. package/out/controller/control/chart/chart.controller.d.ts +38 -0
  12. package/out/controller/control/chart/chart.controller.d.ts.map +1 -1
  13. package/out/controller/control/chart/chart.controller.js +183 -0
  14. package/out/controller/control/chart/generator/base-series-generator.js +1 -1
  15. package/out/controller/control/form/edit-form/edit-form.controller.d.ts.map +1 -1
  16. package/out/controller/control/form/edit-form/edit-form.controller.js +8 -6
  17. package/out/controller/control/form/form/form.controller.d.ts +16 -0
  18. package/out/controller/control/form/form/form.controller.d.ts.map +1 -1
  19. package/out/controller/control/form/form/form.controller.js +32 -3
  20. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.d.ts +2 -2
  21. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.d.ts.map +1 -1
  22. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.state.js +2 -2
  23. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts +32 -1
  24. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.d.ts.map +1 -1
  25. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.controller.js +63 -0
  26. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.state.d.ts +12 -0
  27. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.state.d.ts.map +1 -0
  28. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl.state.js +13 -0
  29. package/out/controller/control/grid/grid/grid.controller.d.ts +14 -0
  30. package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
  31. package/out/controller/control/grid/grid/grid.controller.js +20 -1
  32. package/out/controller/control/search-bar/index.d.ts +3 -1
  33. package/out/controller/control/search-bar/index.d.ts.map +1 -1
  34. package/out/controller/control/search-bar/index.js +3 -1
  35. package/out/controller/control/search-bar/interface-util.d.ts +75 -0
  36. package/out/controller/control/search-bar/interface-util.d.ts.map +1 -0
  37. package/out/controller/control/search-bar/interface-util.js +274 -0
  38. package/out/controller/control/search-bar/search-bar-filter-items.controller.d.ts +1 -2
  39. package/out/controller/control/search-bar/search-bar-filter-items.controller.d.ts.map +1 -1
  40. package/out/controller/control/search-bar/search-bar-filter-items.controller.js +13 -10
  41. package/out/controller/control/search-bar/search-bar-filter-simple-items.controller.d.ts +37 -0
  42. package/out/controller/control/search-bar/search-bar-filter-simple-items.controller.d.ts.map +1 -0
  43. package/out/controller/control/search-bar/search-bar-filter-simple-items.controller.js +47 -0
  44. package/out/controller/control/search-bar/search-bar-filter.controller.d.ts +20 -5
  45. package/out/controller/control/search-bar/search-bar-filter.controller.d.ts.map +1 -1
  46. package/out/controller/control/search-bar/search-bar-filter.controller.js +13 -2
  47. package/out/controller/control/search-bar/search-bar.controller.d.ts +15 -2
  48. package/out/controller/control/search-bar/search-bar.controller.d.ts.map +1 -1
  49. package/out/controller/control/search-bar/search-bar.controller.js +80 -30
  50. package/out/controller/control/search-bar/util.d.ts +35 -0
  51. package/out/controller/control/search-bar/util.d.ts.map +1 -0
  52. package/out/controller/control/search-bar/util.js +45 -0
  53. package/out/global/global-util/global-util.d.ts +14 -0
  54. package/out/global/global-util/global-util.d.ts.map +1 -1
  55. package/out/global/global-util/global-util.js +19 -0
  56. package/out/interface/common/i-app-hub-service/i-app-hub-service.d.ts +7 -0
  57. package/out/interface/common/i-app-hub-service/i-app-hub-service.d.ts.map +1 -1
  58. package/out/interface/common/i-app-service/i-app-service.d.ts +7 -0
  59. package/out/interface/common/i-app-service/i-app-service.d.ts.map +1 -1
  60. package/out/interface/controller/controller/control/i-app-menu.controller.d.ts +8 -1
  61. package/out/interface/controller/controller/control/i-app-menu.controller.d.ts.map +1 -1
  62. package/out/interface/controller/state/control/i-chart.state.d.ts +28 -0
  63. package/out/interface/controller/state/control/i-chart.state.d.ts.map +1 -1
  64. package/out/interface/controller/state/control/i-md-control.state.d.ts +4 -0
  65. package/out/interface/controller/state/control/i-md-control.state.d.ts.map +1 -1
  66. package/out/interface/controller/state/control/index.d.ts +1 -1
  67. package/out/interface/controller/state/control/index.d.ts.map +1 -1
  68. package/out/interface/controller/state/control/index.js +1 -1
  69. package/out/interface/controller/state/control/search-bar/i-filter-node.d.ts +157 -0
  70. package/out/interface/controller/state/control/search-bar/i-filter-node.d.ts.map +1 -0
  71. package/out/interface/controller/state/control/search-bar/i-quick-search.d.ts +24 -0
  72. package/out/interface/controller/state/control/search-bar/i-quick-search.d.ts.map +1 -0
  73. package/out/interface/controller/state/control/search-bar/i-quick-search.js +1 -0
  74. package/out/interface/controller/state/control/search-bar/i-search-bar-group.d.ts +89 -0
  75. package/out/interface/controller/state/control/search-bar/i-search-bar-group.d.ts.map +1 -0
  76. package/out/interface/controller/state/control/search-bar/i-search-bar-group.js +1 -0
  77. package/out/interface/controller/state/control/search-bar/i-search-bar.state.d.ts +78 -0
  78. package/out/interface/controller/state/control/search-bar/i-search-bar.state.d.ts.map +1 -0
  79. package/out/interface/controller/state/control/search-bar/i-search-bar.state.js +1 -0
  80. package/out/interface/controller/state/control/search-bar/i-search-cond-ex.d.ts +65 -0
  81. package/out/interface/controller/state/control/search-bar/i-search-cond-ex.d.ts.map +1 -0
  82. package/out/interface/controller/state/control/search-bar/i-search-cond-ex.js +1 -0
  83. package/out/interface/controller/state/control/search-bar/i-search-cond.d.ts +43 -0
  84. package/out/interface/controller/state/control/search-bar/i-search-cond.d.ts.map +1 -0
  85. package/out/interface/controller/state/control/search-bar/i-search-cond.js +1 -0
  86. package/out/interface/controller/state/control/search-bar/index.d.ts +7 -0
  87. package/out/interface/controller/state/control/search-bar/index.d.ts.map +1 -0
  88. package/out/interface/controller/state/control/search-bar/index.js +1 -0
  89. package/out/service/service/code-list/code-list.service.d.ts +14 -0
  90. package/out/service/service/code-list/code-list.service.d.ts.map +1 -1
  91. package/out/service/service/code-list/code-list.service.js +39 -0
  92. package/out/service/service/control/md-control.service.d.ts.map +1 -1
  93. package/out/service/service/control/md-control.service.js +3 -0
  94. package/out/service/service/counter/counter.service.d.ts.map +1 -1
  95. package/out/service/service/counter/counter.service.js +5 -1
  96. package/out/service/utils/app-counter/app-counter.d.ts.map +1 -1
  97. package/out/service/utils/app-counter/app-counter.js +4 -2
  98. package/out/service/utils/dynamic-code-list/dynamic-code-list.d.ts +81 -0
  99. package/out/service/utils/dynamic-code-list/dynamic-code-list.d.ts.map +1 -1
  100. package/out/service/utils/dynamic-code-list/dynamic-code-list.js +127 -2
  101. package/out/ui-action/provider/front-ui-action-provider.d.ts.map +1 -1
  102. package/out/ui-action/provider/front-ui-action-provider.js +0 -1
  103. package/out/ui-logic/ui-logic-context.d.ts +7 -0
  104. package/out/ui-logic/ui-logic-context.d.ts.map +1 -1
  105. package/out/ui-logic/ui-logic-context.js +7 -0
  106. package/out/ui-logic/ui-logic-param/ui-logic-param.d.ts.map +1 -1
  107. package/out/ui-logic/ui-logic-param/ui-logic-param.js +16 -3
  108. package/package.json +4 -4
  109. package/out/controller/control/search-bar/use-searchcond.d.ts +0 -33
  110. package/out/controller/control/search-bar/use-searchcond.d.ts.map +0 -1
  111. package/out/controller/control/search-bar/use-searchcond.js +0 -117
  112. package/out/interface/controller/state/control/i-search-bar.state.d.ts +0 -224
  113. package/out/interface/controller/state/control/i-search-bar.state.d.ts.map +0 -1
  114. /package/out/interface/controller/state/control/{i-search-bar.state.js → search-bar/i-filter-node.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"code-list.service.d.ts","sourceRoot":"","sources":["../../../../src/service/service/code-list/code-list.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD;;;;;;;GAOG;AACH,qBAAa,eAAe;IAoBd,SAAS,CAAC,QAAQ,EAAE,YAAY;IAnB5C;;;;;OAKG;IACH,SAAS,CAAC,YAAY,4BAAmC;IAEzD;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,oBAAoB,CAAC,CAChE;gBAEU,QAAQ,EAAE,YAAY;IAE5C;;;;;;;OAOG;IACH,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,EAAE;IAc3D;;;;;;;;OAQG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAMzC;;;;;;;;OAQG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIlD;;;;;;;;;OASG;IACH,SAAS,CAAC,iBAAiB,CACzB,SAAS,EAAE,SAAS,EAAE,EACtB,aAAa,EAAE,OAAO,GACrB,QAAQ,CAAC,YAAY,CAAC,EAAE;IAuC3B;;;;;;;;OAQG;cACa,kBAAkB,CAChC,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IAa1B;;;;;;;;;OASG;IACG,GAAG,CACP,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC;CAcpC"}
1
+ {"version":3,"file":"code-list.service.d.ts","sourceRoot":"","sources":["../../../../src/service/service/code-list/code-list.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD;;;;;;;GAOG;AACH,qBAAa,eAAe;IAoBd,SAAS,CAAC,QAAQ,EAAE,YAAY;IAnB5C;;;;;OAKG;IACH,SAAS,CAAC,YAAY,4BAAmC;IAEzD;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,oBAAoB,CAAC,CAChE;gBAEU,QAAQ,EAAE,YAAY;IAE5C;;;;;;;OAOG;IACH,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,EAAE;IAc3D;;;;;;;;OAQG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAMzC;;;;;;;;OAQG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIlD;;;;;;;;;OASG;IACH,SAAS,CAAC,iBAAiB,CACzB,SAAS,EAAE,SAAS,EAAE,EACtB,aAAa,EAAE,OAAO,GACrB,QAAQ,CAAC,YAAY,CAAC,EAAE;IAuC3B;;;;;;;;OAQG;cACa,kBAAkB,CAChC,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IAa1B;;;;;;;;;OASG;IACG,GAAG,CACP,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC;IAenC;;;;;OAKG;IACG,mBAAmB,CACvB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAmB5C;;;;;OAKG;IACH,OAAO,IAAI,IAAI;CAQhB"}
@@ -165,4 +165,43 @@ export class CodeListService {
165
165
  // todo 预定义代码表
166
166
  return [];
167
167
  }
168
+ /**
169
+ * 获取代码表实例对象(动态代码表返回具体实例,静态代码表返回undefined)
170
+ *
171
+ * @param tag 代码表标识
172
+ * @returns 动态代码表实例|undefined
173
+ */
174
+ async getCodeListInstance(tag) {
175
+ let codeListInstance;
176
+ const codeList = this.allCodeLists.get(tag);
177
+ if (!codeList) {
178
+ throw new RuntimeError(`找不到${tag}代码表`);
179
+ }
180
+ if (codeList.codeListType === 'DYNAMIC') {
181
+ const codeName = codeList.codeName;
182
+ if (this.cache.has(codeName)) {
183
+ codeListInstance = this.cache.get(codeName);
184
+ }
185
+ else {
186
+ codeListInstance = new DynamicCodeListCache(codeList);
187
+ this.cache.set(codeName, codeListInstance);
188
+ await codeListInstance.init();
189
+ }
190
+ }
191
+ return codeListInstance;
192
+ }
193
+ /**
194
+ * 销毁(清除动态代码表监听)
195
+ *
196
+ * @author tony001
197
+ * @return {void}
198
+ */
199
+ destroy() {
200
+ const cacheList = Array.from(this.cache.values());
201
+ cacheList.forEach(item => {
202
+ if (item instanceof DynamicCodeListCache) {
203
+ item.destroy();
204
+ }
205
+ });
206
+ }
168
207
  }
@@ -1 +1 @@
1
- {"version":3,"file":"md-control.service.d.ts","sourceRoot":"","sources":["../../../../src/service/service/control/md-control.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgB,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,gBAAgB,CAC3B,CAAC,SAAS,cAAc,GAAG,cAAc,CACzC,SAAQ,cAAc,CAAC,CAAC,CAAC;IACzB;;;;;;;;OAQG;IACG,KAAK,CACT,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;IAQtC;;;;;;;;OAQG;IACG,GAAG,CACP,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAOpC;;;;;;;;OAQG;IACG,QAAQ,CACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAQpC;;;;;;;;OAQG;IACG,MAAM,CACV,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,aAAa,CAAC;IAOzB;;;;;;;;OAQG;IACG,MAAM,CACV,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAQpC;;;;;;;;OAQG;IACG,MAAM,CACV,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAQpC;;;;;;;;OAQG;IACG,WAAW,CACf,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,EAAE,GAChB,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;IAYtC;;;;;;;;;OASG;IACG,UAAU,CACd,WAAW,EAAE,aAAa,EAC1B,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE,OAAY,GACpB,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAU/B;;;;;;;OAOG;IACH,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa;CAwBvD"}
1
+ {"version":3,"file":"md-control.service.d.ts","sourceRoot":"","sources":["../../../../src/service/service/control/md-control.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgB,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,gBAAgB,CAC3B,CAAC,SAAS,cAAc,GAAG,cAAc,CACzC,SAAQ,cAAc,CAAC,CAAC,CAAC;IACzB;;;;;;;;OAQG;IACG,KAAK,CACT,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;IAQtC;;;;;;;;OAQG;IACG,GAAG,CACP,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAOpC;;;;;;;;OAQG;IACG,QAAQ,CACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAQpC;;;;;;;;OAQG;IACG,MAAM,CACV,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,aAAa,CAAC;IAOzB;;;;;;;;OAQG;IACG,MAAM,CACV,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAQpC;;;;;;;;OAQG;IACG,MAAM,CACV,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAQpC;;;;;;;;OAQG;IACG,WAAW,CACf,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,EAAE,GAChB,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;IAYtC;;;;;;;;;OASG;IACG,UAAU,CACd,WAAW,EAAE,aAAa,EAC1B,QAAQ,EAAE,OAAO,EACjB,OAAO,GAAE,OAAY,GACpB,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAU/B;;;;;;;OAOG;IACH,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,aAAa;CA2BvD"}
@@ -152,6 +152,9 @@ export class MDControlService extends ControlService {
152
152
  if (res.headers['x-total']) {
153
153
  res.total = Number(res.headers['x-total']);
154
154
  }
155
+ if (res.headers['x-total-pages']) {
156
+ res.totalPages = Number(res.headers['x-total-pages']);
157
+ }
155
158
  }
156
159
  if (res.ok) {
157
160
  if (isArray(res.data)) {
@@ -1 +1 @@
1
- {"version":3,"file":"counter.service.d.ts","sourceRoot":"","sources":["../../../../src/service/service/counter/counter.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB;;;;;;;;OAQG;IACH,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAa;IAEjE;;;;;;;OAOG;WACU,UAAU,CACrB,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC;IAgBtB;;;;;;;;;;OAUG;WACU,eAAe,CAC1B,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC;CAOvB"}
1
+ {"version":3,"file":"counter.service.d.ts","sourceRoot":"","sources":["../../../../src/service/service/counter/counter.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB;;;;;;;;OAQG;IACH,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAa;IAEjE;;;;;;;OAOG;WACU,UAAU,CACrB,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC;IAoBtB;;;;;;;;;;OAUG;WACU,eAAe,CAC1B,KAAK,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,UAAU,CAAC;CAOvB"}
@@ -19,7 +19,11 @@ export class CounterService {
19
19
  * @return {*} {Promise<AppCounter>}
20
20
  */
21
21
  static async getCounter(model, context, params) {
22
- const id = model.id;
22
+ let id = model.id;
23
+ // 可由外部传入自定义标识,应用同时存在子关系的A\B单数据页面,计数器对象应该不一样
24
+ if (params && params.customId) {
25
+ id = params.customId;
26
+ }
23
27
  if (this.counterMap.has(id)) {
24
28
  const counter = this.counterMap.get(id);
25
29
  if (counter.isDestroyed === false) {
@@ -1 +1 @@
1
- {"version":3,"file":"app-counter.d.ts","sourceRoot":"","sources":["../../../../src/service/utils/app-counter/app-counter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,cAAc,EAAgB,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAe,OAAO,EAAE,MAAM,SAAS,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAInD;;;;;;;GAOG;AACH,qBAAa,UAAU;IA0CF,KAAK,EAAE,WAAW;IAzCrC,SAAS,CAAC,GAAG,EAAG,WAAW,CAAC;IAE5B,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC;IAEjC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAS;IAErC;;;;;;;OAOG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAwB;IAEnD,SAAS,CAAC,MAAM,EAAE,OAAO,CAAM;IAE/B,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC;QAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,CAAA;KAAE,CAAC,CAAiB;IAE1E;;;;;;;OAOG;IACH,SAAS,CAAC,IAAI,EAAE,KAAK,CAAM;IAE3B;;;;;;OAMG;gBACgB,KAAK,EAAE,WAAW;IAIrC;;;;;;;OAOG;IACG,IAAI,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAS/D;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAUhD;;;;;;;;OAQG;IACH,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAS/D;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,IAAI,IAAI;IAU1B;;;;;;OAMG;IACH,SAAS,CAAC,eAAe,IAAI,IAAI;IAOjC;;;;;;;OAOG;cACa,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC;IAItC;;;;;;;;OAQG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;IAK7D;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,SAAS,GAAE,OAAc,GAAG,IAAI;IAOpE;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAI1C;;;;;;;OAOG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI/B;;;;;OAKG;IACH,OAAO,IAAI,IAAI;CAOhB"}
1
+ {"version":3,"file":"app-counter.d.ts","sourceRoot":"","sources":["../../../../src/service/utils/app-counter/app-counter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,cAAc,EAAgB,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAe,OAAO,EAAE,MAAM,SAAS,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAInD;;;;;;;GAOG;AACH,qBAAa,UAAU;IA0CF,KAAK,EAAE,WAAW;IAzCrC,SAAS,CAAC,GAAG,EAAG,WAAW,CAAC;IAE5B,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC;IAEjC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAS;IAErC;;;;;;;OAOG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAwB;IAEnD,SAAS,CAAC,MAAM,EAAE,OAAO,CAAM;IAE/B,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC;QAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,CAAA;KAAE,CAAC,CAAiB;IAE1E;;;;;;;OAOG;IACH,SAAS,CAAC,IAAI,EAAE,KAAK,CAAM;IAE3B;;;;;;OAMG;gBACgB,KAAK,EAAE,WAAW;IAIrC;;;;;;;OAOG;IACG,IAAI,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAS/D;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAchD;;;;;;;;OAQG;IACH,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAS/D;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,IAAI,IAAI;IAU1B;;;;;;OAMG;IACH,SAAS,CAAC,eAAe,IAAI,IAAI;IAOjC;;;;;;;OAOG;cACa,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC;IAItC;;;;;;;;OAQG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;IAK7D;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,SAAS,GAAE,OAAc,GAAG,IAAI;IAOpE;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IAI1C;;;;;;;OAOG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI/B;;;;;OAKG;IACH,OAAO,IAAI,IAAI;CAOhB"}
@@ -74,7 +74,9 @@ export class AppCounter {
74
74
  const data = msg.data;
75
75
  if (this.model.appDataEntityId) {
76
76
  const codeName = calcDeCodeNameById(this.model.appDataEntityId);
77
- if (data && data.srfdecodename === codeName) {
77
+ if (data &&
78
+ data.srfdecodename &&
79
+ data.srfdecodename.toLowerCase() === codeName) {
78
80
  this.refresh();
79
81
  }
80
82
  }
@@ -195,6 +197,6 @@ export class AppCounter {
195
197
  this.context.destroy();
196
198
  this.destroyInterval();
197
199
  this.evt.reset();
198
- ibiz.mc.command.change.on(this.countChange);
200
+ ibiz.mc.command.change.off(this.countChange);
199
201
  }
200
202
  }
@@ -1,4 +1,6 @@
1
1
  import { IAppCodeList } from '@ibiz/model-core';
2
+ import { IPortalMessage } from '@ibiz-template/core';
3
+ import { QXEvent } from 'qx-util';
2
4
  import { Application } from '../../../application';
3
5
  import { CodeListItem } from '../../../interface';
4
6
  /**
@@ -70,6 +72,34 @@ export declare class DynamicCodeListCache {
70
72
  * @type {boolean}
71
73
  */
72
74
  protected isPredefined: boolean;
75
+ /**
76
+ * 应用上下文
77
+ *
78
+ * @author tony001
79
+ * @date 2024-04-10 15:04:25
80
+ * @protected
81
+ * @type {IContext}
82
+ */
83
+ protected context: IContext;
84
+ /**
85
+ * 视图参数
86
+ *
87
+ * @author tony001
88
+ * @date 2024-04-10 15:04:39
89
+ * @protected
90
+ * @type {IParams}
91
+ */
92
+ protected params: IParams;
93
+ /**
94
+ * 事件对象
95
+ *
96
+ * @author tony001
97
+ * @date 2024-04-10 17:04:00
98
+ * @protected
99
+ */
100
+ protected evt: QXEvent<{
101
+ change: (data: CodeListItem[]) => void;
102
+ }>;
73
103
  /**
74
104
  * 初始化promise
75
105
  *
@@ -79,6 +109,16 @@ export declare class DynamicCodeListCache {
79
109
  */
80
110
  protected initPromise?: Promise<void>;
81
111
  constructor(codeList: IAppCodeList);
112
+ /**
113
+ * 设置上下文以及查询参数
114
+ *
115
+ * @author tony001
116
+ * @date 2024-04-10 15:04:04
117
+ * @protected
118
+ * @param {IContext} [context]
119
+ * @param {IParams} [params]
120
+ */
121
+ protected setParams(context?: IContext, params?: IParams): void;
82
122
  /**
83
123
  * 初始化
84
124
  *
@@ -125,6 +165,47 @@ export declare class DynamicCodeListCache {
125
165
  * @returns {*} {Promise<IData[]>}
126
166
  */
127
167
  get(context: IContext, params?: IParams): Promise<CodeListItem[]>;
168
+ /**
169
+ * 接受代码表实体数据变更,刷新代码表
170
+ *
171
+ * @author tony001
172
+ * @date 2024-04-10 15:04:42
173
+ * @protected
174
+ * @param {IPortalMessage} msg
175
+ */
176
+ protected codelistChange(msg: IPortalMessage): void;
177
+ /**
178
+ * 刷新代码表数据
179
+ *
180
+ * @author tony001
181
+ * @date 2024-04-10 17:04:20
182
+ * @return {*} {Promise<void>}
183
+ */
184
+ refresh(): Promise<void>;
185
+ /**
186
+ * 代码表数据变更事件监听
187
+ *
188
+ * @author tony001
189
+ * @date 2024-04-10 17:04:52
190
+ * @param {(data: CodeListItem[]) => void} fn
191
+ * @param {boolean} [immediate=true] 当有数据时,立即触发一次回调
192
+ */
193
+ onChange(fn: (data: CodeListItem[]) => void, immediate?: boolean): void;
194
+ /**
195
+ * 取消代码表数据变更监听
196
+ *
197
+ * @author tony001
198
+ * @date 2024-04-10 17:04:57
199
+ * @param {(data: CodeListItem[]) => void} fn
200
+ */
201
+ offChange(fn: (data: CodeListItem[]) => void): void;
202
+ /**
203
+ * 销毁(取消数据变更监听)
204
+ *
205
+ * @author tony001
206
+ * @date 2024-04-10 15:04:11
207
+ */
208
+ destroy(): void;
128
209
  }
129
210
  export {};
130
211
  //# sourceMappingURL=dynamic-code-list.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-code-list.d.ts","sourceRoot":"","sources":["../../../../src/service/utils/dynamic-code-list/dynamic-code-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIlD;;;;;;GAMG;AACH,KAAK,SAAS,GAAG;IACf;;;;;;OAMG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IAEvB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CACnC,CAAC;AAEF;;;;;;;GAOG;AACH,qBAAa,oBAAoB;IAC/B,SAAS,CAAC,GAAG,EAAG,WAAW,CAAC;IAE5B;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,EAAE,YAAY,CAAC;IAEjC;;;;;;OAMG;IACH,SAAS,CAAC,KAAK,yBAAgC;IAE/C;;;;;;;OAOG;IACH,SAAS,CAAC,YAAY,EAAE,OAAO,CAAS;IAExC;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAE1B,QAAQ,EAAE,YAAY;IAIlC;;;;;;OAMG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB3B;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY;IAwEhD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY;IAetD,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;IAS9C;;;;;;;;;OASG;cACa,IAAI,CAClB,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IAuF1B;;;;OAIG;IACH,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS;IAmBrE;;;;;;;;OAQG;IACG,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAE,OAAY,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CAyC5E"}
1
+ {"version":3,"file":"dynamic-code-list.d.ts","sourceRoot":"","sources":["../../../../src/service/utils/dynamic-code-list/dynamic-code-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAEL,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,OAAO,EAAe,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAC;AAK/D;;;;;;GAMG;AACH,KAAK,SAAS,GAAG;IACf;;;;;;OAMG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IAEvB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CACnC,CAAC;AAEF;;;;;;;GAOG;AACH,qBAAa,oBAAoB;IAC/B,SAAS,CAAC,GAAG,EAAG,WAAW,CAAC;IAE5B;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,EAAE,YAAY,CAAC;IAEjC;;;;;;OAMG;IACH,SAAS,CAAC,KAAK,yBAAgC;IAE/C;;;;;;;OAOG;IACH,SAAS,CAAC,YAAY,EAAE,OAAO,CAAS;IAExC;;;;;;;OAOG;IACH,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAwB;IAEnD;;;;;;;OAOG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAM;IAE/B;;;;;;OAMG;IACH,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC;QAAE,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,IAAI,CAAA;KAAE,CAAC,CAClD;IAEhB;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAE1B,QAAQ,EAAE,YAAY;IAUlC;;;;;;;;OAQG;IACH,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAS/D;;;;;;OAMG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB3B;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY;IAwEhD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY;IAetD,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;IAS9C;;;;;;;;;OASG;cACa,IAAI,CAClB,OAAO,EAAE,QAAQ,EACjB,MAAM,GAAE,OAAY,GACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IAwF1B;;;;OAIG;IACH,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS;IAmBrE;;;;;;;;OAQG;IACG,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAE,OAAY,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IA0C3E;;;;;;;OAOG;IACH,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAenD;;;;;;OAMG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAS9B;;;;;;;OAOG;IACH,QAAQ,CACN,EAAE,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,IAAI,EAClC,SAAS,GAAE,OAAc,GACxB,IAAI;IASP;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,IAAI,GAAG,IAAI;IAInD;;;;;OAKG;IACH,OAAO,IAAI,IAAI;CAMhB"}
@@ -1,7 +1,9 @@
1
- import { ModelError, RuntimeModelError } from '@ibiz-template/core';
2
- import { isNil } from 'ramda';
1
+ import { IBizContext, ModelError, RuntimeModelError, } from '@ibiz-template/core';
2
+ import { clone, isNil } from 'ramda';
3
+ import { QXEvent, notNilEmpty } from 'qx-util';
3
4
  import { convertNavData, ScriptFactory } from '../../../utils';
4
5
  import { fieldValueToBoolean } from '../../utils';
6
+ import { calcDeCodeNameById } from '../../../model';
5
7
  /**
6
8
  * 动态代码表缓存对象
7
9
  *
@@ -29,7 +31,56 @@ export class DynamicCodeListCache {
29
31
  * @type {boolean}
30
32
  */
31
33
  this.isPredefined = false;
34
+ /**
35
+ * 应用上下文
36
+ *
37
+ * @author tony001
38
+ * @date 2024-04-10 15:04:25
39
+ * @protected
40
+ * @type {IContext}
41
+ */
42
+ this.context = IBizContext.create();
43
+ /**
44
+ * 视图参数
45
+ *
46
+ * @author tony001
47
+ * @date 2024-04-10 15:04:39
48
+ * @protected
49
+ * @type {IParams}
50
+ */
51
+ this.params = {};
52
+ /**
53
+ * 事件对象
54
+ *
55
+ * @author tony001
56
+ * @date 2024-04-10 17:04:00
57
+ * @protected
58
+ */
59
+ this.evt = new QXEvent();
32
60
  this.codeList = codeList;
61
+ // 动态代码表监听数据变化
62
+ this.codelistChange = this.codelistChange.bind(this);
63
+ const { appDataEntityId, appDEDataSetId } = this.codeList;
64
+ if (appDataEntityId && appDEDataSetId) {
65
+ ibiz.mc.command.change.on(this.codelistChange);
66
+ }
67
+ }
68
+ /**
69
+ * 设置上下文以及查询参数
70
+ *
71
+ * @author tony001
72
+ * @date 2024-04-10 15:04:04
73
+ * @protected
74
+ * @param {IContext} [context]
75
+ * @param {IParams} [params]
76
+ */
77
+ setParams(context, params) {
78
+ if (context) {
79
+ this.context = clone(context);
80
+ }
81
+ if (params) {
82
+ this.params = clone(params);
83
+ }
33
84
  }
34
85
  /**
35
86
  * 初始化
@@ -148,6 +199,7 @@ export class DynamicCodeListCache {
148
199
  * @returns {*} {Promise<CodeListItem[]>}
149
200
  */
150
201
  async load(context, params = {}) {
202
+ this.setParams(context, params);
151
203
  const app = ibiz.hub.getApp(context.srfappid);
152
204
  const { appDataEntityId, appDEDataSetId, minorSortAppDEFieldId, minorSortDir, pvalueAppDEFieldId, customCond, } = this.codeList;
153
205
  // *处理查询参数
@@ -283,4 +335,77 @@ export class DynamicCodeListCache {
283
335
  delete cacheData.promise;
284
336
  return result;
285
337
  }
338
+ /**
339
+ * 接受代码表实体数据变更,刷新代码表
340
+ *
341
+ * @author tony001
342
+ * @date 2024-04-10 15:04:42
343
+ * @protected
344
+ * @param {IPortalMessage} msg
345
+ */
346
+ codelistChange(msg) {
347
+ const data = msg.data;
348
+ const { appDataEntityId } = this.codeList;
349
+ if (appDataEntityId) {
350
+ const codeName = calcDeCodeNameById(appDataEntityId);
351
+ if (data &&
352
+ data.srfdecodename &&
353
+ data.srfdecodename.toLowerCase() === codeName) {
354
+ this.refresh();
355
+ }
356
+ }
357
+ }
358
+ /**
359
+ * 刷新代码表数据
360
+ *
361
+ * @author tony001
362
+ * @date 2024-04-10 17:04:20
363
+ * @return {*} {Promise<void>}
364
+ */
365
+ async refresh() {
366
+ // 删除缓存数据
367
+ const key = JSON.stringify(this.context) + JSON.stringify(this.params);
368
+ this.cache.delete(key);
369
+ // 重新加载数据
370
+ const result = await this.get(this.context, this.params);
371
+ this.evt.emit('change', result);
372
+ }
373
+ /**
374
+ * 代码表数据变更事件监听
375
+ *
376
+ * @author tony001
377
+ * @date 2024-04-10 17:04:52
378
+ * @param {(data: CodeListItem[]) => void} fn
379
+ * @param {boolean} [immediate=true] 当有数据时,立即触发一次回调
380
+ */
381
+ onChange(fn, immediate = true) {
382
+ this.evt.on('change', fn);
383
+ const key = JSON.stringify(this.context) + JSON.stringify(this.params);
384
+ const cacheData = this.cache.get(key);
385
+ if (immediate && notNilEmpty(cacheData)) {
386
+ fn(cacheData.items);
387
+ }
388
+ }
389
+ /**
390
+ * 取消代码表数据变更监听
391
+ *
392
+ * @author tony001
393
+ * @date 2024-04-10 17:04:57
394
+ * @param {(data: CodeListItem[]) => void} fn
395
+ */
396
+ offChange(fn) {
397
+ this.evt.off('change', fn);
398
+ }
399
+ /**
400
+ * 销毁(取消数据变更监听)
401
+ *
402
+ * @author tony001
403
+ * @date 2024-04-10 15:04:11
404
+ */
405
+ destroy() {
406
+ const { appDataEntityId, appDEDataSetId } = this.codeList;
407
+ if (appDataEntityId && appDEDataSetId) {
408
+ ibiz.mc.command.change.off(this.codelistChange);
409
+ }
410
+ }
286
411
  }
@@ -1 +1 @@
1
- {"version":3,"file":"front-ui-action-provider.d.ts","sourceRoot":"","sources":["../../../src/ui-action/provider/front-ui-action-provider.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAa,MAAM,kBAAkB,CAAC;AAG7D,OAAO,EAAE,cAAc,EAAE,eAAe,EAAc,MAAM,iBAAiB,CAAC;AAE9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;;;;;;;GAQG;AACH,qBAAa,qBAAsB,SAAQ,oBAAoB;IACvD,UAAU,CACd,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,eAAe,CAAC;IAoE3B;;;;;;;;OAQG;IACH,SAAS,CAAC,OAAO,CACf,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,eAAe;IAalB;;;;;;OAMG;cACa,YAAY,CAC1B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC;IAiEhB;;;;;;OAMG;cACa,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,eAAe,CAAC;IA4C3B;;;;;;OAMG;cACa,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC;IAoDhB;;;;;;;;OAQG;cACa,YAAY,CAC1B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,eAAe,CAAC;CAoD5B"}
1
+ {"version":3,"file":"front-ui-action-provider.d.ts","sourceRoot":"","sources":["../../../src/ui-action/provider/front-ui-action-provider.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAa,MAAM,kBAAkB,CAAC;AAG7D,OAAO,EAAE,cAAc,EAAE,eAAe,EAAc,MAAM,iBAAiB,CAAC;AAE9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;;;;;;;GAQG;AACH,qBAAa,qBAAsB,SAAQ,oBAAoB;IACvD,UAAU,CACd,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,eAAe,CAAC;IAoE3B;;;;;;;;OAQG;IACH,SAAS,CAAC,OAAO,CACf,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,eAAe;IAalB;;;;;;OAMG;cACa,YAAY,CAC1B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC;IAiEhB;;;;;;OAMG;cACa,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,eAAe,CAAC;IA4C3B;;;;;;OAMG;cACa,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC;IAoDhB;;;;;;;;OAQG;cACa,YAAY,CAC1B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,eAAe,CAAC;CAmD5B"}
@@ -236,7 +236,6 @@ export class FrontUIActionProvider extends UIActionProviderBase {
236
236
  * @return {*} {IUIActionResult}
237
237
  */
238
238
  async openEditForm(action, args) {
239
- console.log(action.deeditForm, args);
240
239
  const actionResult = {};
241
240
  const { context, params, data, event } = args;
242
241
  if (!event) {
@@ -18,6 +18,13 @@ export declare class UILogicContext implements IUILogicContext {
18
18
  * @type {unknown}
19
19
  */
20
20
  lastReturn: unknown;
21
+ /**
22
+ * 逻辑操作的会话变量
23
+ * @author lxm
24
+ * @date 2024-04-07 11:55:01
25
+ * @type {IParams}
26
+ */
27
+ session: IParams;
21
28
  /**
22
29
  * 视图控制器
23
30
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ui-logic-context.d.ts","sourceRoot":"","sources":["../../src/ui-logic/ui-logic-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D;;;;;;;GAOG;AACH,qBAAa,cAAe,YAAW,eAAe;IAwDlD,OAAO,CAAC,aAAa;IACd,UAAU,EAAE,cAAc;IAxDnC;;;;;OAKG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;;;;;;OAOG;IACH,IAAI,IAAI,IAAI,eAAe,CAE1B;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,QAAQ,CAKtB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,KAAK,CAEhB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAKvB;IAED;;;;;;OAMG;gBAEO,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACzC,UAAU,EAAE,cAAc;IAGnC;;;;;;;OAOG;IAEH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAEjC;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAQ;IAEvB;;;;;;OAMG;IACH,SAAS,EAAE,OAAO,CAAS;IAE3B;;;;;;;OAOG;IACH,gBAAgB,EAAE,MAAM,CAAa;IAErC;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9B;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9B;;;;;;OAMG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAInC;;;;;;OAMG;IACH,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAQtC;;;;;;;OAOG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAIxC"}
1
+ {"version":3,"file":"ui-logic-context.d.ts","sourceRoot":"","sources":["../../src/ui-logic/ui-logic-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D;;;;;;;GAOG;AACH,qBAAa,cAAe,YAAW,eAAe;IAgElD,OAAO,CAAC,aAAa;IACd,UAAU,EAAE,cAAc;IAhEnC;;;;;OAKG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;;;;OAKG;IACH,OAAO,EAAE,OAAO,CAAM;IAEtB;;;;;;;OAOG;IACH,IAAI,IAAI,IAAI,eAAe,CAE1B;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,QAAQ,CAKtB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,KAAK,CAEhB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAKvB;IAED;;;;;;OAMG;gBAEO,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACzC,UAAU,EAAE,cAAc;IAGnC;;;;;;;OAOG;IAEH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAEjC;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAQ;IAEvB;;;;;;OAMG;IACH,SAAS,EAAE,OAAO,CAAS;IAE3B;;;;;;;OAOG;IACH,gBAAgB,EAAE,MAAM,CAAa;IAErC;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9B;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI9B;;;;;;OAMG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAInC;;;;;;OAMG;IACH,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAQtC;;;;;;;OAOG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAIxC"}
@@ -52,6 +52,13 @@ export class UILogicContext {
52
52
  constructor(deLogicParams, parameters) {
53
53
  this.deLogicParams = deLogicParams;
54
54
  this.parameters = parameters;
55
+ /**
56
+ * 逻辑操作的会话变量
57
+ * @author lxm
58
+ * @date 2024-04-07 11:55:01
59
+ * @type {IParams}
60
+ */
61
+ this.session = {};
55
62
  /**
56
63
  * 界面逻辑参数
57
64
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ui-logic-param.d.ts","sourceRoot":"","sources":["../../../src/ui-logic/ui-logic-param/ui-logic-param.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;GAOG;AACH,qBAAa,YAAY;IAQJ,KAAK,EAAE,eAAe;IAPzC;;;;;;OAMG;gBACgB,KAAK,EAAE,eAAe;IAEzC;;;;;;OAMG;IACH,IAAI,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IA0F/B;;;;;OAKG;IACH,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;CAiBjC"}
1
+ {"version":3,"file":"ui-logic-param.d.ts","sourceRoot":"","sources":["../../../src/ui-logic/ui-logic-param/ui-logic-param.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;GAOG;AACH,qBAAa,YAAY;IAQJ,KAAK,EAAE,eAAe;IAPzC;;;;;;OAMG;gBACgB,KAAK,EAAE,eAAe;IAEzC;;;;;;OAMG;IACH,IAAI,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAqG/B;;;;;OAKG;IACH,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;CAiBjC"}
@@ -69,7 +69,11 @@ export class UILogicParam {
69
69
  }
70
70
  else if (m.appGlobalParam) {
71
71
  // 应用全局变量
72
- ctx.params[tag] = ibiz.env;
72
+ let value = ibiz.util.getGlobalParam();
73
+ if (m.paramFieldName) {
74
+ value = value[m.paramFieldName];
75
+ }
76
+ ctx.params[tag] = value;
73
77
  }
74
78
  else if (m.applicationParam) {
75
79
  // 当前应用
@@ -80,7 +84,7 @@ export class UILogicParam {
80
84
  ctx.params[tag] = [];
81
85
  }
82
86
  else if (m.entityPageParam) {
83
- ctx.params[tag] = {};
87
+ ctx.params[tag] = [];
84
88
  }
85
89
  else if (m.entityParam) {
86
90
  // 数据对象变量
@@ -95,7 +99,8 @@ export class UILogicParam {
95
99
  ctx.params[tag] = context;
96
100
  }
97
101
  else if (m.navViewParamParam) {
98
- throw new ModelError(m, `未支持的逻辑参数类型: 视图路由参数`);
102
+ // 视图路由参数
103
+ ctx.params[tag] = ibiz.util.getRouterParams();
99
104
  }
100
105
  else if (m.routeViewSessionParam) {
101
106
  // 路由视图会话
@@ -129,6 +134,14 @@ export class UILogicParam {
129
134
  // 过滤器对象变量
130
135
  ctx.params[tag] = {};
131
136
  }
137
+ else if (m.envParam) {
138
+ // 应用环境变量
139
+ ctx.params[tag] = ibiz.env;
140
+ }
141
+ else if (m.sessionParam) {
142
+ // 操作会话变量
143
+ ctx.params[tag] = ctx.session;
144
+ }
132
145
  ibiz.log.debug(`计算界面逻辑参数,标识:${tag}`, `-值:`, ctx.params[tag]);
133
146
  }
134
147
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/runtime",
3
- "version": "0.6.17",
3
+ "version": "0.7.0",
4
4
  "description": "控制器包",
5
5
  "type": "module",
6
6
  "main": "out/index.js",
@@ -35,8 +35,8 @@
35
35
  "animejs": "^3.2.2"
36
36
  },
37
37
  "devDependencies": {
38
- "@ibiz-template/core": "^0.6.17",
39
- "@ibiz/model-core": "^0.1.19",
38
+ "@ibiz-template/core": "^0.7.0",
39
+ "@ibiz/model-core": "^0.1.20",
40
40
  "@types/animejs": "^3.1.12",
41
41
  "@types/path-browserify": "^1.0.2",
42
42
  "@types/qs": "^6.9.11",
@@ -54,7 +54,7 @@
54
54
  },
55
55
  "peerDependencies": {
56
56
  "@ibiz-template/core": "^0.6.0",
57
- "@ibiz/model-core": "^0.1.19",
57
+ "@ibiz/model-core": "^0.1.20",
58
58
  "async-validator": "^4.2.5",
59
59
  "dayjs": "^1.11.7",
60
60
  "echarts": "^5.4.3",
@@ -1,33 +0,0 @@
1
- import { IFilterNode } from '../../../interface';
2
- /**
3
- * 获取初始过滤项树节点数据集合
4
- * @return {*}
5
- * @author: zhujiamin
6
- * @Date: 2023-12-21 17:29:47
7
- */
8
- export declare function getOriginFilterNodes(): IFilterNode[];
9
- /**
10
- * 格式化过滤项 (后续如果修改这里的逻辑记得把下方的反推函数parseFilters也跟着修改!)
11
- * @author lxm
12
- * @date 2023-10-16 03:45:41
13
- * @param {IFilterNode} node
14
- * @return {*} {IData}
15
- */
16
- export declare function formatFilters(node: IFilterNode): IData;
17
- /**
18
- * 根据格式化后的过滤项反推出过滤项树节点数据集合
19
- * @param {IData} data
20
- * @return {*}
21
- * @author: zhujiamin
22
- * @Date: 2023-12-28 09:47:45
23
- */
24
- export declare function parseFilters(data: IData): IFilterNode;
25
- /**
26
- * 根据filterNodes计算出SearchConds
27
- * @param {IData} data
28
- * @return {*}
29
- * @author: zhujiamin
30
- * @Date: 2023-12-28 09:47:45
31
- */
32
- export declare function calcSearchConds(filterNodes: IFilterNode[]): IData[] | undefined;
33
- //# sourceMappingURL=use-searchcond.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-searchcond.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/search-bar/use-searchcond.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKlE;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAAI,WAAW,EAAE,CAQpD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,KAAK,CA+BtD;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,KAAK,GAAG,WAAW,CA+BrD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,WAAW,EAAE,GACzB,KAAK,EAAE,GAAG,SAAS,CAoBrB"}