@ibiz-template/runtime 0.7.24 → 0.7.25-alpha.1

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 (47) hide show
  1. package/dist/index.esm.js +394 -183
  2. package/dist/index.system.min.js +1 -1
  3. package/out/controller/control/chart/generator/base-series-generator.d.ts.map +1 -1
  4. package/out/controller/control/chart/generator/base-series-generator.js +8 -1
  5. package/out/controller/control/chart/generator/chart-options-generator.d.ts +1 -1
  6. package/out/controller/control/chart/generator/chart-options-generator.d.ts.map +1 -1
  7. package/out/controller/control/chart/generator/chart-options-generator.js +9 -0
  8. package/out/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.d.ts.map +1 -1
  9. package/out/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.js +26 -2
  10. package/out/controller/control/dashboard/portlet/view-portlet/view-portlet.controller.js +2 -2
  11. package/out/controller/control/grid/grid-column/grid-field-column/grid-field-column.controller.js +1 -1
  12. package/out/controller/control/kanban/kanban.controller.d.ts +10 -0
  13. package/out/controller/control/kanban/kanban.controller.d.ts.map +1 -1
  14. package/out/controller/control/kanban/kanban.controller.js +109 -68
  15. package/out/controller/control/kanban/kanban.service.d.ts +10 -0
  16. package/out/controller/control/kanban/kanban.service.d.ts.map +1 -1
  17. package/out/controller/control/kanban/kanban.service.js +20 -0
  18. package/out/controller/control/report-panel/generator/bi-generator.d.ts +21 -0
  19. package/out/controller/control/report-panel/generator/bi-generator.d.ts.map +1 -0
  20. package/out/controller/control/report-panel/generator/bi-generator.js +33 -0
  21. package/out/controller/control/report-panel/generator/generator-factory.d.ts.map +1 -1
  22. package/out/controller/control/report-panel/generator/generator-factory.js +10 -0
  23. package/out/controller/control/report-panel/report-panel.controller.d.ts +8 -0
  24. package/out/controller/control/report-panel/report-panel.controller.d.ts.map +1 -1
  25. package/out/controller/control/report-panel/report-panel.controller.js +44 -0
  26. package/out/controller/control/search-bar/entity-schema.d.ts.map +1 -1
  27. package/out/controller/control/search-bar/entity-schema.js +29 -27
  28. package/out/interface/controller/controller/control/i-report-panel.controller.d.ts +8 -0
  29. package/out/interface/controller/controller/control/i-report-panel.controller.d.ts.map +1 -1
  30. package/out/locale/en/index.d.ts +4 -0
  31. package/out/locale/en/index.d.ts.map +1 -1
  32. package/out/locale/en/index.js +4 -0
  33. package/out/locale/zh-CN/index.d.ts +4 -0
  34. package/out/locale/zh-CN/index.d.ts.map +1 -1
  35. package/out/locale/zh-CN/index.js +4 -0
  36. package/out/service/service/entity/method/de-action.d.ts +2 -2
  37. package/out/service/service/entity/method/de-action.d.ts.map +1 -1
  38. package/out/service/service/entity/method/de-action.js +15 -12
  39. package/out/service/service/entity/method/method.d.ts +10 -0
  40. package/out/service/service/entity/method/method.d.ts.map +1 -1
  41. package/out/service/service/entity/method/method.js +19 -0
  42. package/out/service/utils/de-cache/de-cache.d.ts +2 -2
  43. package/out/service/utils/de-cache/de-cache.d.ts.map +1 -1
  44. package/out/service/utils/de-cache/de-cache.js +11 -32
  45. package/out/service/utils/dynamic-code-list/dynamic-code-list.d.ts.map +1 -1
  46. package/out/service/utils/dynamic-code-list/dynamic-code-list.js +5 -1
  47. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"base-series-generator.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/chart/generator/base-series-generator.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,cAAc,EACf,MAAM,kBAAkB,CAAC;AAO1B,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D,OAAO,EACL,qBAAqB,EAEtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AASnD,cAAc;AACd,MAAM,MAAM,UAAU,GAAG;IACvB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC;CACxB,CAAC;AACF,sBAAsB;AACtB,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAElD,sBAAsB;AACtB,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAEpD,eAAO,MAAM,aAAa,mBAAmB,CAAC;AAE9C,qBAAa,mBAAmB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc;IAiG/D,KAAK,EAAE,CAAC;IACf,SAAS,CAAC,cAAc,EAAE,qBAAqB;IAjGjD;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;;OAKG;IACH,YAAY,EAAE,UAAU,EAAE,CAAM;IAEhC;;;;;OAKG;IACH,aAAa,EAAE,YAAY,CAAM;IAEjC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,YAAY,CAAC;IAE/B;;;;;OAKG;IACH,oBAAoB,EAAE,OAAO,CAAQ;IAErC;;;;;;OAMG;gBAEM,KAAK,EAAE,CAAC,EACL,cAAc,EAAE,qBAAqB;IAqCjD;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,IAAI,YAAY;IAmB3C;;;;;;;;;;;OAWG;IACH,YAAY,CACV,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,SAAS,GAAE,OAAe,GACzB,MAAM,GAAG,SAAS;IAkBrB;;;;;OAKG;IACH,SAAS,CAAC,gBAAgB,CACxB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,IAAI;IAcP;;;;;;OAMG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS;IAqFjD;;;;;;;OAOG;IACH,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,YAAY,EAAE;IAuB/D;;;;;;;OAOG;IAEH,SAAS,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,GAAG;IAQvD;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY;IAOxD;;;;;;OAMG;IACH,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,GAAG,SAAS;IAO/D;;;;;OAKG;IACH,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;IAmDtC;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IA+BnC;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;CAgInC"}
