@ibiz-template/runtime 0.7.41-alpha.116 → 0.7.41-alpha.117

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 (33) hide show
  1. package/dist/index.esm.js +72 -13
  2. package/dist/index.system.min.js +1 -1
  3. package/out/controller/common/control/md-control.controller.d.ts.map +1 -1
  4. package/out/controller/common/control/md-control.controller.js +1 -0
  5. package/out/controller/control/grid/grid/grid.controller.d.ts +2 -1
  6. package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
  7. package/out/controller/control/grid/grid/grid.controller.js +8 -4
  8. package/out/controller/control/md-ctrl/md-ctrl.controller.d.ts +2 -1
  9. package/out/controller/control/md-ctrl/md-ctrl.controller.d.ts.map +1 -1
  10. package/out/controller/control/md-ctrl/md-ctrl.controller.js +8 -4
  11. package/out/controller/control/toolbar/toolbar.controller.d.ts.map +1 -1
  12. package/out/controller/control/toolbar/toolbar.controller.js +17 -2
  13. package/out/interface/api/state/control/i-api-md-control.state.d.ts +7 -0
  14. package/out/interface/api/state/control/i-api-md-control.state.d.ts.map +1 -1
  15. package/out/platform/provider/platform-provider-base.d.ts.map +1 -1
  16. package/out/platform/provider/platform-provider-base.js +9 -0
  17. package/out/service/service/control/md-control.service.d.ts +2 -1
  18. package/out/service/service/control/md-control.service.d.ts.map +1 -1
  19. package/out/service/service/control/md-control.service.js +14 -4
  20. package/out/ui-action/provider/front-ui-action-provider.d.ts.map +1 -1
  21. package/out/ui-action/provider/front-ui-action-provider.js +18 -0
  22. package/out/ui-action/provider/ui-action-provider-base.d.ts.map +1 -1
  23. package/out/ui-action/provider/ui-action-provider-base.js +5 -0
  24. package/package.json +5 -5
  25. package/src/controller/common/control/md-control.controller.ts +1 -0
  26. package/src/controller/control/grid/grid/grid.controller.ts +14 -4
  27. package/src/controller/control/md-ctrl/md-ctrl.controller.ts +14 -4
  28. package/src/controller/control/toolbar/toolbar.controller.ts +20 -0
  29. package/src/interface/api/state/control/i-api-md-control.state.ts +8 -0
  30. package/src/platform/provider/platform-provider-base.ts +15 -0
  31. package/src/service/service/control/md-control.service.ts +15 -3
  32. package/src/ui-action/provider/front-ui-action-provider.ts +22 -0
  33. package/src/ui-action/provider/ui-action-provider-base.ts +6 -0
package/dist/index.esm.js CHANGED
@@ -30521,6 +30521,7 @@ var MDControlController = class extends ControlController {
30521
30521
  this.state.groups = [];
30522
30522
  this.state.hideNoDataImage = false;
30523
30523
  this.state.enableGroup = !!this.model.enableGroup;
30524
+ this.state.isSelectedAll = false;
30524
30525
  }
30525
30526
  /**
30526
30527
  * 批操作工具栏
@@ -32354,11 +32355,15 @@ var MDControlService2 = class extends ControlService {
32354
32355
  * @date 2022-08-31 17:08:41
32355
32356
  * @param {IContext} context 上下文
32356
32357
  * @param {IParams} [params={}] 视图参数
32358
+ * @param {IParams} [args={}] 额外参数
32357
32359
  * @returns {*} {Promise<IHttpResponse>}
32358
32360
  */
