@gct-paas/excel 0.1.39-beta.4 → 0.1.39-beta.41

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 (128) hide show
  1. package/dist/{BaseComponent-B8_qg2he.js → BaseComponent-hWfUDepU.js} +2 -2
  2. package/dist/{VueVideoPlayer-B-X9Kvhp.js → VueVideoPlayer-CTtss6-e.js} +2 -2
  3. package/dist/{align-editor-1IbAiPBg.js → align-editor-0EJDQ9xk.js} +1 -1
  4. package/dist/{barcode-design-DCm1U-OU.js → barcode-design-CH7C0nTV.js} +2 -2
  5. package/dist/base/index.es.js +545 -244
  6. package/dist/{diagonal-design-DBk2s8UD.js → diagonal-design-CKLfmzt9.js} +2 -2
  7. package/dist/{dynamic-table-action-JSevwsex.js → dynamic-table-action-Dhx1ZQSa.js} +948 -303
  8. package/dist/{dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js → dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js} +636 -1140
  9. package/dist/{edit.utils-CXmmCnxE-88-QvdIv.js → edit.utils-CXmmCnxE-Cj0XviBc.js} +1 -1
  10. package/dist/excel.css +589 -338
  11. package/dist/{exceljs.min-M28cAz_z.js → exceljs.min-BNsMIPFn.js} +2 -2
  12. package/dist/{font-editor-nCQk5D1K.js → font-editor-CHZPtUHX.js} +3 -3
  13. package/dist/{image-design-B84grap7.js → image-design-AOi1nT_M.js} +2 -2
  14. package/dist/{index-jRA6sXVY.js → index-2SyQ6xAT.js} +1 -1
  15. package/dist/{index-UCNknVxk.js → index-B1JboJFx.js} +1 -1
  16. package/dist/{index-DEl0sxMk.js → index-B863k7Jl.js} +6 -5
  17. package/dist/{index-_-ORWa-m.js → index-BFhX3ACB.js} +1 -1
  18. package/dist/{index-CGsTW2E9.js → index-BNKKUueq.js} +2 -2
  19. package/dist/{index-ZEwe0MJj.js → index-BTr11l_g.js} +2 -2
  20. package/dist/{index-DPOE78Jf.js → index-BVSnhxY1.js} +2 -2
  21. package/dist/{index-I2HpU1BP.js → index-BZPA_AiO.js} +3 -3
  22. package/dist/{index-ChncMTkv.js → index-BeFJ_RCt.js} +1 -1
  23. package/dist/{index-DEN3-esb.js → index-BfIS3NOa.js} +6 -3
  24. package/dist/{index-BSXafKJS.js → index-BgV92L3Y.js} +2 -2
  25. package/dist/{index-CCsNdL4I.js → index-Bj3c4vZy.js} +2 -2
  26. package/dist/{index-CBiaZr1j.js → index-Bua1ArJ5.js} +2 -2
  27. package/dist/{index-BrkoN2-J.js → index-CDRNOYDd.js} +6 -5
  28. package/dist/{index-D0Q-6EtG.js → index-CDhZoiEf.js} +1 -1
  29. package/dist/{index-CCp6-NXH.js → index-C__SKZMl.js} +3 -3
  30. package/dist/{index-tZd-Us4e.js → index-Ca0fy776.js} +2 -2
  31. package/dist/{index-CKWcaJGI.js → index-CbXJ1XDJ.js} +5 -7
  32. package/dist/{index-CUHfI8cg.js → index-Cfe2Q-hG.js} +1 -1
  33. package/dist/{index-H_BLk7PI.js → index-CfvZdYSY.js} +2 -2
  34. package/dist/{index-Co1E4H0G.js → index-CiqInN9G.js} +2 -2
  35. package/dist/{index-CX6LqGJP.js → index-Cld2wf77.js} +1 -1
  36. package/dist/{index-D7IBmbmp.js → index-Cy4bHDfG.js} +2 -2
  37. package/dist/{index-bfXiwTE7.js → index-D1bE-oJR.js} +2047 -1745
  38. package/dist/{index-DT87VrvR.js → index-D7kir0tU.js} +2 -2
  39. package/dist/{index-B53fgzJo.js → index-DR6T7C4O.js} +2 -2
  40. package/dist/{index-DCzL4GOP.js → index-DThgFjEo.js} +53 -5
  41. package/dist/{index-BvJ7ZgvI.js → index-DnM4LcB4.js} +2 -2
  42. package/dist/{index-DkvjFyW6.js → index-DnOwWeey.js} +2 -2
  43. package/dist/{index-wcY1RYL_.js → index-ICNCCzD2.js} +2 -2
  44. package/dist/{index-CFjE5779.js → index-LVofttI7.js} +3 -2
  45. package/dist/{index-Doz8Gf_5.js → index-SXIZsVts.js} +1 -1
  46. package/dist/{index-XBuNXPu0.js → index-cnZ4ogvg.js} +2 -2
  47. package/dist/{index-DHHyy4mL.js → index-n97S5YRD.js} +1 -1
  48. package/dist/{index-MJFci9IB.js → index-nl7I1bLi.js} +1 -1
  49. package/dist/index.es.js +2 -2
  50. package/dist/{mb-render-BZDgmpm9.js → mb-render-FUO_-FXR.js} +9 -3
  51. package/dist/{online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-Ciue53Ue.js → online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DOYhOffQ.js} +8 -1
  52. package/dist/{pagination-design-BYqVZGdA.js → pagination-design-BjxLbj93.js} +2 -2
  53. package/dist/paper-widget-design-Cy2MxlCk.js +4 -0
  54. package/dist/{print-runtime-instance-D3BJGzia.js → print-runtime-instance-THb92xUW.js} +1 -1
  55. package/dist/{print-snapshot-renderer-MzkjvlA8.js → print-snapshot-renderer-4jQFaAjJ.js} +3 -3
  56. package/dist/{qrcode-design-B0YGEijA.js → qrcode-design-DM9kEawx.js} +1 -1
  57. package/dist/{revo-grid.entry-DdE6cuGJ.js → revo-grid.entry-DKvA7bUR.js} +1 -1
  58. package/dist/{revogr-attribution_7.entry-Er1fVrov.js → revogr-attribution_7.entry-C2PtJ_Tj.js} +3 -3
  59. package/dist/{revogr-clipboard_3.entry-COq2SN-B.js → revogr-clipboard_3.entry-BM7_JY0U.js} +2 -2
  60. package/dist/{revogr-data_4.entry--CfGDdVK.js → revogr-data_4.entry-CdMQPL7I.js} +2 -2
  61. package/dist/{revogr-filter-panel.entry-DoNXkBy6.js → revogr-filter-panel.entry-BJiGVhcw.js} +1 -1
  62. package/dist/seal-design-C5P3oQIa.js +4 -0
  63. package/dist/{serialnumber-design-fMRSi9jn.js → serialnumber-design-QaDIsxYT.js} +1 -1
  64. package/dist/shared/index.es.js +23 -21
  65. package/dist/{single-field-drop-BycxT2Kf.js → single-field-drop-BAiIyb2u.js} +2 -2
  66. package/dist/{size-editor-BKJfYgbR.js → size-editor-BV0KrQ37.js} +1 -1
  67. package/dist/src/domain/table/business/material/material-balance/profile/fields.d.ts +2 -0
  68. package/dist/src/domain/table/business/preprocess/pretreatment-list/profile/field-keys.d.ts +1 -7
  69. package/dist/src/domain/table/business/sterilize/entrust-steril-batch-list/profile/fields.d.ts +2 -0
  70. package/dist/src/nocode-base/src/core/sub-table/allocate-table-core.d.ts +2 -1
  71. package/dist/src/nocode-base/src/core/sub-table/sub-table-core.d.ts +2 -1
  72. package/dist/src/nocode-base/src/hooks/form-model/form-model-controller.d.ts +2 -0
  73. package/dist/src/nocode-base/src/hooks/material-consume/material-consume-table-controller.d.ts +1 -0
  74. package/dist/src/nocode-base/src/hooks/material-consume/tmpl-bom-controller.d.ts +12 -7
  75. package/dist/src/nocode-base/src/hooks/material-consume-object/bom-validator.d.ts +4 -3
  76. package/dist/src/nocode-base/src/hooks/material-consume-object/initialize-autofill.d.ts +19 -0
  77. package/dist/src/nocode-base/src/hooks/material-consume-object/object-validation-controller.d.ts +24 -0
  78. package/dist/src/nocode-base/src/interface/render.d.ts +3 -1
  79. package/dist/src/nocode-base/src/interface/transform.d.ts +9 -1
  80. package/dist/src/nocode-base/src/runtime/async-task-coordinator.d.ts +6 -2
  81. package/dist/src/nocode-base/src/runtime/multi-sheet-runtime.d.ts +3 -1
  82. package/dist/src/nocode-base/src/runtime/runtime-context.d.ts +4 -0
  83. package/dist/src/nocode-base/src/runtime/runtime-field-initializer.d.ts +1 -1
  84. package/dist/src/nocode-base/src/runtime/runtime-validation-service.d.ts +1 -0
  85. package/dist/src/nocode-base/src/types/render/mc-render.d.ts +1 -1
  86. package/dist/src/nocode-base/src/types/render/sub-table-render.d.ts +5 -1
  87. package/dist/src/nocode-web-render/src/render/sub-table/common/inventory-scan-columns.d.ts +6 -0
  88. package/dist/src/nocode-web-render/src/render/sub-table/material-consume/mc-web-render.d.ts +1 -1
  89. package/dist/src/online-form/src/views/__cell_widgets__/cell-widget-design.vue.d.ts +1 -0
  90. package/dist/src/online-form/src/views/__cell_widgets__/common/display-fields-editor/display-fields.util.d.ts +2 -2
  91. package/dist/src/online-form/src/views/__cell_widgets__/common/quick-search-editor/quick-search.util.d.ts +8 -0
  92. package/dist/src/online-form/src/views/__cell_widgets__/fake-field/fake-option-select.vue.d.ts +1 -0
  93. package/dist/src/online-form/src/views/designer/conversions/normalize-paper-grid.d.ts +3 -0
  94. package/dist/src/online-form/src/views/designer/hooks/useAllSpreadSheets.d.ts +11 -0
  95. package/dist/src/online-form/src/views/designer/modules/base/designer-wrapper.vue.d.ts +1 -0
  96. package/dist/src/online-form/src/views/designer/modules/duplicate-field-notice.vue.d.ts +2 -0
  97. package/dist/src/online-form/src/views/designer/modules/xlsx-import-summary.vue.d.ts +11 -0
  98. package/dist/src/online-form/src/views/designer/types/sheets.d.ts +2 -0
  99. package/dist/src/online-form/src/views/designer/utils/cell-field-placements.d.ts +12 -0
  100. package/dist/src/online-form/src/views/designer/utils/xlsx-parser.d.ts +9 -3
  101. package/dist/src/online-form/src/views/render/__components__/_field_/trace/utils/use-rule-props.d.ts +0 -3
  102. package/dist/src/shared/enum/field-type.d.ts +2 -0
  103. package/dist/src/shared/enum/index.d.ts +2 -0
  104. package/dist/src/shared/enum/product-type.d.ts +9 -0
  105. package/dist/src/shared/enum/production-identification.d.ts +19 -0
  106. package/dist/src/shared/utils/cell-wrap.d.ts +9 -0
  107. package/dist/src/shared/utils/grid-size.d.ts +2 -0
  108. package/dist/{sub-table-factory-BxG7QiiX.js → sub-table-factory-_mm1iwau.js} +19 -7
  109. package/dist/{text-design-BQKYk7aD.js → text-design-DfdH_3_b.js} +5 -4
  110. package/dist/{throttle-Cpk1LoGk-BI0wP2Le.js → throttle-Cpk1LoGk-HQvkISS4.js} +1 -1
  111. package/dist/{timediff-design-O1IfzLVD.js → timediff-design-CKjl56qS.js} +1 -1
  112. package/dist/{trace-like-wrapper-CdKGpstE.js → trace-like-wrapper-D6lJ8e-H.js} +5 -2
  113. package/dist/{value-editor.vue_vue_type_style_index_0_lang-CCv0wmKI.js → value-editor.vue_vue_type_style_index_0_lang-BmQGrlz8.js} +2 -2
  114. package/dist/web-render/index.es.js +3 -3
  115. package/dist/{widget-barcode-CK68yjvd.js → widget-barcode-By9P2d-R.js} +4 -4
  116. package/dist/{widget-diagonal-9F-6feRM.js → widget-diagonal-DMNfA-Tt.js} +3 -3
  117. package/dist/{widget-image-2GcRCaIf.js → widget-image-YM9YaMb-.js} +5 -5
  118. package/dist/{widget-line-flwy9kew.js → widget-line-Dl3TIfBO.js} +2 -2
  119. package/dist/{widget-pagination-pxpEH1UB.js → widget-pagination-9XxvQDIw.js} +5 -5
  120. package/dist/{widget-power-pFQ7lwCW.js → widget-power-A96VVJDG.js} +3 -3
  121. package/dist/{widget-qrcode-D_Ri0RG2.js → widget-qrcode-DWseHVIM.js} +3 -3
  122. package/dist/{widget-rangelimit-DB97heRc.js → widget-rangelimit-DK8oOmC_.js} +3 -3
  123. package/dist/{widget-serialnumber-I35Sov0R.js → widget-serialnumber-pue8WfA9.js} +1 -1
  124. package/dist/{widget-text-C93W0WWM.js → widget-text-B9O9UYK7.js} +5 -5
  125. package/dist/{widget-timediff-S4X81H7c.js → widget-timediff-PwNxXBrF.js} +2 -2
  126. package/package.json +2 -2
  127. package/dist/paper-widget-design-BcSUNaAF.js +0 -4
  128. package/dist/seal-design-CHOawN-k.js +0 -4