1
+ {"version":3,"file":"base-series-generator.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/chart/generator/base-series-generator.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,cAAc,EACf,MAAM,kBAAkB,CAAC;AAO1B,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D,OAAO,EACL,qBAAqB,EAEtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AASnD,cAAc;AACd,MAAM,MAAM,UAAU,GAAG;IACvB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,SAAS,CAAC,EAAE,UAAU,CAAC;CACxB,CAAC;AACF,sBAAsB;AACtB,MAAM,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAElD,sBAAsB;AACtB,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAEpD,eAAO,MAAM,aAAa,mBAAmB,CAAC;AAE9C,qBAAa,mBAAmB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc;IAiG/D,KAAK,EAAE,CAAC;IACf,SAAS,CAAC,cAAc,EAAE,qBAAqB;IAjGjD;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;;OAKG;IACH,YAAY,EAAE,UAAU,EAAE,CAAM;IAEhC;;;;;OAKG;IACH,aAAa,EAAE,YAAY,CAAM;IAEjC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,YAAY,CAAC;IAE/B;;;;;OAKG;IACH,oBAAoB,EAAE,OAAO,CAAQ;IAErC;;;;;;OAMG;gBAEM,KAAK,EAAE,CAAC,EACL,cAAc,EAAE,qBAAqB;IAqCjD;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,IAAI,YAAY;IAmB3C;;;;;;;;;;;OAWG;IACH,YAAY,CACV,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,SAAS,GAAE,OAAe,GACzB,MAAM,GAAG,SAAS;IAkBrB;;;;;OAKG;IACH,SAAS,CAAC,gBAAgB,CACxB,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,IAAI;IAcP;;;;;;OAMG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS;IAqFjD;;;;;;;OAOG;IACH,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,YAAY,EAAE;IAuB/D;;;;;;;OAOG;IAEH,SAAS,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,GAAG;IAevD;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY;IAOxD;;;;;;OAMG;IACH,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,GAAG,SAAS;IAO/D;;;;;OAKG;IACH,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;IAmDtC;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IA+BnC;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;CAgInC"}
@@ -244,7 +244,14 @@ export class BaseSeriesGenerator {
244
244
  calcSeriesData(catalogData) {
245
245
  const temData = [];
246
246
  catalogData.forEach((catalog, key) => {
247
- temData.push([key, catalog.value, catalog.chartData]);
247
+ var _a;
248
+ if (this.chartGenerator.model.controlParam &&
249
+ ((_a = this.chartGenerator.model.controlParam.ctrlParams) === null || _a === void 0 ? void 0 : _a.MODE) === 'ROW') {
250
+ temData.push([catalog.value, key, catalog.chartData]);
251
+ }
252
+ else {
253
+ temData.push([key, catalog.value, catalog.chartData]);
254
+ }
248
255
  });
249
256
  return temData;
250
257
  }
@@ -13,7 +13,7 @@ import { CodeListItem } from '../../../../interface';
13
13
  */
14
14
  export declare function parseUserParams(userParams: Record<string, string>): IData;
15
15
  export declare class ChartOptionsGenerator {
16
- private model;
16
+ model: IDEChart;
17
17
  /**
18
18
  * 实体模型
19
19
  * @author lxm
@@ -1 +1 @@
1
- {"version":3,"file":"chart-options-generator.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/chart/generator/chart-options-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EAEf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,cAAc,EACd,WAAW,EACX,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACd,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAM9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AA2BrD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAmBzE;AAED,qBAAa,qBAAqB;IAoEpB,OAAO,CAAC,KAAK;IAnEzB;;;;;OAKG;IACH,MAAM,EAAG,cAAc,CAAC;IAExB;;;;;OAKG;IACH,aAAa,EAAE,aAAa,CAI1B;IAEF;;;;;OAKG;IACH,OAAO,EAAE,aAAa,CAAM;IAE5B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAE/B;;;;;OAKG;IACH,gBAAgB,EAAE,mBAAmB,EAAE,CAAM;IAE7C;;;;;OAKG;IACH,QAAQ,gCAAuC;IAE/C;;;;OAIG;IACH,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAa;IAE/D;;;;;OAKG;IACH,uBAAuB,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAa;gBAElD,KAAK,EAAE,QAAQ;IAoCnC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAoCtC,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC;IAmB5E,SAAS,CAAC,gBAAgB,CACxB,WAAW,EAAE,cAAc,GAC1B,aAAa,CAAC,QAAQ,CAAC;IAe1B,SAAS,CAAC,gBAAgB,CACxB,WAAW,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,GACzC,oBAAoB,EAAE,GAAG,oBAAoB,EAAE;IA2ClD;;;;;;;OAOG;IACG,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7D;;;;;;OAMG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAKtC;;;;;;;;;OASG;IACG,YAAY,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBrE;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,aAAa;IAoE/C;;;;;;OAMG;IACH,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,GAAG,SAAS;CAkEhE"}
1
+ {"version":3,"file":"chart-options-generator.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/chart/generator/chart-options-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EAEf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,cAAc,EACd,WAAW,EACX,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACd,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAM9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAmCrD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAmBzE;AAED,qBAAa,qBAAqB;IAoEb,KAAK,EAAE,QAAQ;IAnElC;;;;;OAKG;IACH,MAAM,EAAG,cAAc,CAAC;IAExB;;;;;OAKG;IACH,aAAa,EAAE,aAAa,CAI1B;IAEF;;;;;OAKG;IACH,OAAO,EAAE,aAAa,CAAM;IAE5B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAE/B;;;;;OAKG;IACH,gBAAgB,EAAE,mBAAmB,EAAE,CAAM;IAE7C;;;;;OAKG;IACH,QAAQ,gCAAuC;IAE/C;;;;OAIG;IACH,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAa;IAE/D;;;;;OAKG;IACH,uBAAuB,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAa;gBAEnD,KAAK,EAAE,QAAQ;IAoClC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAoCtC,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC;IAmB5E,SAAS,CAAC,gBAAgB,CACxB,WAAW,EAAE,cAAc,GAC1B,aAAa,CAAC,QAAQ,CAAC;IAe1B,SAAS,CAAC,gBAAgB,CACxB,WAAW,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,GACzC,oBAAoB,EAAE,GAAG,oBAAoB,EAAE;IA2ClD;;;;;;;OAOG;IACG,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7D;;;;;;OAMG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAKtC;;;;;;;;;OASG;IACG,YAAY,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBrE;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,aAAa;IAoE/C;;;;;;OAMG;IACH,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,GAAG,SAAS;CAkEhE"}
@@ -26,6 +26,15 @@ const convertStringFunc = (option) => {
26
26
  else if (isObject(option[key])) {
27
27
  result[key] = convertStringFunc(option[key]);
28
28
  }
29
+ else if (Array.isArray(option[key])) {
30
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
31
+ result[key] = option[key].map((item) => {
32
+ if (typeof item !== 'object') {
33
+ return item;
34
+ }
35
+ return convertStringFunc(item);
36
+ });
37
+ }
29
38
  else {
30
39
  result[key] = option[key];
31
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"portlet-part.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGxE,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,eAAe,EACf,WAAW,EAEZ,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD;;;;;;;;GAQG;AACH,qBAAa,qBAAqB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,CAC1E,YAAW,kBAAkB;IAE7B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAElB;;;;;OAKG;IACH,KAAK,EAAE,gBAAgB,CAAC;IAExB;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IAEzC;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,2BAA2B,CAAC;IAE9C;;;;;;;OAOG;IACH,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED;;;;;;OAMG;IACI,MAAM,EAAE,OAAO,CAAC;IAEvB;;;;;OAKG;IACI,MAAM,EAAE,KAAK,CAAM;IAE1B;;;;;;OAMG;IACH,IAAI,cAAc,IAAI,MAAM,EAAE,CAE7B;IAED;;;;;;OAMG;IACH,IAAI,iBAAiB,IAAI,WAAW,GAAG,SAAS,CAK/C;IAED;;;;;;;OAOG;gBAED,KAAK,EAAE,CAAC,EACR,SAAS,EAAE,oBAAoB,EAC/B,MAAM,CAAC,EAAE,2BAA2B;IAUtC;;;;;;OAMG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;cAIX,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BvC;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,IAAI,gBAAgB;IAIzC;;;;;OAKG;IACH,OAAO,IAAI,IAAI;IAIf;;;;;OAKG;IACG,SAAS,CAAC,MAAM,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAY7C;;;;OAIG;IACH,WAAW,IAAI,IAAI;IAcnB;;;;;;OAMG;IACH,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAc1C;;;;;;OAMG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BvC;;;;;;;OAOG;IACG,aAAa,CACjB,MAAM,EAAE,oBAAoB,EAC5B,KAAK,EAAE,UAAU,EACjB,IAAI,GAAE,KAAK,EAAO,GACjB,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;;;;OAMG;IACG,gBAAgB,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlD;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAS1C;;;;OAIG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAIjC"}
1
+ {"version":3,"file":"portlet-part.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGxE,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,eAAe,EACf,WAAW,EAEZ,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGxD;;;;;;;;GAQG;AACH,qBAAa,qBAAqB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,CAC1E,YAAW,kBAAkB;IAE7B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAElB;;;;;OAKG;IACH,KAAK,EAAE,gBAAgB,CAAC;IAExB;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IAEzC;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,2BAA2B,CAAC;IAE9C;;;;;;;OAOG;IACH,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED;;;;;;OAMG;IACI,MAAM,EAAE,OAAO,CAAC;IAEvB;;;;;OAKG;IACI,MAAM,EAAE,KAAK,CAAM;IAE1B;;;;;;OAMG;IACH,IAAI,cAAc,IAAI,MAAM,EAAE,CAE7B;IAED;;;;;;OAMG;IACH,IAAI,iBAAiB,IAAI,WAAW,GAAG,SAAS,CAK/C;IAED;;;;;;;OAOG;gBAED,KAAK,EAAE,CAAC,EACR,SAAS,EAAE,oBAAoB,EAC/B,MAAM,CAAC,EAAE,2BAA2B;IAUtC;;;;;;OAMG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;cAIX,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BvC;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,IAAI,gBAAgB;IAIzC;;;;;OAKG;IACH,OAAO,IAAI,IAAI;IAIf;;;;;OAKG;IACG,SAAS,CAAC,MAAM,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAY7C;;;;OAIG;IACH,WAAW,IAAI,IAAI;IAcnB;;;;;;OAMG;IACH,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAc1C;;;;;;OAMG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BvC;;;;;;;OAOG;IACG,aAAa,CACjB,MAAM,EAAE,oBAAoB,EAC5B,KAAK,EAAE,UAAU,EACjB,IAAI,GAAE,KAAK,EAAO,GACjB,OAAO,CAAC,IAAI,CAAC;IAkChB;;;;;;OAMG;IACG,gBAAgB,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlD;;;;;OAKG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI;IAS1C;;;;OAIG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAIjC"}
@@ -5,6 +5,7 @@ import { ControlVO } from '../../../../../service';
5
5
  import { UIActionUtil } from '../../../../../ui-action';
6
6
  import { ButtonContainerState, UIActionButtonState } from '../../../../utils';
7
7
  import { PortletPartState } from './portlet-part.state';
8
+ import { SysUIActionTag } from '../../../../../constant';
8
9
  /**
9
10
  * 门户部件控制器基类
10
11
  *
@@ -215,15 +216,38 @@ export class PortletPartController {
215
216
  * @param {MouseEvent} event
216
217
  */
217
218
  async onActionClick(detail, event, data = []) {
219
+ var _a, _b;
218
220
  const actionId = detail.uiactionId;
219
- await UIActionUtil.execAndResolved(actionId, {
221
+ const eventArgs = {
220
222
  context: this.context,
221
223
  params: this.params,
222
224
  data,
223
225
  view: this.dashboard.view,
224
226
  ctrl: this,
225
227
  event,
226
- }, detail.appId);
228
+ };
229
+ const result = await UIActionUtil.exec(actionId, eventArgs, detail.appId);
230
+ if (result.closeView) {
231
+ this.dashboard.view.closeView();
232
+ }
233
+ else if (result.refresh) {
234
+ switch (result.refreshMode) {
235
+ // 刷新当前节点的子
236
+ case 1:
237
+ this.refresh();
238
+ break;
239
+ // 刷新当前节点的父节点的子
240
+ case 2:
241
+ (_a = this.dashboard.view) === null || _a === void 0 ? void 0 : _a.callUIAction(SysUIActionTag.REFRESH);
242
+ break;
243
+ // 刷新所有节点数据
244
+ case 3:
245
+ (_b = this.dashboard.view
246
+ .getTopView()) === null || _b === void 0 ? void 0 : _b.callUIAction(SysUIActionTag.REFRESH);
247
+ break;
248
+ default:
249
+ }
250
+ }
227
251
  }
228
252
  /**
229
253
  * 表单数据变更通知(由表单控制器调用)
@@ -11,8 +11,8 @@ export class ViewPortletController extends PortletPartController {
11
11
  */
12
12
  get contentController() {
13
13
  const { portletAppView } = this.model;
14
- if (portletAppView && portletAppView.codeName) {
15
- return this.dashboard.getController(portletAppView.codeName);
14
+ if (portletAppView && portletAppView.name) {
15
+ return this.dashboard.getController(portletAppView.name);
16
16
  }
17
17
  }
18
18
  /**
@@ -289,7 +289,7 @@ export class GridFieldColumnController extends GridColumnController {
289
289
  return ValueExUtil.toText(this.model, value);
290
290
  }
291
291
  // 根据格式化配置格式化显示
292
- const strVal = `${value}`;
292
+ const strVal = `${value || ''}`;
293
293
  if (!this.valueFormat) {
294
294
  return strVal;
295
295
  }
@@ -104,6 +104,16 @@ export declare class KanbanController extends DataViewControlController<IDEKanba
104
104
  * @return {*} {Promise<void>}
105
105
  */
106
106
  onDragChange(info: IDragChangeInfo): Promise<void>;
107
+ /**
108
+ * 移动并排序数据
109
+ *
110
+ * @author tony001
111
+ * @date 2024-06-17 15:06:22
112
+ * @param {IData} draggedItem
113
+ * @param {IData} moveMeta
114
+ * @return {*} {Promise<ControlVO[]>}
115
+ */
116
+ moveOrderItem(draggedItem: IData, moveMeta: IData): Promise<ControlVO[]>;
107
117
  /**
108
118
  * 批量更新修改的项,并更新后台返回的数据,然后重新计算分组和排序
109
119
  * @author lxm
@@ -1 +1 @@
1
- {"version":3,"file":"kanban.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/kanban/kanban.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kanban.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/kanban/kanban.controller.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
+ /* eslint-disable prefer-destructuring */
1
2
  import { RuntimeError, RuntimeModelError } from '@ibiz-template/core';
2
- import { isNil } from 'ramda';
3
+ import { clone, isNil } from 'ramda';
3
4
  import { calcDeCodeNameById } from '../../../model';
4
5
  import { DataViewControlController } from '../data-view';
5
6
  import { KanbanService } from './kanban.service';
@@ -273,17 +274,16 @@ export class KanbanController extends DataViewControlController {
273
274
  * @return {*} {Promise<void>}
274
275
  */
275
276
  async onDragChange(info) {
277
+ var _a;
276
278
  if (!this.enableEditGroup) {
277
279
  if (info.from !== info.to) {
278
280
  ibiz.message.warning(ibiz.i18n.t('runtime.controller.control.kanban.adjustmentsGroup'));
279
281
  return;
280
282
  }
281
283
  }
282
- const isAsc = this.model.minorSortDir === 'ASC';
283
284
  const { from, to, fromIndex, toIndex } = info;
284
285
  const groupField = this.model.groupAppDEFieldId;
285
286
  const sortField = this.model.minorSortAppDEFieldId;
286
- const modifiedItems = [];
287
287
  const fromGroup = this.state.groups.find(x => x.key === from);
288
288
  const toGroup = this.state.groups.find(x => x.key === to);
289
289
  if (!this.enableEditOrder) {
@@ -296,81 +296,122 @@ export class KanbanController extends DataViewControlController {
296
296
  draggedItem[groupField] = info.to; // 变更分组
297
297
  return this.updateChangedItems([draggedItem]);
298
298
  }
299
- /**
300
- * 获取下一个100的倍数
301
- * @author lxm
302
- * @date 2023-09-11 10:03:46
303
- * @param {number} num
304
- * @return {*} {number}
305
- */
306
- const getNextSort = (num) => {
307
- return num + (100 - (num % 100));
308
- };
309
299
  const originArr = [...toGroup.children];
310
- const changedArr = [...toGroup.children];
311
- // 计算出拖拽前和拖拽后的数组
312
- const draggedItem = fromGroup.children[fromIndex];
313
- if (info.from !== info.to) {
314
- draggedItem[groupField] = info.to; // 变更分组
315
- changedArr.splice(toIndex, 0, draggedItem);
316
- }
317
- else {
318
- changedArr.splice(fromIndex, 1);
319
- changedArr.splice(toIndex, 0, draggedItem);
300
+ const moveAction = (_a = this.model.moveControlAction) === null || _a === void 0 ? void 0 : _a.appDEMethodId;
301
+ if (!moveAction) {
302
+ throw new RuntimeModelError(this.model, ibiz.i18n.t('runtime.controller.common.md.noMoveDataCconfig'));
320
303
  }
321
- // 前台先改值
322
- const removeItems = fromGroup.children.splice(fromIndex, 1);
323
- toGroup.children.splice(toIndex, 0, ...removeItems);
324
- // 降序把数组反转,保证两个数组都是从小到大排
325
- if (!isAsc) {
326
- originArr.reverse();
327
- changedArr.reverse();
328
- }
329
- let lastSort;
330
- let cacheArr = []; // 缓存的不修改数组
331
- let cacheLastSort; // 缓存不修改数组第一个元素上一个排序值
332
- changedArr.forEach((item, index) => {
333
- if (lastSort === undefined) {
334
- // 第一次出现要调整顺序的,如果不是0用原来位置的排序值,否则使用100
335
- if (item !== originArr[index]) {
336
- if (!originArr[index]) {
337
- // 从别的分组挪进来的且处于末尾时使用上一个元素的排序值的后一个100
338
- lastSort =
339
- index === 0 ? 100 : getNextSort(originArr[index - 1][sortField]);
304
+ this.state.updating = true;
305
+ // 计算移动数据,目标分组指定位置存在数据,则添加到目标分组指定位置之前,若没有,则添加到当前分组数据或者所有数据排序值最大的后面,优先当前分组数据
306
+ const computeMoveData = (_fromIndex, _toIndex, _draggedItem, targetArray, allArray) => {
307
+ let moveData = {};
308
+ const targetItem = targetArray[_toIndex];
309
+ if (!targetItem) {
310
+ let tempArray = [];
311
+ if (targetArray.length > 0) {
312
+ tempArray = targetArray;
313
+ }
314
+ else if (allArray.length > 0) {
315
+ tempArray = allArray;
316
+ }
317
+ const maxItem = tempArray.reduce((prev, curr) => {
318
+ const sortCondition = prev[sortField] > curr[sortField];
319
+ if (sortCondition &&
320
+ prev[this.dataEntity.keyAppDEFieldId] !== _draggedItem.srfkey) {
321
+ return prev;
340
322
  }
341
- else {
342
- lastSort = originArr[index][sortField] || 100; // 如果是0的时候给100否则用原来的
323
+ if (!sortCondition &&
324
+ curr[this.dataEntity.keyAppDEFieldId] !== _draggedItem.srfkey) {
325
+ return curr;
343
326
  }
344
- item[sortField] = lastSort;
345
- modifiedItems.push(item);
327
+ return prev;
328
+ });
329
+ if (maxItem) {
330
+ moveData = {
331
+ srftargetkey: maxItem.srfkey,
332
+ srfmovetype: 'MOVEAFTER',
333
+ };
346
334
  }
347
335
  }
348
336
  else {
349
- // 如果当前排序值比上一个小,提升它的排序值
350
- if (lastSort >= item[sortField]) {
351
- if (cacheArr.length > 0) {
352
- cacheArr.forEach(cache => {
353
- cache[sortField] = getNextSort(cacheLastSort);
354
- modifiedItems.push(cache);
355
- cacheLastSort = cache[sortField];
356
- });
357
- lastSort = cacheLastSort;
358
- cacheLastSort = 0;
359
- cacheArr = [];
360
- }
361
- item[sortField] = getNextSort(lastSort);
362
- modifiedItems.push(item);
337
+ moveData = {
338
+ srftargetkey: targetItem.srfkey,
339
+ srfmovetype: 'MOVEBEFORE',
340
+ };
341
+ }
342
+ return moveData;
343
+ };
344
+ // 拖拽数据
345
+ const draggedItem = clone(fromGroup.children[fromIndex]);
346
+ // 前台先改值
347
+ const removeItems = fromGroup.children.splice(fromIndex, 1);
348
+ toGroup.children.splice(toIndex, 0, ...removeItems);
349
+ if (info.from !== info.to) {
350
+ // 变更分组
351
+ draggedItem[groupField] = info.to;
352
+ // 存在移动数据行为,先变更分组再变更排序
353
+ const app = ibiz.hub.getApp(this.model.appId);
354
+ const deName = calcDeCodeNameById(this.model.appDataEntityId);
355
+ const tempContext = this.context.clone();
356
+ tempContext[deName] = draggedItem.srfkey;
357
+ try {
358
+ await app.deService.exec(this.model.appDataEntityId, 'update', tempContext, draggedItem);
359
+ const index = this.state.items.findIndex(x => x.srfkey === draggedItem[this.dataEntity.keyAppDEFieldId]);
360
+ if (index !== -1) {
361
+ this.state.items.splice(index, 1, draggedItem);
363
362
  }
364
- else {
365
- if (cacheArr.length === 0) {
366
- cacheLastSort = lastSort;
363
+ }
364
+ catch (error) {
365
+ this.state.updating = false;
366
+ throw new RuntimeModelError(this.model, ibiz.i18n.t('runtime.controller.common.md.changeGroupError'));
367
+ }
368
+ }
369
+ // 移动排序
370
+ const params = computeMoveData(fromIndex, toIndex, draggedItem, originArr, this.state.items);
371
+ try {
372
+ const result = await this.moveOrderItem(draggedItem, params);
373
+ // 返回空数组不做处理,非空数组同步界面数据,无数据界面重刷新
374
+ if (Array.isArray(result) && result.length > 0) {
375
+ result.forEach(item => {
376
+ const index = this.state.items.findIndex(x => x.srfkey === item[this.dataEntity.keyAppDEFieldId]);
377
+ if (index !== -1) {
378
+ this.state.items[index][sortField] = item[sortField];
367
379
  }
368
- cacheArr.push(item);
369
- }
370
- lastSort = item[sortField];
380
+ });
371
381
  }
372
- });
373
- this.updateChangedItems(modifiedItems);
382
+ else {
383
+ await this.refresh();
384
+ }
385
+ }
386
+ catch (error) {
387
+ this.state.updating = false;
388
+ this.actionNotification(`MOVEERROR`, {
389
+ error: error,
390
+ });
391
+ }
392
+ finally {
393
+ await this.afterLoad({}, this.state.items);
394
+ this.state.updating = false;
395
+ }
396
+ }
397
+ /**
398
+ * 移动并排序数据
399
+ *
400
+ * @author tony001
401
+ * @date 2024-06-17 15:06:22
402
+ * @param {IData} draggedItem
403
+ * @param {IData} moveMeta
404
+ * @return {*} {Promise<ControlVO[]>}
405
+ */
406
+ async moveOrderItem(draggedItem, moveMeta) {
407
+ const deName = calcDeCodeNameById(this.model.appDataEntityId);
408
+ const tempContext = this.context.clone();
409
+ tempContext[deName] = draggedItem.srfkey;
410
+ if (!moveMeta.srftargetkey || !moveMeta.srfmovetype) {
411
+ throw new RuntimeModelError(this.model, ibiz.i18n.t('runtime.controller.common.md.computeMoveMetaError'));
412
+ }
413
+ const res = await this.service.moveOrderItem(tempContext, draggedItem, moveMeta);
414
+ return res.data;
374
415
  }
375
416
  /**
376
417
  * 批量更新修改的项,并更新后台返回的数据,然后重新计算分组和排序
@@ -20,5 +20,15 @@ export declare class KanbanService extends DataViewControlService<IDEKanban> {
20
20
  * @returns {*}
21
21
  */
22
22
  updateGroup(context: IContext, data: ControlVO): Promise<IHttpResponse<ControlVO>>;
23
+ /**
24
+ * 移动并排序数据
25
+ *
26
+ * @author tony001
27
+ * @date 2024-06-16 12:06:02
28
+ * @param {IContext} context
29
+ * @param {ControlVO} data
30
+ * @return {*} {Promise<IHttpResponse<ControlVO[]>>}
31
+ */
32
+ moveOrderItem(context: IContext, data: ControlVO, args: IData): Promise<IHttpResponse<ControlVO[]>>;
23
33
  }
24
34
  //# sourceMappingURL=kanban.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kanban.service.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/kanban/kanban.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD;;;;;;GAMG;AACH,qBAAa,aAAc,SAAQ,sBAAsB,CAAC,SAAS,CAAC;IAClE;;;;;;;;OAQG;IACG,WAAW,CACf,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;CAOrC"}
1
+ {"version":3,"file":"kanban.service.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/kanban/kanban.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD;;;;;;GAMG;AACH,qBAAa,aAAc,SAAQ,sBAAsB,CAAC,SAAS,CAAC;IAClE;;;;;;;;OAQG;IACG,WAAW,CACf,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAQpC;;;;;;;;OAQG;IACG,aAAa,CACjB,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,KAAK,GACV,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;CAUvC"}
@@ -1,3 +1,4 @@
1
+ import { clone } from 'ramda';
1
2
  import { DataViewControlService } from '../data-view';
2
3
  /**
3
4
  * 看板(kanban)部件服务
@@ -23,4 +24,23 @@ export class KanbanService extends DataViewControlService {
23
24
  res = this.handleResponse(res);
24
25
  return res;
25
26
  }
27
+ /**
28
+ * 移动并排序数据
29
+ *
30
+ * @author tony001
31
+ * @date 2024-06-16 12:06:02
32
+ * @param {IContext} context
33
+ * @param {ControlVO} data
34
+ * @return {*} {Promise<IHttpResponse<ControlVO[]>>}
35
+ */
36
+ async moveOrderItem(context, data, args) {
37
+ const moveAction = this.model.moveControlAction.appDEMethodId;
38
+ const params = clone(data.getOrigin());
39
+ Object.assign(params, args);
40
+ let res = await this.exec(moveAction, context, params, {
41
+ srfupdateitem: true,
42
+ });
43
+ res = this.handleResponse(res);
44
+ return res;
45
+ }
26
46
  }
@@ -0,0 +1,21 @@
1
+ import { ReportPanelBaseGenerator } from './base-generator';
2
+ /**
3
+ * BI报表相关
4
+ *
5
+ * @author tony001
6
+ * @date 2024-06-18 13:06:30
7
+ * @export
8
+ * @class BIReportPanelGenerator
9
+ * @extends {ReportPanelBaseGenerator}
10
+ */
11
+ export declare class BIReportPanelGenerator extends ReportPanelBaseGenerator {
12
+ /**
13
+ * 设置配置
14
+ *
15
+ * @author tony001
16
+ * @date 2024-06-18 14:06:38
17
+ * @protected
18
+ */
19
+ protected setConfig(): void;
20
+ }
21
+ //# sourceMappingURL=bi-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bi-generator.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/report-panel/generator/bi-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D;;;;;;;;GAQG;AACH,qBAAa,sBAAuB,SAAQ,wBAAwB;IAClE;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,IAAI,IAAI;CAiB5B"}
@@ -0,0 +1,33 @@
1
+ import { RuntimeError } from '@ibiz-template/core';
2
+ import { ScriptFactory } from '../../../../utils';
3
+ import { ReportPanelBaseGenerator } from './base-generator';
4
+ /**
5
+ * BI报表相关
6
+ *
7
+ * @author tony001
8
+ * @date 2024-06-18 13:06:30
9
+ * @export
10
+ * @class BIReportPanelGenerator
11
+ * @extends {ReportPanelBaseGenerator}
12
+ */
13
+ export class BIReportPanelGenerator extends ReportPanelBaseGenerator {
14
+ /**
15
+ * 设置配置
16
+ *
17
+ * @author tony001
18
+ * @date 2024-06-18 14:06:38
19
+ * @protected
20
+ */
21
+ setConfig() {
22
+ var _a;
23
+ if (!((_a = this.model.appDEReport) === null || _a === void 0 ? void 0 : _a.reportUIModel)) {
24
+ throw new RuntimeError(ibiz.i18n.t('runtime.controller.control.reportPanel.noReportUIModel'));
25
+ }
26
+ const sourceModel = ScriptFactory.execScriptFn({}, this.model.appDEReport.reportUIModel, {
27
+ isAsync: false,
28
+ singleRowReturn: true,
29
+ });
30
+ sourceModel.reportTag = this.model.appDEReport.id;
31
+ this.config = sourceModel;
32
+ }
33
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"generator-factory.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/report-panel/generator/generator-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D;;;;;GAKG;AACH,qBAAa,2BAA2B;IACtC;;;;;;;OAOG;WACW,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,wBAAwB;CAmB3E"}
1
+ {"version":3,"file":"generator-factory.d.ts","sourceRoot":"","sources":["../../../../../src/controller/control/report-panel/generator/generator-factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAE5D;;;;;GAKG;AACH,qBAAa,2BAA2B;IACtC;;;;;;;OAOG;WACW,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,wBAAwB;CA4B3E"}
@@ -1,5 +1,6 @@
1
1
  import { UserReportPanelGenerator } from './user-generator';
2
2
  import { User2ReportPanelGenerator } from './user2-generator';
3
+ import { BIReportPanelGenerator } from './bi-generator';
3
4
  /**
4
5
  * 报表面板生成器工厂
5
6
  *
@@ -24,6 +25,15 @@ export class ReportPanelGeneratorFactory {
24
25
  return new UserReportPanelGenerator(model);
25
26
  case 'USER2':
26
27
  return new User2ReportPanelGenerator(model);
28
+ case 'DESYSBIREPORTS':
29
+ case 'DESYSBIREPORTS':
30
+ case 'SYSBICUBE':
31
+ case 'DESYSBICUBES':
32
+ case 'ALLSYSBICUBES':
33
+ case 'SYSBIREPORT':
34
+ case 'SYSBICUBEREPORTS':
35
+ case 'ALLSYSBIREPORTS':
36
+ return new BIReportPanelGenerator(model);
27
37
  default:
28
38
  throw new Error(ibiz.i18n.t('runtime.controller.control.reportPanel.noImplemented', {
29
39
  reportType: model.appDEReport.reportType,
@@ -102,5 +102,13 @@ export declare class ReportPanelController extends ControlController<IDEReportPa
102
102
  * @date 2023-05-23 03:42:41
103
103
  */
104
104
  refresh(): Promise<void>;
105
+ /**
106
+ * 打开设计界面
107
+ *
108
+ * @author tony001
109
+ * @date 2024-06-18 16:06:46
110
+ * @return {*} {Promise<boolean>}
111
+ */
112
+ openReportDesignPage(): Promise<boolean>;
105
113
  }
106
114
  //# sourceMappingURL=report-panel.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"report-panel.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/report-panel/report-panel.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAGtE,qBAAa,qBACX,SAAQ,iBAAiB,CACvB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,CAEnB,YAAW,sBAAsB;IAEjC;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAG,kBAAkB,CAAC;IAEvC;;;;;OAKG;IACH,SAAS,CAAC,UAAU,EAAG,cAAc,CAAC;IAEtC;;;;;;OAMG;IACI,SAAS,EAAG,wBAAwB,CAAC;IAE5C;;;;;;;OAOG;IACH,SAAS,KAAK,IAAI,IAAI,eAAe,CAAC,iBAAiB,CAAC,CAEvD;IAED;;;;;OAKG;IACH,SAAS,CAAC,SAAS,IAAI,IAAI;IAQ3B;;;;;OAKG;cACa,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1C;;;;;;OAMG;cACa,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAS1C;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC;;;;;;;OAOG;IACU,IAAI,CAAC,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,KAAK,CAAC;IA4B9D;;;;;;;;OAQG;IACG,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAIpE;;;;OAIG;IACG,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB7D;;;;;OAKG;IACH,OAAO,IAAI,KAAK,EAAE;IAIlB;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAK/B"}
1
+ {"version":3,"file":"report-panel.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/report-panel/report-panel.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EAElB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAGtE,qBAAa,qBACX,SAAQ,iBAAiB,CACvB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,CAEnB,YAAW,sBAAsB;IAEjC;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAG,kBAAkB,CAAC;IAEvC;;;;;OAKG;IACH,SAAS,CAAC,UAAU,EAAG,cAAc,CAAC;IAEtC;;;;;;OAMG;IACI,SAAS,EAAG,wBAAwB,CAAC;IAE5C;;;;;;;OAOG;IACH,SAAS,KAAK,IAAI,IAAI,eAAe,CAAC,iBAAiB,CAAC,CAEvD;IAED;;;;;OAKG;IACH,SAAS,CAAC,SAAS,IAAI,IAAI;IAQ3B;;;;;OAKG;cACa,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1C;;;;;;OAMG;cACa,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ1C;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC;;;;;;;OAOG;IACU,IAAI,CAAC,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,KAAK,CAAC;IAyC9D;;;;;;;;OAQG;IACG,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAIpE;;;;OAIG;IACG,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAkB7D;;;;;OAKG;IACH,OAAO,IAAI,KAAK,EAAE;IAIlB;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B;;;;;;OAMG;IACG,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC;CAgC/C"}
@@ -72,6 +72,17 @@ export class ReportPanelController extends ControlController {
72
72
  * @memberof ReportPanelController
73
73
  */
74
74
  async load(args = {}) {
75
+ if (this.state.reportType &&
76
+ (this.state.reportType === 'DESYSBIREPORTS' ||
77
+ this.state.reportType === 'DESYSBIREPORTS' ||
78
+ this.state.reportType === 'SYSBICUBE' ||
79
+ this.state.reportType === 'DESYSBICUBES' ||
80
+ this.state.reportType === 'ALLSYSBICUBES' ||
81
+ this.state.reportType === 'SYSBIREPORT' ||
82
+ this.state.reportType === 'SYSBICUBEREPORTS' ||
83
+ this.state.reportType === 'ALLSYSBIREPORTS')) {
84
+ return {};
85
+ }
75
86
  await this.startLoading();
76
87
  try {
77
88
  // *查询参数处理
@@ -143,4 +154,37 @@ export class ReportPanelController extends ControlController {
143
154
  key: 'refresh',
144
155
  });
145
156
  }
157
+ /**
158
+ * 打开设计界面
159
+ *
160
+ * @author tony001
161
+ * @date 2024-06-18 16:06:46
162
+ * @return {*} {Promise<boolean>}
163
+ */
164
+ async openReportDesignPage() {
165
+ if (this.state.reportType &&
166
+ (this.state.reportType === 'DESYSBIREPORTS' ||
167
+ this.state.reportType === 'DESYSBIREPORTS' ||
168
+ this.state.reportType === 'SYSBICUBE' ||
169
+ this.state.reportType === 'DESYSBICUBES' ||
170
+ this.state.reportType === 'ALLSYSBICUBES' ||
171
+ this.state.reportType === 'SYSBIREPORT' ||
172
+ this.state.reportType === 'SYSBICUBEREPORTS' ||
173
+ this.state.reportType === 'ALLSYSBIREPORTS')) {
174
+ const modal = ibiz.overlay.createModal('BIReportDesign', {
175
+ dismiss: () => modal.dismiss(),
176
+ context: this.context,
177
+ viewParams: this.params,
178
+ config: this.generator.config,
179
+ }, {
180
+ width: '90%',
181
+ height: '90%',
182
+ footerHide: true,
183
+ });
184
+ modal.present();
185
+ const result = await modal.onWillDismiss();
186
+ return result.ok || false;
187
+ }
188
+ return true;
189
+ }
146
190
  }
@@ -1 +1 @@
1
- {"version":3,"file":"entity-schema.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/search-bar/entity-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAkH5E;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,KAAK,EACX,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAkF7B"}
1
+ {"version":3,"file":"entity-schema.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/search-bar/entity-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAkH5E;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,KAAK,EACX,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAoF7B"}