32359
- async fetch(context, params = {}) {
32361
+ async fetch(context, params = {}, args = {}) {
32360
32362
  var _a3;
32361
- const fetchAction = ((_a3 = this.model.fetchControlAction) == null ? void 0 : _a3.appDEMethodId) || "fetchdefault";
32363
+ let fetchAction = ((_a3 = this.model.fetchControlAction) == null ? void 0 : _a3.appDEMethodId) || "fetchdefault";
32364
+ if (args.srfexportdataset) {
32365
+ fetchAction = args.srfexportdataset;
32366
+ }
32362
32367
  let res = await this.exec(fetchAction, context, params);
32363
32368
  res = this.handleResponse(res);
32364
32369
  return res;
@@ -32475,9 +32480,13 @@ var MDControlService2 = class extends ControlService {
32475
32480
  context,
32476
32481
  this.model.appDataEntityId
32477
32482
  );
32483
+ let tempFetchAction = dataExport.appDEDataSetId || this.model.fetchControlAction.appDEMethodId;
32484
+ if (params.srfexportdataset) {
32485
+ tempFetchAction = params.srfexportdataset;
32486
+ }
32478
32487
  return entityService.file.export(
32479
32488
  dataExport,
32480
- dataExport.appDEDataSetId || this.model.fetchControlAction.appDEMethodId,
32489
+ tempFetchAction,
32481
32490
  context,
32482
32491
  params
32483
32492
  );
@@ -34977,6 +34986,10 @@ var UIActionProviderBase = class {
34977
34986
  presetParams.srfexportdataset = resultParams.srfexportdataset;
34978
34987
  delete resultParams.srfexportdataset;
34979
34988
  }
34989
+ if (resultParams.hasOwnProperty("srfexportdatakey")) {
34990
+ presetParams.srfexportdatakey = resultParams.srfexportdatakey;
34991
+ delete resultParams.srfexportdatakey;
34992
+ }
34980
34993
  if (resultParams.hasOwnProperty("srfasyncaction")) {
34981
34994
  presetParams.srfasyncaction = resultParams.srfasyncaction;
34982
34995
  delete resultParams.srfasyncaction;
@@ -35485,6 +35498,20 @@ var FrontUIActionProvider = class extends UIActionProviderBase {
35485
35498
  ...args.params,
35486
35499
  ...resultParams
35487
35500
  };
35501
+ const { actionTarget } = action;
35502
+ if ((actionTarget === "MULTIDATA" || actionTarget === "MULTIKEY") && !args.params.srfallselected) {
35503
+ const srfexportdatakey = presetParams.srfexportdatakey || "srfkey";
35504
+ const tempParams = {};
35505
+ if (args && args.data && args.data.length > 0) {
35506
+ Object.assign(tempParams, {
35507
+ srfkeys: args.data.map((data) => data[srfexportdatakey]).join(",")
35508
+ });
35509
+ }
35510
+ Object.assign(params, tempParams);
35511
+ }
35512
+ if (params && Object.prototype.hasOwnProperty.call(params, "srfallselected")) {
35513
+ delete params.srfallselected;
35514
+ }
35488
35515
  if (isAsyncAction) {
35489
35516
  const app = await ibiz.hub.getAppAsync(action.appId);
35490
35517
  await app.net.request(url, {
@@ -35895,18 +35922,27 @@ var ToolbarController = class extends ControlController {
35895
35922
  * @memberof ToolbarController
35896
35923
  */
35897
35924
  async getToolbarEventArgs() {
35898
- var _a3;
35925
+ var _a3, _b2;
35899
35926
  const result = this.getEventArgs();
35927
+ const newParams = {
35928
+ ...result.params
35929
+ };
35900
35930
  let data = [];
35901
35931
  if (this.xdataControl) {
35902
35932
  data = ((_a3 = this.xdataControl) == null ? void 0 : _a3.getData()) || [];
35933
+ if ((_b2 = this.xdataControl.state) == null ? void 0 : _b2.isSelectedAll) {
35934
+ Object.assign(newParams, {
35935
+ srfallselected: true
35936
+ });
35937
+ }
35903
35938
  } else {
35904
35939
  data = await this.ctx.view.call("GetData" /* GET_DATA */) || [];
35905
35940
  }
35906
35941
  return {
35907
35942
  ...result,
35908
35943
  data,
35909
- ctrl: this
35944
+ ctrl: this,
35945
+ params: newParams
35910
35946
  };
35911
35947
  }
35912
35948
  /**
@@ -36092,6 +36128,7 @@ var ToolbarController = class extends ControlController {
36092
36128
  }
36093
36129
  }
36094
36130
  async calcButtonState(data, appDeId, _params = {}) {
36131
+ const app = await ibiz.hub.getApp(this.context.srfappid);
36095
36132
  let _data = data;
36096
36133
  if (data && data instanceof ControlVO) {
36097
36134
  _data = data.getOrigin();
@@ -36141,6 +36178,12 @@ var ToolbarController = class extends ControlController {
36141
36178
  itemState.disabled = !dynaEnable;
36142
36179
  }
36143
36180
  }
36181
+ if (item.accessKey && itemState.visible) {
36182
+ const permitted = app.authority.calcByResCode(item.accessKey);
36183
+ if (!permitted) {
36184
+ itemState.visible = false;
36185
+ }
36186
+ }
36144
36187
  },
36145
36188
  { childrenFields: ["detoolbarItems"] }
36146
36189
  );
@@ -53122,16 +53165,17 @@ var GridController = class extends MDControlController {
53122
53165
  * @author zk
53123
53166
  * @date 2023-07-20 04:07:49
53124
53167
  * @param {MDCtrlLoadParams} args
53168
+ * @param {IParams} [fetchArgs={}] 透传给 service.fetch 的额外参数,如 srfexportdataset
53125
53169
  * @return {*}
53126
53170
  * @memberof GridController
53127
53171
  */
53128
- async loadData(args) {
53172
+ async loadData(args, fetchArgs = {}) {
53129
53173
  const { context } = this.handlerAbilityParams(args);
53130
53174
  const params = await this.getFetchParams(args == null ? void 0 : args.viewParam);
53131
53175
  let res;
53132
53176
  await this.startLoading();
53133
53177
  try {
53134
- res = await this.service.fetch(context, params);
53178
+ res = await this.service.fetch(context, params, fetchArgs);
53135
53179
  } finally {
53136
53180
  await this.endLoading();
53137
53181
  }
@@ -53280,7 +53324,10 @@ var GridController = class extends MDControlController {
53280
53324
  size: ((_a3 = this.dataExport) == null ? void 0 : _a3.maxRowCount) || ibiz.config.common.maxExportRowsDefault,
53281
53325
  page: 0
53282
53326
  };
53283
- data = await this.loadData({ viewParam });
53327
+ data = await this.loadData(
53328
+ { viewParam },
53329
+ { srfexportdataset: this.params.srfexportdataset }
53330
+ );
53284
53331
  } else if (type === "selectedRows") {
53285
53332
  data = this.getData();
53286
53333
  }
@@ -53313,9 +53360,10 @@ var GridController = class extends MDControlController {
53313
53360
  ibiz.i18n.t("runtime.controller.control.grid.exported")
53314
53361
  );
53315
53362
  }
53363
+ const srfexportdatakey = this.params.srfexportdatakey || "srfkey";
53316
53364
  tempParams = {
53317
53365
  page: 0,
53318
- srfkeys: selectedData.map((data) => data.srfkey).join(",")
53366
+ srfkeys: selectedData.map((data) => data[srfexportdatakey]).join(",")
53319
53367
  };
53320
53368
  } else if (type === "maxRowCount" || type === "customPage") {
53321
53369
  const { size } = this.state;
@@ -61194,16 +61242,17 @@ var MDCtrlController = class extends MDControlController {
61194
61242
  /**
61195
61243
  * @description 加载数据(只加载数据 不做其他操作)
61196
61244
  * @param {MDCtrlLoadParams} args
61245
+ * @param {IParams} [fetchArgs={}] 透传给 service.fetch 的额外参数,如 srfexportdataset
61197
61246
  * @returns {*} {Promise<IData[]>}
61198
61247
  * @memberof MDCtrlController
61199
61248
  */
61200
- async loadData(args) {
61249
+ async loadData(args, fetchArgs = {}) {
61201
61250
  const { context } = this.handlerAbilityParams(args);
61202
61251
  const params = await this.getFetchParams(args == null ? void 0 : args.viewParam);
61203
61252
  let res;
61204
61253
  await this.startLoading();
61205
61254
  try {
61206
- res = await this.service.fetch(context, params);
61255
+ res = await this.service.fetch(context, params, fetchArgs);
61207
61256
  } finally {
61208
61257
  await this.endLoading();
61209
61258
  }
@@ -61232,7 +61281,10 @@ var MDCtrlController = class extends MDControlController {
61232
61281
  size: ((_a3 = this.dataExport) == null ? void 0 : _a3.maxRowCount) || ibiz.config.common.maxExportRowsDefault,
61233
61282
  page: 0
61234
61283
  };
61235
- data = await this.loadData({ viewParam });
61284
+ data = await this.loadData(
61285
+ { viewParam },
61286
+ { srfexportdataset: this.params.srfexportdataset }
61287
+ );
61236
61288
  } else if (type === "selectedRows") {
61237
61289
  data = this.getData();
61238
61290
  }
@@ -61313,9 +61365,10 @@ var MDCtrlController = class extends MDControlController {
61313
61365
  ibiz.i18n.t("runtime.controller.common.md.exported")
61314
61366
  );
61315
61367
  }
61368
+ const srfexportdatakey = this.params.srfexportdatakey || "srfkey";
61316
61369
  tempParams = {
61317
61370
  page: 0,
61318
- srfkeys: selectedData.map((data) => data.srfkey).join(",")
61371
+ srfkeys: selectedData.map((data) => data[srfexportdatakey]).join(",")
61319
61372
  };
61320
61373
  } else if (type === "maxRowCount" || type === "customPage") {
61321
61374
  const { size } = this.state;
@@ -68388,6 +68441,12 @@ var PlatformProviderBase = class {
68388
68441
  */
68389
68442
  async backendExport(args) {
68390
68443
  const { baseURL, url, method, params, data, newWindow } = args;
68444
+ if (data && Object.prototype.hasOwnProperty.call(data, "srfexportdataset")) {
68445
+ delete data.srfexportdataset;
68446
+ }
68447
+ if (data && Object.prototype.hasOwnProperty.call(data, "srfexportdatakey")) {
68448
+ delete data.srfexportdatakey;
68449
+ }
68391
68450
  const response = await ibiz.net.request(url, {
68392
68451
  data,
68393
68452
  method,