@@ -1,9 +1,9 @@
1
1
  import { get } from "lodash-es";
2
- import { C as ComponentTypeEnum, O as Orientation, a1 as BooleanShowMode, a0 as LabelPosition } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { C as ComponentTypeEnum, O as Orientation, a0 as BooleanShowMode, $ as LabelPosition } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  import "vue";
4
4
  import "dayjs";
5
5
  import "ant-design-vue";
6
- import { B as BaseComponent } from "./BaseComponent-B8_qg2he.js";
6
+ import { B as BaseComponent } from "./BaseComponent-hWfUDepU.js";
7
7
  class DynValue extends BaseComponent {
8
8
  component = ComponentTypeEnum.DynValue;
9
9
  wrapperCmpConfig({ data }) {
@@ -1,10 +1,10 @@
1
1
  import { f as fontStyleAttrs } from "./config.enum-B8UZQTON.js";
2
- import { C as ComponentTypeEnum, o as PaperWidgeType } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { C as ComponentTypeEnum, o as PaperWidgeType } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  import "vue";
4
4
  import { pick } from "lodash-es";
5
5
  import "dayjs";
6
6
  import "ant-design-vue";
7
- import { n as normalizeSpacerWidth, g as getFieldWidget } from "./index-bfXiwTE7.js";
7
+ import { n as normalizeSpacerWidth, g as getFieldWidget } from "./index-D1bE-oJR.js";
8
8
  class CombineFields {
9
9
  component = ComponentTypeEnum.CombineFields;
10
10
  wrapperCmpConfig({ data }) {
@@ -1,10 +1,10 @@
1
- import { E as api, a8 as _export_sfc, cH as getAugmentedNamespace, M as commonjsGlobal, N as getDefaultExportFromCjs, ce as getParseRuleConfig, bu as uuid2 } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
1
+ import { E as api, a7 as _export_sfc, cp as getAugmentedNamespace, M as commonjsGlobal, N as getDefaultExportFromCjs, c1 as getParseRuleConfig, aT as renderUtils, bl as uuid2 } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
2
  import { message, Modal, Form } from "ant-design-vue";
3
3
  import { defineComponent, inject, computed, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, renderSlot, createBlock, withCtx, createTextVNode, toDisplayString, createCommentVNode, getCurrentScope, onScopeDispose, getCurrentInstance, onMounted, nextTick, unref, ref as ref$1, onUnmounted, createVNode, h, mergeProps, reactive, Fragment, renderList, toRaw, toRef, watchEffect } from "vue";
4
4
  import { debounce, cloneDeep } from "lodash-es";
5
5
  import "dayjs";
6
- import { u as useFormModel, M as MBRender, a as MCRender } from "./mb-render-BZDgmpm9.js";
7
- import { useFormBaseModal } from "@gct-paas/form-base";
6
+ import { u as useFormModel, M as MBRender, a as MCRender } from "./mb-render-FUO_-FXR.js";
7
+ import { useFormBaseModal, closeAllFormBaseModal } from "@gct-paas/form-base";
8
8
  import { VxeGrid } from "vxe-table";
9
9
  const uploadApis = {
10
10
  upload: null,
@@ -3893,6 +3893,49 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
3893
3893
  }
3894
3894
  });
3895
3895
  const ParseRuleModal = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-2712d5f4"]]);
3896
+ function text(value) {
3897
+ if (typeof value === "string") return value.trim();
3898
+ if (typeof value === "number") return String(value);
3899
+ return "";
3900
+ }
3901
+ function referenceColumn(field, title, minWidth, displayField) {
3902
+ return {
3903
+ field,
3904
+ title,
3905
+ minWidth,
3906
+ showOverflow: "tooltip",
3907
+ formatter: ({ row }) => text(displayField ? row[displayField] : void 0) || text(renderUtils.getLabJsonValue(row, field)) || text(renderUtils.getLabByDict(row, field)) || "—"
3908
+ };
3909
+ }
3910
+ const SCENE_COLUMNS_MAP = {
3911
+ inventory: () => [
3912
+ {
3913
+ field: "materialName",
3914
+ title: $t("物料名称"),
3915
+ minWidth: 140,
3916
+ showOverflow: "tooltip",
3917
+ formatter: ({ row }) => text(row.materialName) || text(row.productId) || "—"
3918
+ },
3919
+ {
3920
+ field: "materialNo",
3921
+ title: $t("物料批次"),
3922
+ minWidth: 160,
3923
+ showOverflow: "tooltip"
3924
+ },
3925
+ referenceColumn("warehouse_id_", $t("sys.model.warehouse"), 140, "warehouse_name_"),
3926
+ referenceColumn(
3927
+ "location_id_",
3928
+ $t("sys.pageDesigner.fieldCmp.location"),
3929
+ 140,
3930
+ "location_name_"
3931
+ ),
3932
+ referenceColumn("mfg_order_id_", $t("指定工单"), 180, "mfg_order_code_"),
3933
+ referenceColumn("lot_sn_id_", $t("指定批次"), 160, "lot_sn_name_")
3934
+ ]
3935
+ };
3936
+ function getScanColumns(scene) {
3937
+ return scene ? SCENE_COLUMNS_MAP[scene]?.() : void 0;
3938
+ }
3896
3939
  class SubTableRender {
3897
3940
  modalManager = new ModalManager();
3898
3941
  openScanModal(opts) {
@@ -3919,9 +3962,13 @@ class SubTableRender {
3919
3962
  }
3920
3963
  };
3921
3964
  openMultiRowsModal = async (opts) => {
3965
+ const columns = getScanColumns(opts.scene);
3922
3966
  const { success, result } = await useFormBaseModal(
3923
3967
  "SCAN_MULTI_ROWS_MODAL",
3924
- { rows: opts.rows },
3968
+ {
3969
+ rows: opts.rows,
3970
+ ...columns === void 0 ? {} : { columns }
3971
+ },
3925
3972
  {
3926
3973
  title: opts.title ?? $t("sys.kit.selectMaterial"),
3927
3974
  width: 640,
@@ -4130,7 +4177,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
4130
4177
  });
4131
4178
  const BomModal = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-5d267371"]]);
4132
4179
  class McWebRender extends MCRender {
4133
- /** 多 Sheet 下所有弹层都记录实例 ownerId,禁止使用全局关闭影响其他表单。 */
4180
+ /** overlay 弹层按实例记录,form-base 弹层通过其全局管理器关闭。 */
4134
4181
  modals = [];
4135
4182
  async handleModal(modal, ownerId) {
4136
4183
  const record = { ownerId, modal };
@@ -4140,6 +4187,7 @@ class McWebRender extends MCRender {
4140
4187
  this.modals = this.modals.filter((item) => item !== record);
4141
4188
  }
4142
4189
  destroyAllModals(ownerId) {
4190
+ closeAllFormBaseModal();
4143
4191
  const targets = this.modals.filter((item) => item.ownerId === ownerId);
4144
4192
  for (const { modal } of targets) {
4145
4193
  modal.dismiss();
@@ -1,9 +1,9 @@
1
1
  import { get, pick } from "lodash-es";
2
- import { C as ComponentTypeEnum, az as ImageDisplayModeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { C as ComponentTypeEnum, aw as ImageDisplayModeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  import "vue";
4
4
  import "dayjs";
5
5
  import "ant-design-vue";
6
- import { B as BaseComponent } from "./BaseComponent-B8_qg2he.js";
6
+ import { B as BaseComponent } from "./BaseComponent-hWfUDepU.js";
7
7
  class UploadImage extends BaseComponent {
8
8
  component = ComponentTypeEnum.UploadImage;
9
9
  wrapperCmpConfig({ data }) {
@@ -1,9 +1,9 @@
1
1
  import { get, pick } from "lodash-es";
2
- import { C as ComponentTypeEnum, F as FIELD_TYPE, ax as RangeCompareOp, aw as RangeValidateMode } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { C as ComponentTypeEnum, F as FIELD_TYPE, au as RangeCompareOp, at as RangeValidateMode } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  import "vue";
4
4
  import "dayjs";
5
5
  import "ant-design-vue";
6
- import { B as BaseComponent } from "./BaseComponent-B8_qg2he.js";
6
+ import { B as BaseComponent } from "./BaseComponent-hWfUDepU.js";
7
7
  class DateTimepicker extends BaseComponent {
8
8
  component = ComponentTypeEnum.DateTimepicker;
9
9
  wrapperCmpConfig({ data }) {
@@ -1,9 +1,9 @@
1
1
  import { get, pick } from "lodash-es";
2
- import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  import "vue";
4
4
  import "dayjs";
5
5
  import "ant-design-vue";
6
- import { B as BaseComponent } from "./BaseComponent-B8_qg2he.js";
6
+ import { B as BaseComponent } from "./BaseComponent-hWfUDepU.js";
7
7
  class Department extends BaseComponent {
8
8
  component = ComponentTypeEnum.Department;
9
9
  wrapperCmpConfig({ data }) {
@@ -1,9 +1,10 @@
1
- import { C as ComponentTypeEnum, ac as normalizeSealDiameter } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
1
+ import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
2
  import "vue";
3
3
  import "lodash-es";
4
4
  import "dayjs";
5
+ import { f as normalizeSealDiameter } from "./dynamic-table-action-Dhx1ZQSa.js";
5
6
  import "ant-design-vue";
6
- import { B as BaseComponent } from "./BaseComponent-B8_qg2he.js";
7
+ import { B as BaseComponent } from "./BaseComponent-hWfUDepU.js";
7
8
  class Seal extends BaseComponent {
8
9
  component = ComponentTypeEnum.Seal;
9
10
  wrapperCmpConfig({ data }) {
@@ -1,4 +1,4 @@
1
- import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
1
+ import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
2
  import "vue";
3
3
  import { pick } from "lodash-es";
4
4
  import "dayjs";
@@ -1,9 +1,9 @@
1
1
  import { get, pick } from "lodash-es";
2
- import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  import "vue";
4
4
  import "dayjs";
5
5
  import "ant-design-vue";
6
- import { B as BaseComponent } from "./BaseComponent-B8_qg2he.js";
6
+ import { B as BaseComponent } from "./BaseComponent-hWfUDepU.js";
7
7
  class Userpicker extends BaseComponent {
8
8
  component = ComponentTypeEnum.Userpicker;
9
9
  wrapperCmpConfig({ data }) {
@@ -1,6 +1,6 @@
1
1
  import { pick, get } from "lodash-es";
2
2
  import { f as fontStyleAttrs } from "./config.enum-B8UZQTON.js";
3
- import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
3
+ import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
4
4
  import "vue";
5
5
  import "dayjs";
6
6
  import "ant-design-vue";
@@ -1,5 +1,5 @@
1
1
  import { f as fontStyleAttrs } from "./config.enum-B8UZQTON.js";
2
- import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { C as ComponentTypeEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  import "vue";
4
4
  import { pick } from "lodash-es";
5
5
  import "dayjs";
package/dist/index.es.js CHANGED
@@ -1,5 +1,5 @@
1
- import { G, H, J, K, M, N, O, Q, U, B, W, X, Y, Z, $, a0, a1, a2, a3, a4, a5, a6, a7, a8, x, a9, aa, y, ab, P, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, as, at, h } from "./index-bfXiwTE7.js";
2
- import { O as O2, _, V } from "./online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-Ciue53Ue.js";
1
+ import { G, H, J, K, M, N, O, Q, U, B, W, X, Y, Z, $, a0, a1, a2, a3, a4, a5, a6, a7, a8, x, a9, aa, y, ab, P, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, as, at, h } from "./index-D1bE-oJR.js";
2
+ import { O as O2, _, V } from "./online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DOYhOffQ.js";
3
3
  export {
4
4
  G as AiTmplEditor,
5
5
  H as AiTmplModal,
@@ -1,5 +1,5 @@
1
1
  import { reactive, inject, provide } from "vue";
2
- import { E as api, F as FIELD_TYPE, H as CreateType } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { E as api, F as FIELD_TYPE, H as CreateType } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  class MCRender {
4
4
  /**
5
5
  * 提示信息
@@ -55,7 +55,7 @@ class MCRender {
55
55
  /**
56
56
  * 销毁所有固定的模态
57
57
  */
58
- // 宿主实现只能销毁指定实例的弹层,不能再使用跨实例的全局关闭。
58
+ // overlay 弹层按实例销毁;form-base 弹层通过其全局关闭接口清理。
59
59
  destroyAllModals(_ownerId) {
60
60
  throw new Error("Function destroyAllModals not implemented.");
61
61
  }
@@ -162,7 +162,9 @@ class FormModelController {
162
162
  */
163
163
  getFormFieldOptions(subModelKey) {
164
164
  const fields = subModelKey ? this.getSubModelFields(subModelKey) : this.masterModel?.fields;
165
- return (fields ?? []).filter((field) => !this.isSystemField(field) && !this.isSubField(field)).map((field) => ({
165
+ return (fields ?? []).filter(
166
+ (field) => !this.isSystemField(field) && !this.isSubField(field) && !this.isObjectField(field)
167
+ ).map((field) => ({
166
168
  ...field,
167
169
  label: `${field.name}`,
168
170
  value: `${field.modelKey}.${field.key}`
@@ -215,6 +217,10 @@ class FormModelController {
215
217
  isSystemField(field) {
216
218
  return field.createType === CreateType.SYSTEM;
217
219
  }
220
+ /** 是否是对象字段类型 */
221
+ isObjectField(field) {
222
+ return field.type === FIELD_TYPE.OBJECT_TYPE;
223
+ }
218
224
  /**
219
225
  * 获取主模型里子表字段对应的子模型key
220
226
  *
@@ -1,10 +1,16 @@
1
1
  import { createVNode, defineComponent, computed, openBlock, createElementBlock, normalizeStyle, normalizeClass, unref, Fragment, createElementVNode, createTextVNode, toDisplayString, renderList, createBlock, createCommentVNode, ref, onMounted, resolveComponent, nextTick, watch, withCtx, withKeys, mergeProps, h, toRaw, withModifiers } from "vue";
2
2
  import { I as Icon, a as useNamespace } from "./AntdIcon-DCIaV352.js";
3
- import { Y as FormTypeEnum, a8 as _export_sfc, aA as FormDesignEnum, E as api, J as useModal, bP as ControlStatusEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
3
+ import { X as FormTypeEnum, a7 as _export_sfc, ax as FormDesignEnum, E as api, J as useModal, bC as ControlStatusEnum } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
4
4
  import { isArray, cloneDeep, orderBy } from "lodash-es";
5
5
  import "dayjs";
6
6
  import { Form } from "ant-design-vue";
7
7
  import { VxeTable, VxeColumn } from "vxe-table";
8
+ var ProductTypeEnum = /* @__PURE__ */ ((ProductTypeEnum2) => {
9
+ ProductTypeEnum2["RAW_MATERIAL"] = "rawMaterial";
10
+ ProductTypeEnum2["SEMI_FINISHED_PRODUCT"] = "semiFinishedProduct";
11
+ ProductTypeEnum2["FINISHED_PRODUCT"] = "finishedProduct";
12
+ return ProductTypeEnum2;
13
+ })(ProductTypeEnum || {});
8
14
  var SEARCH_SEVICE = /* @__PURE__ */ ((SEARCH_SEVICE2) => {
9
15
  SEARCH_SEVICE2["EQ"] = "eq";
10
16
  SEARCH_SEVICE2["IEQ"] = "iEq";
@@ -1270,6 +1276,7 @@ export {
1270
1276
  CloseOutlined as C,
1271
1277
  EmptyImg as E,
1272
1278
  OnlineFormModelModal as O,
1279
+ ProductTypeEnum as P,
1273
1280
  SEARCH_SEVICE as S,
1274
1281
  VersionSelect as V,
1275
1282
  _sfc_main as _
@@ -1,9 +1,9 @@
1
1
  import { defineComponent, computed, openBlock, createElementBlock, normalizeStyle, toDisplayString } from "vue";
2
- import { P as PaginationFormat } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { P as PaginationFormat } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  import "lodash-es";
4
4
  import "dayjs";
5
5
  import "ant-design-vue";
6
- import { j as calcText } from "./index-bfXiwTE7.js";
6
+ import { j as calcText } from "./index-D1bE-oJR.js";
7
7
  const _sfc_main = /* @__PURE__ */ defineComponent({
8
8
  __name: "pagination-design",
9
9
  props: {
@@ -0,0 +1,4 @@
1
+ import { k as _sfc_main } from "./index-D1bE-oJR.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
@@ -1,4 +1,4 @@
1
- import { d as captureRuntimePrintSnapshot, w as waitPrintFonts, e as waitPrintImages, p as printPagesInIframe } from "./index-bfXiwTE7.js";
1
+ import { d as captureRuntimePrintSnapshot, w as waitPrintFonts, e as waitPrintImages, p as printPagesInIframe } from "./index-D1bE-oJR.js";
2
2
  async function printRuntimeInstance(record, basicInfo, renderSnapshot, signal, options = {}) {
3
3
  if (!record.controller) throw new Error("表单尚未完成初始化,暂时无法打印");
4
4
  const snapshot = await record.controller.preparePrintSnapshot(
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, provide, ref, onErrorCaptured, onBeforeUnmount, openBlock, createBlock, unref } from "vue";
2
- import { R as RuntimeFormStateStore, I as RuntimeInstanceRegistry, N as NCB_PROVIDE } from "./dynamic-table-action-JSevwsex.js";
3
- import { S as SubTableCoreFactory, R as RuntimeInstanceController } from "./sub-table-factory-BxG7QiiX.js";
4
- import { _ as _sfc_main$1 } from "./index-bfXiwTE7.js";
2
+ import { U as RuntimeFormStateStore, W as RuntimeInstanceRegistry, N as NCB_PROVIDE } from "./dynamic-table-action-Dhx1ZQSa.js";
3
+ import { S as SubTableCoreFactory, R as RuntimeInstanceController } from "./sub-table-factory-_mm1iwau.js";
4
+ import { _ as _sfc_main$1 } from "./index-D1bE-oJR.js";
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
6
6
  __name: "print-snapshot-renderer",
7
7
  props: {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, computed, watch, openBlock, createElementBlock, normalizeClass, createElementVNode } from "vue";
2
- import { B as BwipCodeTypeOptions, l as loadBwip } from "./index-bfXiwTE7.js";
2
+ import { B as BwipCodeTypeOptions, l as loadBwip } from "./index-D1bE-oJR.js";
3
3
  const _hoisted_1 = ["src"];
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "qrcode-design",
@@ -1,4 +1,4 @@
1
- import { dk as registerInstance, dl as createEvent, dm as getColumnByProp, dn as timeout, dp as getVisibleSourceItem, dq as getColumns, dr as rowTypes, ds as GroupingRowPlugin, dt as StretchColumn, du as isStretchPlugin, dv as AutoSizeColumnPlugin, dw as FilterPlugin, dx as ExportFilePlugin, dy as SortingPlugin, dz as ColumnMovePlugin, dA as ThemeService, dB as h, dC as Host, dD as getElement, dE as BasePlugin, dF as reduce, dG as columnTypes, dH as debounce, dI as RESIZE_INTERVAL, dJ as DimensionStore, dK as gatherTrimmedItems, dL as getColumnSizes, dM as getItemByIndex, dN as DataStore, dO as getSourceItem, dP as getSourceItemVirtualIndexByProp, dQ as getColumnType, dR as setSourceByPhysicalIndex, dS as setSourceByVirtualIndex, dT as SelectionStore, dU as cropCellToMax, dV as nextCell, dW as isRowType, dX as ViewportStore } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
1
+ import { d2 as registerInstance, d3 as createEvent, d4 as getColumnByProp, d5 as timeout, d6 as getVisibleSourceItem, d7 as getColumns, d8 as rowTypes, d9 as GroupingRowPlugin, da as StretchColumn, db as isStretchPlugin, dc as AutoSizeColumnPlugin, dd as FilterPlugin, de as ExportFilePlugin, df as SortingPlugin, dg as ColumnMovePlugin, dh as ThemeService, di as h, dj as Host, dk as getElement, dl as BasePlugin, dm as reduce, dn as columnTypes, dp as debounce, dq as RESIZE_INTERVAL, dr as DimensionStore, ds as gatherTrimmedItems, dt as getColumnSizes, du as getItemByIndex, dv as DataStore, dw as getSourceItem, dx as getSourceItemVirtualIndexByProp, dy as getColumnType, dz as setSourceByPhysicalIndex, dA as setSourceByVirtualIndex, dB as SelectionStore, dC as cropCellToMax, dD as nextCell, dE as isRowType, dF as ViewportStore } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
2
  import { H as HEADER_SLOT, D as DATA_SLOT, g as getScrollDimension, v as viewportDataPartition, F as FOOTER_SLOT, C as CONTENT_SLOT } from "./viewport.helpers-CoCAvmZs-D_JddDC6.js";
3
3
  import { g as getPropertyFromEvent } from "./events-BvSmBueA-VK7djXcC.js";
4
4
  class ColumnDataProvider {
@@ -1,8 +1,8 @@
1
- import { dk as registerInstance, dB as h, dC as Host, dl as createEvent, dO as getSourceItem, dD as getElement, e0 as ColumnService, e1 as MOBILE_CLASS, e2 as SELECTION_BORDER_CLASS, e3 as getCellData, e4 as getCellEditor, e5 as getRange, e6 as isRangeSingleCell, e7 as codesLetter, dX as ViewportStore, dN as DataStore, e8 as calculateRowHeaderSize, e9 as ROW_HEADER_TYPE, ea as getScrollbarSize, eb as FOCUS_CLASS, dM as getItemByIndex, dn as timeout, ec as CELL_HANDLER_CLASS, dH as debounce, ed as TMP_SELECTION_BG_CLASS, dI as RESIZE_INTERVAL, ee as getItemByPosition } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
1
+ import { d2 as registerInstance, di as h, dj as Host, d3 as createEvent, dw as getSourceItem, dk as getElement, dK as ColumnService, dL as MOBILE_CLASS, dM as SELECTION_BORDER_CLASS, dN as getCellData, dO as getCellEditor, dP as getRange, dQ as isRangeSingleCell, dR as codesLetter, dF as ViewportStore, dv as DataStore, dS as calculateRowHeaderSize, dT as ROW_HEADER_TYPE, dU as getScrollbarSize, dV as FOCUS_CLASS, du as getItemByIndex, d5 as timeout, dW as CELL_HANDLER_CLASS, dp as debounce, dX as TMP_SELECTION_BG_CLASS, dq as RESIZE_INTERVAL, dY as getItemByPosition } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
2
  import { v as verifyTouchTarget, g as getPropertyFromEvent } from "./events-BvSmBueA-VK7djXcC.js";
3
- import { i as isEditInput, a as isShortcutModifier, b as isClear, c as isTab, d as isEnterKeyValue, e as isCopy, f as isCut, g as isPaste, h as isAll } from "./edit.utils-CXmmCnxE-88-QvdIv.js";
3
+ import { i as isEditInput, a as isShortcutModifier, b as isClear, c as isTab, d as isEnterKeyValue, e as isCopy, f as isCut, g as isPaste, h as isAll } from "./edit.utils-CXmmCnxE-Cj0XviBc.js";
4
4
  import { H as HEADER_SLOT } from "./viewport.helpers-CoCAvmZs-D_JddDC6.js";
5
- import { L as LocalScrollTimer, a as LocalScrollService, g as getContentSize, t as throttle } from "./throttle-Cpk1LoGk-BI0wP2Le.js";
5
+ import { L as LocalScrollTimer, a as LocalScrollService, g as getContentSize, t as throttle } from "./throttle-Cpk1LoGk-HQvkISS4.js";
6
6
  const Attribution = class {
7
7
  constructor(hostRef) {
8
8
  registerInstance(this, hostRef);
@@ -1,5 +1,5 @@
1
- import { dn as timeout, dk as registerInstance, dl as createEvent, dB as h, ef as EDIT_INPUT_WR, dC as Host, dD as getElement, dH as debounce, ei as DRAGG_TEXT, dO as getSourceItem, ee as getItemByPosition } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
- import { d as isEnterKeyValue, c as isTab, j as isEditorCtrConstructible } from "./edit.utils-CXmmCnxE-88-QvdIv.js";
1
+ import { d5 as timeout, d2 as registerInstance, d3 as createEvent, di as h, dZ as EDIT_INPUT_WR, dj as Host, dk as getElement, dp as debounce, e0 as DRAGG_TEXT, dw as getSourceItem, dY as getItemByPosition } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
+ import { d as isEnterKeyValue, c as isTab, j as isEditorCtrConstructible } from "./edit.utils-CXmmCnxE-Cj0XviBc.js";
3
3
  class TextEditor {
4
4
  constructor(data, saveCallback) {
5
5
  this.data = data;
@@ -1,5 +1,5 @@
1
- import { ej as PSEUDO_GROUP_ITEM, ek as GROUP_EXPANDED, el as GROUP_DEPTH, dB as h, em as GROUP_EXPAND_BTN, en as DATA_ROW, dO as getSourceItem, eo as isGroupingColumn, ep as GROUP_COLUMN_PROP, eq as getCellRaw, er as DATA_COL, es as CELL_CLASS, et as Build, eu as isRowDragService, ev as DRAG_ICON_CLASS, ew as DRAGGABLE_CLASS, ex as getCellDataParsed, ey as GROUP_EXPAND_EVENT, dk as registerInstance, dl as createEvent, e0 as ColumnService, ez as isGrouping, dC as Host, dD as getElement, dM as getItemByIndex, eA as HEADER_ROW_CLASS, eB as HEADER_ACTUAL_ROW_CLASS, eC as ROW_FOCUSED_CLASS, eD as HEADER_SORTABLE_CLASS, eE as MIN_COL_SIZE, eb as FOCUS_CLASS, eF as FilterButton, eG as HeaderCellRenderer, eH as HEADER_CLASS } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
- import { L as LocalScrollTimer, a as LocalScrollService, g as getContentSize, t as throttle } from "./throttle-Cpk1LoGk-BI0wP2Le.js";
1
+ import { e1 as PSEUDO_GROUP_ITEM, e2 as GROUP_EXPANDED, e3 as GROUP_DEPTH, di as h, e4 as GROUP_EXPAND_BTN, e5 as DATA_ROW, dw as getSourceItem, e6 as isGroupingColumn, e7 as GROUP_COLUMN_PROP, e8 as getCellRaw, e9 as DATA_COL, ea as CELL_CLASS, eb as Build, ec as isRowDragService, ed as DRAG_ICON_CLASS, ee as DRAGGABLE_CLASS, ef as getCellDataParsed, eg as GROUP_EXPAND_EVENT, d2 as registerInstance, d3 as createEvent, dK as ColumnService, eh as isGrouping, dj as Host, dk as getElement, du as getItemByIndex, ei as HEADER_ROW_CLASS, ej as HEADER_ACTUAL_ROW_CLASS, ek as ROW_FOCUSED_CLASS, el as HEADER_SORTABLE_CLASS, em as MIN_COL_SIZE, dV as FOCUS_CLASS, en as FilterButton, eo as HeaderCellRenderer, ep as HEADER_CLASS } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
+ import { L as LocalScrollTimer, a as LocalScrollService, g as getContentSize, t as throttle } from "./throttle-Cpk1LoGk-HQvkISS4.js";
3
3
  import { H as HEADER_SLOT, C as CONTENT_SLOT, F as FOOTER_SLOT } from "./viewport.helpers-CoCAvmZs-D_JddDC6.js";
4
4
  const SortingSign = ({ column }) => {
5
5
  var _a;
@@ -1,4 +1,4 @@
1
- import { dk as registerInstance, dl as createEvent, dH as debounce, dB as h, dY as AndOrButton, dZ as ReorderButton, d_ as TrashButton, d$ as isFilterBtn, dC as Host, dD as getElement } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
1
+ import { d2 as registerInstance, d3 as createEvent, dp as debounce, di as h, dG as AndOrButton, dH as ReorderButton, dI as TrashButton, dJ as isFilterBtn, dj as Host, dk as getElement } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
2
  (function closest() {
3
3
  if (!Element.prototype.matches) {
4
4
  Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
@@ -0,0 +1,4 @@
1
+ import { f as _sfc_main } from "./index-D1bE-oJR.js";
2
+ export {
3
+ _sfc_main as default
4
+ };
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, openBlock, createElementBlock, createElementVNode, toDisplayString } from "vue";
2
- import { a8 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { a7 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  const _hoisted_1 = { class: "absolute top-0px left-0px h-full w-full serialnumber-area" };
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "serialnumber-design",
@@ -1,5 +1,5 @@
1
- import { aH, aB, q, cI, H, aI, aJ, cJ, at, av, F, X, af, G, aA, bn, cK, au, T, cL, V, W, bo, a9, U } from "../dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
- import { O, _, S, V as V2 } from "../online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-Ciue53Ue.js";
1
+ import { aE, ay, q, cq, H, aF, aG, cr, aq, as, F, V, ac, G, ax, bf, aY, cs, ar, T, ct, U, W, bg, a8, R } from "../dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
2
+ import { O, _, P, S, V as V2 } from "../online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DOYhOffQ.js";
3
3
  var Platform = /* @__PURE__ */ ((Platform2) => {
4
4
  Platform2["WEB"] = "web";
5
5
  Platform2["MOBILE"] = "mobile";
@@ -49,41 +49,43 @@ var GctMqttTopsEnum = /* @__PURE__ */ ((GctMqttTopsEnum2) => {
49
49
  return GctMqttTopsEnum2;
50
50
  })(GctMqttTopsEnum || {});
51
51
  export {
52
- aH as ASSIGNMENTSTRATEGY_ENUM,
53
- aB as BASIC_FIELD_TYPES,
52
+ aE as ASSIGNMENTSTRATEGY_ENUM,
53
+ ay as BASIC_FIELD_TYPES,
54
54
  q as BUSINESS_FIELD_TYPES,
55
55
  ButtonOpeEnum,
56
56
  ButtonSize,
57
57
  ButtonStyle,
58
58
  ButtonType,
59
59
  ButtonType_vant,
60
- cI as CardControlEnum,
60
+ cq as CardControlEnum,
61
61
  H as CreateType,
62
- aI as Dependency_ENUM,
63
- aJ as EntityModelCategoryEnum,
64
- cJ as EntityModelTypeEnum,
65
- at as ExpressionModeEnum,
66
- av as ExpressionTabEnum,
62
+ aF as Dependency_ENUM,
63
+ aG as EntityModelCategoryEnum,
64
+ cr as EntityModelTypeEnum,
65
+ aq as ExpressionModeEnum,
66
+ as as ExpressionTabEnum,
67
67
  F as FIELD_TYPE,
68
- X as FieldDefaultValueTypeEnum,
69
- af as FieldIconMap,
68
+ V as FieldDefaultValueTypeEnum,
69
+ ac as FieldIconMap,
70
70
  G as FieldTypeToJs,
71
- aA as FormDesignEnum,
72
- bn as FormulaRuleFieldKeyEnum,
71
+ ax as FormDesignEnum,
72
+ bf as FormulaRuleFieldKeyEnum,
73
73
  GctMqttTopsEnum,
74
74
  O as OnlineFormModelModal,
75
75
  _ as OnlineFormModelSelect,
76
76
  Platform,
77
- cK as RecordNoGenerateEnum,
78
- au as ReturnTypeEnum,
77
+ P as ProductTypeEnum,
78
+ aY as ProductionIdentificationTypeEnum,
79
+ cs as RecordNoGenerateEnum,
80
+ ar as ReturnTypeEnum,
79
81
  S as SEARCH_SEVICE,
80
82
  SignatureTypeEnum,
81
83
  T as TRACE_FIELD_TYPES,
82
- cL as TagTypeEnum,
83
- V as UniqueConstraintType,
84
+ ct as TagTypeEnum,
85
+ U as UniqueConstraintType,
84
86
  V2 as VersionSelect,
85
87
  W as WAREHOUSE_FIELD_TYPES,
86
- bo as formulaRuleFieldDict,
87
- a9 as normalizeFieldType,
88
- U as onlineFormMasterModelTypeEnum
88
+ bg as formulaRuleFieldDict,
89
+ a8 as normalizeFieldType,
90
+ R as onlineFormMasterModelTypeEnum
89
91
  };
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, computed, openBlock, createBlock, unref, normalizeClass } from "vue";
2
2
  import { a as useNamespace } from "./AntdIcon-DCIaV352.js";
3
- import { m as useDrop, T as TransferType, h as useModelFields, o as getFieldIcon, S as SingleDrop } from "./index-bfXiwTE7.js";
4
- import { a8 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
3
+ import { m as useDrop, T as TransferType, h as useModelFields, o as getFieldIcon, S as SingleDrop } from "./index-D1bE-oJR.js";
4
+ import { a7 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
6
6
  __name: "single-field-drop",
7
7
  props: {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, computed, resolveComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, createVNode } from "vue";
2
- import { a8 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-ClcBVLO0.js";
2
+ import { a7 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-vRTNdchM.js";
3
3
  const _hoisted_1 = { class: "row" };
4
4
  const _hoisted_2 = { class: "row mt-6px" };
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -0,0 +1,2 @@
1
+ import { BusinessFieldProfile } from '../../../../types';
2
+ export declare const fields: BusinessFieldProfile[];
@@ -51,7 +51,7 @@ export declare const CLEAR_ON_MATERIAL_CONTAINER_SELECT: readonly ["production_c
51
51
  export declare const CLEAR_ON_PRODUCT_EMPTY: readonly ["product_id_name_", "product_id_code_", "product_id_spec_"];
52
52
  /** 相关字段变更时需重算物料禁用态 */
53
53
  export declare const PRODUCT_EDITABILITY_WATCH: readonly ["material_container_no_", "material_container_no__id_", "mfg_order_id_", "production_container_id_"];
54
- /** 生产批次 / 物料批 选项回填 */
54
+ /** 生产批次 / 物料批选项回填:仅带出工单号,工单选择项保持互斥 */
55
55
  export declare const FILL_FROM_CONTAINER_OPTION: readonly [{
56
56
  readonly optionField: "product_id_";
57
57
  readonly toField: "product_id_";
@@ -64,9 +64,6 @@ export declare const FILL_FROM_CONTAINER_OPTION: readonly [{
64
64
  }, {
65
65
  readonly optionField: "product_id_spec_";
66
66
  readonly toField: "product_id_spec_";
67
- }, {
68
- readonly optionField: "mfg_order_id_";
69
- readonly toField: "mfg_order_id_";
70
67
  }, {
71
68
  readonly optionField: "mfg_order_code_";
72
69
  readonly toField: "mfg_order_code_";
@@ -127,9 +124,6 @@ export declare const fillFromOption: readonly [{
127
124
  }, {
128
125
  readonly optionField: "product_id_spec_";
129
126
  readonly toField: "product_id_spec_";
130
- }, {
131
- readonly optionField: "mfg_order_id_";
132
- readonly toField: "mfg_order_id_";
133
127
  }, {
134
128
  readonly optionField: "mfg_order_code_";
135
129
  readonly toField: "mfg_order_code_";
@@ -0,0 +1,2 @@
1
+ import { BusinessFieldProfile } from '../../../../types';
2
+ export declare const fields: BusinessFieldProfile[];
@@ -5,13 +5,14 @@ import { ScanModalInput } from './utils/scan';
5
5
  * 库存调拨表 Core
6
6
  * - Profile:禁用字段 / 行默认值 / 物料清空
7
7
  * - 物料走库存选择(allocateProduct)+ FILL_FROM_INVENTORY_OPTION
8
- * - 扫码:库存匹配,连续扫码每次新增一行
8
+ * - 扫码:库存匹配,优先填充物料和批次均为空的行,否则新增一行
9
9
  */
10
10
  export declare class AllocateTableCore extends ProfileDrivenSubTableCore {
11
11
  /** 绘制UI相关工具 */
12
12
  get render(): import('../..').ISubTableRender;
13
13
  /** 指定的仓库id */
14
14
  get warehouseId(): any;
15
+ protected isEmptyScanRow(row: Record<string, unknown>): boolean;
15
16
  handleFieldTd: SubTableCore['handleFieldTd'];
16
17
  calcFieldQuery: SubTableCore['calcFieldQuery'];
17
18
  calcSubTableActionMenu: SubTableCore['calcSubTableActionMenu'];
@@ -3,6 +3,7 @@ import { SubTableActionEnum } from '../../components/document-sub-table-action';
3
3
  import { IDefaultValueMap, IFieldStatus, IRuntimeSubTableCtx } from '../types';
4
4
  import { TdHandler } from '../utils/td-handler';
5
5
  import { SubTableCoreFactory } from '../factory/sub-table-factory';
6
+ import { ScanRecordPickerOptions } from '../../types/render/sub-table-render';
6
7
  import { FormModelController } from '../../hooks/form-model';
7
8
  import { RefCustomLoader } from '../../interface/ref-loader';
8
9
  /**
@@ -187,7 +188,7 @@ export declare class SubTableCore {
187
188
  /**
188
189
  * 扫码多条候选时选择一行(1 条自动选中)
189
190
  */
190
- protected pickScanRecord(records: Record<string, unknown>[]): Promise<Record<string, unknown> | undefined>;
191
+ protected pickScanRecord(records: Record<string, unknown>[], options?: ScanRecordPickerOptions): Promise<Record<string, unknown> | undefined>;
191
192
  /**
192
193
  * 处理扫码弹窗回调
193
194
  * 参数由扫码弹窗决定
@@ -53,6 +53,8 @@ export declare class FormModelController {
53
53
  isPresetField(field: FieldMetaDTO): boolean;
54
54
  /** 是否是系统字段 */
55
55
  isSystemField(field: FieldMetaDTO): boolean;
56
+ /** 是否是对象字段类型 */
57
+ isObjectField(field: FieldMetaDTO): boolean;
56
58
  /**
57
59
  * 获取主模型里子表字段对应的子模型key
58
60
  *
@@ -52,6 +52,7 @@ export declare class MaterialConsumeTableController {
52
52
  get materialNoNum(): any;
53
53
  /** 物料消耗模式(自身没有配置的话取环境的默认值) */
54
54
  get mcPattern(): MaterialConsumptionPatternEnum;
55
+ get hasFormInstance(): boolean;
55
56
  /**
56
57
  * 解析规则数据对象
57
58
  */