@ibiz-template/runtime 0.4.1-dev.0 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -15648,8 +15648,8 @@ var FrontUIActionProvider = class extends UIActionProviderBase {
15648
15648
  * @return {*}
15649
15649
  */
15650
15650
  async executePrint(action, args) {
15651
- var _a, _b;
15652
- const { resultParams } = await this.handleParams(
15651
+ var _a, _b, _c;
15652
+ const { resultContext, resultParams } = await this.handleParams(
15653
15653
  action,
15654
15654
  args.context,
15655
15655
  args.data,
@@ -15663,9 +15663,8 @@ var FrontUIActionProvider = class extends UIActionProviderBase {
15663
15663
  });
15664
15664
  if (appDEPrint) {
15665
15665
  let requestUrl = "";
15666
- const { context } = args;
15667
- if (context && context[appDataEntity.codeName.toLowerCase()]) {
15668
- requestUrl += "/".concat((_b = appDataEntity.codeName2) == null ? void 0 : _b.toLowerCase(), "/printdata/").concat(context[appDataEntity.codeName.toLowerCase()]);
15666
+ if (resultContext && resultContext[appDataEntity.codeName.toLowerCase()]) {
15667
+ requestUrl += "/".concat((_b = appDataEntity.codeName2) == null ? void 0 : _b.toLowerCase(), "/printdata/").concat(resultContext[appDataEntity.codeName.toLowerCase()]);
15669
15668
  } else {
15670
15669
  throw new RuntimeError44("\u6CA1\u6709\u627E\u5230\u6570\u636E\u4E3B\u952E");
15671
15670
  }
@@ -15678,8 +15677,21 @@ var FrontUIActionProvider = class extends UIActionProviderBase {
15678
15677
  }
15679
15678
  });
15680
15679
  if (res.ok) {
15681
- const link = window.URL.createObjectURL(res.data);
15682
- window.open(link, "_blank");
15680
+ if (resultParams && resultParams.srfcontenttype) {
15681
+ const disposition = res.headers["content-disposition"];
15682
+ const filename = (_c = disposition.split(";").find((str) => str.indexOf("filename=") !== -1)) == null ? void 0 : _c.slice(9);
15683
+ const href = URL.createObjectURL(res.data);
15684
+ const a = document.createElement("a");
15685
+ a.href = href;
15686
+ a.download = filename;
15687
+ document.body.appendChild(a);
15688
+ a.click();
15689
+ document.body.removeChild(a);
15690
+ URL.revokeObjectURL(href);
15691
+ } else {
15692
+ const link = window.URL.createObjectURL(res.data);
15693
+ window.open(link, "_blank");
15694
+ }
15683
15695
  } else {
15684
15696
  throw new RuntimeError44("\u6253\u5370\u5931\u8D25");
15685
15697
  }
@@ -19288,6 +19300,16 @@ import {
19288
19300
  RuntimeModelError as RuntimeModelError53
19289
19301
  } from "@ibiz-template/core";
19290
19302
  var FormMDCtrlMDController = class extends FormMDCtrlController {
19303
+ /**
19304
+ * 表单项名称
19305
+ *
19306
+ * @author lxm
19307
+ * @date 2022-09-04 18:09:32
19308
+ * @readonly
19309
+ */
19310
+ get name() {
19311
+ return this.model.id;
19312
+ }
19291
19313
  async onInit() {
19292
19314
  await super.onInit();
19293
19315
  const { contentControl } = this.model;
@@ -19320,6 +19342,11 @@ var FormMDCtrlMDController = class extends FormMDCtrlController {
19320
19342
  this.updateFormItem();
19321
19343
  });
19322
19344
  }
19345
+ updateFormItem() {
19346
+ const items = this.mdController.state.items || [];
19347
+ this.data[this.name] = items;
19348
+ return super.updateFormItem();
19349
+ }
19323
19350
  /**
19324
19351
  * 删除多数据选中的数据
19325
19352
  * @author lxm
@@ -19344,7 +19371,21 @@ var FormMDCtrlMDController = class extends FormMDCtrlController {
19344
19371
  }
19345
19372
  }
19346
19373
  refresh() {
19347
- this.mdController.refresh();
19374
+ if (this.mdController) {
19375
+ this.mdController.refresh();
19376
+ } else {
19377
+ ibiz.log.debug("mdController\u4E0D\u5B58\u5728");
19378
+ }
19379
+ }
19380
+ /**
19381
+ * 表单状态变更通知
19382
+ *
19383
+ * @author lxm
19384
+ * @date 2022-09-20 18:09:07
19385
+ */
19386
+ async formStateNotify(state) {
19387
+ await super.formStateNotify(state);
19388
+ this.refresh();
19348
19389
  }
19349
19390
  async dataChangeNotify(names) {
19350
19391
  await super.dataChangeNotify(names);