@gct-paas/excel 0.1.33-beta.1 → 0.1.33

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 (164) hide show
  1. package/dist/{BaseComponent-CAe1GFCG.js → BaseComponent-QH47BZYH.js} +1 -1
  2. package/dist/{VueVideoPlayer-BR4RbIhY.js → VueVideoPlayer-uu8pHm89.js} +2 -2
  3. package/dist/{align-editor-jvwZmJhi.js → align-editor-Bk5NBwxp.js} +1 -1
  4. package/dist/{barcode-design-D-RUtBUQ.js → barcode-design-DiIS1gNc.js} +2 -2
  5. package/dist/base/index.es.js +338 -594
  6. package/dist/{diagonal-design-D0-8xfY9.js → diagonal-design-Dlq2NlNE.js} +2 -2
  7. package/dist/{dynamic-table-action-CuwejY0h.js → dynamic-table-action-D-axSJVP.js} +62 -257
  8. package/dist/{dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-CFFrNEYh.js → dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-DhvnFfly.js} +4602 -6472
  9. package/dist/{edit.utils-CXmmCnxE-DsHacnTy.js → edit.utils-CXmmCnxE-DBJfGya8.js} +1 -1
  10. package/dist/excel.css +1140 -2071
  11. package/dist/{exceljs.min-Cq93OYx0.js → exceljs.min-CqMyKpM3.js} +2 -2
  12. package/dist/{font-editor-STIcKQS9.js → font-editor-YZwEiqSS.js} +3 -3
  13. package/dist/{image-design-BE0reQ2L.js → image-design-DnAdcfkb.js} +2 -2
  14. package/dist/{index-DwQuEur6.js → index-B0n76qw3.js} +2 -2
  15. package/dist/{index-D1qAQzmB.js → index-BBMWNymr.js} +2 -2
  16. package/dist/{index-BHKYBIU4.js → index-BCm5uXm-.js} +1 -1
  17. package/dist/{index-TfrN14XT.js → index-BRlNzGtZ.js} +2 -2
  18. package/dist/{index-B_Vz06n5.js → index-BZLUBq9c.js} +2 -2
  19. package/dist/{index-D5ZIZcxA.js → index-BerwVhz-.js} +2 -2
  20. package/dist/{index-BR8jTu0U.js → index-BoGQt_z8.js} +24 -13
  21. package/dist/{index-GZPHkfRf.js → index-BoIfj26G.js} +2 -2
  22. package/dist/{index-BDEROc8n.js → index-BpiiOmU7.js} +2 -2
  23. package/dist/{index-ByFo5Dnd.js → index-BsINOoan.js} +2 -2
  24. package/dist/{index-Gqpg9XkM.js → index-BzLs7VMv.js} +2 -2
  25. package/dist/{index-DogAqNJV.js → index-C-kqDeYD.js} +2 -2
  26. package/dist/{index-BzYqBsXt.js → index-C3OVB8dF.js} +3 -6
  27. package/dist/{index-CxOH8cdl.js → index-C6yP97M1.js} +1 -1
  28. package/dist/{index-vCGSByW_.js → index-CUqEO4di.js} +2 -2
  29. package/dist/{index-B8UxP4I8.js → index-CkNER_VJ.js} +2 -2
  30. package/dist/{index-OQIgIej5.js → index-DIPExK1-.js} +1 -1
  31. package/dist/{index-D5aim6xd.js → index-DK3WaVk5.js} +1 -1
  32. package/dist/{index-CrlUK3mJ.js → index-DM5va-M0.js} +3 -3
  33. package/dist/{index-C1qPKXtI.js → index-DOe_vbNZ.js} +2 -2
  34. package/dist/{index-CZ_rns9z.js → index-DSxQW0Eu.js} +3 -3
  35. package/dist/{index-uyTvicTO.js → index-DZZB4Wki.js} +1 -1
  36. package/dist/{index-wGLH0bRh.js → index-Dnv99kDV.js} +1 -1
  37. package/dist/{index-DvbyBcoW.js → index-G4AQrMgx.js} +3 -3
  38. package/dist/{index-CsE9ftfx.js → index-JBw-iMqr.js} +3 -9
  39. package/dist/{index-CzZMgyTs.js → index-K2KtldGf.js} +1 -1
  40. package/dist/{index-CZjv5O4w.js → index-SmWabE6L.js} +2 -2
  41. package/dist/{index-Dl5qzD_4.js → index-UuC3K_km.js} +2 -2
  42. package/dist/{index-7fOfFIWA.js → index-VX-I525j.js} +1 -1
  43. package/dist/{index-DcN-7DVw.js → index-WWP_bNEW.js} +30998 -32321
  44. package/dist/{index-D9JmIbUb.js → index-YHJMTfT6.js} +1 -1
  45. package/dist/{index-CTtq3ytv.js → index-jcNuZQe-.js} +2 -2
  46. package/dist/{index-Boh-6KTf.js → index-vqXiNAFc.js} +3 -3
  47. package/dist/{index-CaAA6yTk.js → index-yioAk3Lm.js} +2 -2
  48. package/dist/index.es.js +2 -2
  49. package/dist/{mb-render-CtCYbeiE.js → mb-render-BWsK2uaj.js} +1 -1
  50. package/dist/{online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DhcW_QTf.js → online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-D0gNSgDm.js} +8 -1
  51. package/dist/{pagination-design-Dww0Y1-3.js → pagination-design-Bxtn0Tcj.js} +2 -2
  52. package/dist/paper-widget-design-DjqAUl3n.js +4 -0
  53. package/dist/{qrcode-design-D0aSeR4l.js → qrcode-design-C_Ps-Wb2.js} +1 -1
  54. package/dist/{revo-grid.entry-DI2rNob_.js → revo-grid.entry-C8HVGuwE.js} +1 -1
  55. package/dist/{revogr-attribution_7.entry-CBbD7d-g.js → revogr-attribution_7.entry-C57R5N9H.js} +3 -3
  56. package/dist/{revogr-clipboard_3.entry-CLAxZ5jH.js → revogr-clipboard_3.entry-C-t0bHXx.js} +2 -2
  57. package/dist/{revogr-data_4.entry-7VW0g6vl.js → revogr-data_4.entry-xIPTVLfC.js} +2 -2
  58. package/dist/{revogr-filter-panel.entry-DGHVS3a2.js → revogr-filter-panel.entry-ByM_cVBE.js} +1 -1
  59. package/dist/{serialnumber-design-D37xioAJ.js → serialnumber-design-nwsYg88n.js} +1 -1
  60. package/dist/shared/index.es.js +25 -31
  61. package/dist/{single-field-drop-D5eogcuY.js → single-field-drop-DmFtvydW.js} +2 -2
  62. package/dist/{size-editor-_oGc1_8M.js → size-editor-Bl32fjTp.js} +1 -1
  63. package/dist/src/assets/svgs/table/index.d.ts +0 -1
  64. package/dist/src/domain/table/design/create-subtable.d.ts +1 -1
  65. package/dist/src/domain/table/design/hooks/on-field-attach.d.ts +1 -1
  66. package/dist/src/domain/table/design/index.d.ts +1 -1
  67. package/dist/src/domain/table/design/sub-model-matcher.d.ts +0 -1
  68. package/dist/src/domain/table/index.d.ts +2 -3
  69. package/dist/src/domain/table/registry.d.ts +0 -1
  70. package/dist/src/domain/table/types.d.ts +3 -8
  71. package/dist/src/nocode-base/src/constant/index.d.ts +1 -17
  72. package/dist/src/nocode-base/src/core/sub-table/profile-driven-sub-table-core.d.ts +0 -22
  73. package/dist/src/nocode-base/src/hooks/index.d.ts +1 -2
  74. package/dist/src/nocode-base/src/hooks/material-consume/bom-validator.d.ts +2 -10
  75. package/dist/src/nocode-base/src/hooks/material-consume/material-consume-table-controller.d.ts +0 -5
  76. package/dist/src/nocode-base/src/hooks/useValidator.d.ts +2 -2
  77. package/dist/src/nocode-base/src/hooks/validation/runValidation.d.ts +0 -2
  78. package/dist/src/nocode-base/src/hooks/validation/useFormValidator.d.ts +0 -4
  79. package/dist/src/nocode-base/src/interface/ref.d.ts +2 -2
  80. package/dist/src/nocode-base/src/types/business/index.d.ts +1 -8
  81. package/dist/src/nocode-base/src/types/common/base.d.ts +1 -53
  82. package/dist/src/nocode-base/src/types/fields/i-select.d.ts +2 -0
  83. package/dist/src/nocode-base/src/types/fields/i-sign.d.ts +1 -5
  84. package/dist/src/nocode-base/src/types/fields/i-trace.d.ts +2 -0
  85. package/dist/src/nocode-base/src/types/index.d.ts +1 -1
  86. package/dist/src/nocode-base/src/types/widgets/i-paper.d.ts +1 -3
  87. package/dist/src/online-form/src/components/version-diff/index/types.d.ts +1 -5
  88. package/dist/src/online-form/src/views/__cell_widgets__/common/display-fields-editor/display-fields.util.d.ts +4 -4
  89. package/dist/src/online-form/src/views/designer/constants/index.d.ts +0 -1
  90. package/dist/src/online-form/src/views/designer/enums/index.d.ts +1 -2
  91. package/dist/src/online-form/src/views/designer/hooks/useAllSpreadSheets.d.ts +0 -48
  92. package/dist/src/online-form/src/views/designer/hooks/useSpreadSheet.d.ts +0 -63
  93. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/panel-rule-config.vue.d.ts +1 -18
  94. package/dist/src/online-form/src/views/designer/modules/panel/sub-table/comps/use-dynamic-sub-table-panel.d.ts +0 -30
  95. package/dist/src/online-form/src/views/designer/types/index.d.ts +2 -4
  96. package/dist/src/online-form/src/views/designer/utils/xlsx-parser.d.ts +0 -3
  97. package/dist/src/online-form/src/views/render/__components__/_field_/_base_/trace-like-wrapper.d.ts +1 -0
  98. package/dist/src/shared/components/Signature/card-signer.vue.d.ts +2 -2
  99. package/dist/src/shared/components/Signature/index.d.ts +2 -1
  100. package/dist/src/shared/components/Signature/logic/index.d.ts +23 -8
  101. package/dist/src/shared/components/Signature/types/index.d.ts +1 -4
  102. package/dist/src/shared/components/Signature/ui/password-signer.vue.d.ts +0 -2
  103. package/dist/src/shared/components/Signature/ui/sign-editor.vue.d.ts +29 -0
  104. package/dist/src/shared/components/Signature/ui/sign-popover-content.vue.d.ts +2 -6
  105. package/dist/src/shared/components/Signature/ui/sign-preview.vue.d.ts +18 -0
  106. package/dist/src/shared/components/Signature/ui/sign-switcher-modal.vue.d.ts +116 -0
  107. package/dist/src/shared/components/Signature/ui/sign-switcher.vue.d.ts +1 -3
  108. package/dist/src/shared/enum/field-type.d.ts +0 -5
  109. package/dist/src/shared/enum/online-form.d.ts +1 -7
  110. package/dist/{text-design-CHoQtOBi.js → text-design-Cl9vHbq5.js} +2 -2
  111. package/dist/{throttle-Cpk1LoGk-CEvaM6uf.js → throttle-Cpk1LoGk-CRmC7Dda.js} +1 -1
  112. package/dist/{timediff-design-BxItKsBW.js → timediff-design-CRhHuuBP.js} +1 -1
  113. package/dist/{trace-like-wrapper-BNwwljhN.js → trace-like-wrapper-De2qx1IG.js} +19 -9
  114. package/dist/{value-editor.vue_vue_type_style_index_0_lang-WwOnevs0.js → value-editor.vue_vue_type_style_index_0_lang-DqROGWNL.js} +2 -2
  115. package/dist/web-render/index.es.js +3 -3
  116. package/dist/{widget-barcode-CmzvEEWx.js → widget-barcode-DgC3sCzk.js} +4 -4
  117. package/dist/{widget-diagonal-B6Mvq_Ck.js → widget-diagonal-vIXLuLtX.js} +3 -3
  118. package/dist/{widget-image-DPd6ZI2K.js → widget-image-BzIWHWyi.js} +5 -5
  119. package/dist/{widget-line-BRgNGqLk.js → widget-line-LJwGVJug.js} +2 -2
  120. package/dist/{widget-pagination-Dn3BpM0I.js → widget-pagination-ri_4BLdH.js} +5 -5
  121. package/dist/{widget-power-C6BzkxLE.js → widget-power-DwS4V4oM.js} +3 -3
  122. package/dist/{widget-qrcode-_Fe3bqQy.js → widget-qrcode-BDwZdgpF.js} +3 -3
  123. package/dist/{widget-rangelimit-Dlt83D9J.js → widget-rangelimit-BAzKSvjH.js} +3 -3
  124. package/dist/{widget-serialnumber-VA2ngpH9.js → widget-serialnumber-IxaRP9FK.js} +1 -1
  125. package/dist/{widget-text-CiwYrzt_.js → widget-text-BASemodd.js} +5 -5
  126. package/dist/{widget-timediff-Ch3L6a1S.js → widget-timediff-BcxQF4ra.js} +2 -2
  127. package/package.json +1 -1
  128. package/dist/paper-widget-design-D_mxf4dD.js +0 -4
  129. package/dist/src/domain/field/text/udi-manifest.d.ts +0 -2
  130. package/dist/src/domain/table/business/device/maintenance/index.d.ts +0 -1
  131. package/dist/src/domain/table/business/device/maintenance/profile/field-keys.d.ts +0 -9
  132. package/dist/src/domain/table/business/device/maintenance/profile/fields.d.ts +0 -2
  133. package/dist/src/domain/table/business/device/maintenance/profile/index.d.ts +0 -3
  134. package/dist/src/domain/table/business/device/point-inspection/index.d.ts +0 -1
  135. package/dist/src/domain/table/business/device/point-inspection/profile/field-keys.d.ts +0 -9
  136. package/dist/src/domain/table/business/device/point-inspection/profile/fields.d.ts +0 -2
  137. package/dist/src/domain/table/business/device/point-inspection/profile/index.d.ts +0 -3
  138. package/dist/src/domain/table/business/device/signature-lock.d.ts +0 -9
  139. package/dist/src/domain/table/business/material/material-substitution/index.d.ts +0 -2
  140. package/dist/src/domain/table/business/material/material-substitution/profile/field-keys.d.ts +0 -75
  141. package/dist/src/domain/table/business/material/material-substitution/profile/fields.d.ts +0 -2
  142. package/dist/src/domain/table/business/material/material-substitution/profile/index.d.ts +0 -4
  143. package/dist/src/domain/table/business/material/material-substitution/runtime/register-handlers.d.ts +0 -1
  144. package/dist/src/domain/table/business/material/material-substitution/runtime/row-change-handlers.d.ts +0 -6
  145. package/dist/src/nocode-base/src/components/inspection-decision-prompt-modal.vue.d.ts +0 -7
  146. package/dist/src/nocode-base/src/hooks/inspection-decision-rule/evaluator.d.ts +0 -11
  147. package/dist/src/nocode-base/src/hooks/udi.d.ts +0 -5
  148. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/decision-rule-condition.vue.d.ts +0 -19
  149. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/decision-rule-group.vue.d.ts +0 -16
  150. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/decision-rule.d.ts +0 -54
  151. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/field-tree-node.vue.d.ts +0 -24
  152. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/field-tree-select.vue.d.ts +0 -30
  153. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/field-tree-utils.d.ts +0 -12
  154. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/inspection-decision-modal.vue.d.ts +0 -9
  155. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/gct-button.vue.d.ts +0 -33
  156. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/gct-icon.vue.d.ts +0 -12
  157. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/gct-input.vue.d.ts +0 -23
  158. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/gct-modal.vue.d.ts +0 -36
  159. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/gct-scrollbar.vue.d.ts +0 -21
  160. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/gct-select.vue.d.ts +0 -30
  161. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/gct-switch.vue.d.ts +0 -17
  162. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/gct-text-area.vue.d.ts +0 -20
  163. package/dist/src/online-form/src/views/designer/modules/panel/panel-rule-config/word-ui/index.d.ts +0 -8
  164. package/dist/src/online-form/src/views/render/__components__/_field_/sign/component/sign-validation.d.ts +0 -13
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, computed, openBlock, createBlock } from "vue";
2
- import { d as useModelFields, D as Diagonal } from "./index-DcN-7DVw.js";
3
- import { al as resolveDiagonalVertex, a7 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-CFFrNEYh.js";
2
+ import { d as useModelFields, D as Diagonal } from "./index-WWP_bNEW.js";
3
+ import { ah as resolveDiagonalVertex, a4 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-DhvnFfly.js";
4
4
  import "lodash-es";
5
5
  import "dayjs";
6
6
  import "ant-design-vue";
@@ -1,10 +1,10 @@
1
1
  import { computed, watch, toRaw, onUnmounted, markRaw, ref, inject, unref, provide, nextTick, reactive, defineComponent, openBlock, createElementBlock, mergeProps, createElementVNode, normalizeClass, renderSlot, createCommentVNode, createVNode, toDisplayString, toRef, isVNode, h, onMounted, onBeforeMount, resolveComponent, createBlock, withCtx, Fragment, renderList, createTextVNode } from "vue";
2
- import { C as ComponentTypeEnum, aT as useWidgetStaticAttrs, _ as PlatformEnum, dk as assembleRules, dl as deleteFormRule, dm as setFormRule, cc as requestDisplayValidation, dn as isReferenceOptionActive, dp as validateAllFields, dq as runValidation, dr as ensureFrontRowKey, ds as FRONT_ROW_KEY, cq as getRowId, b5 as getParseRuleInfo, bf as transformUtils, b0 as materialCheck, b1 as getLotLockedReason, b2 as validateReinspectionDate, bn as FormulaRuleFieldKeyEnum, a_ as NCB_PROVIDE, F as FIELD_TYPE, dt as buildError, A as api, m as SubTableType, du as isPersistedSignatureLockActive, dv as isSignatureLockActive, b6 as getParseRuleValue, ck as uuid2, aL as DeviceLink, a7 as _export_sfc, cK as buildFormChangeDisplayRows, dg as resolveRowFormChangeMark, df as resolveFormChangeRowUi, d1 as isAnnLocationSelected, dh as setSelectMobileTdId, d2 as isFormChangeGhostRow, y as CellType, aV as setSelectAnnotationId, da as recordSubtableRowDelete, cM as deleteSubtableRow, db as relocateDeletedRowsToEnd, d0 as insertSubtableRows, d9 as recordSubtableRowAdd, H as useModal, dw as q, dx as groupFixedTableRows, dy as QUICK_FILL_ALLOWED_FIELDS, dz as processQuickFillRows, dA as getIsGroupEmpty, bl as RenderModeEnum, cX as getSubTableQuickFillInfo } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-CFFrNEYh.js";
2
+ import { C as ComponentTypeEnum, aP as useWidgetStaticAttrs, Z as PlatformEnum, d9 as assembleRules, da as deleteFormRule, db as setFormRule, c2 as requestDisplayValidation, dc as isReferenceOptionActive, dd as validateAllFields, de as runValidation, df as ensureFrontRowKey, dg as FRONT_ROW_KEY, cf as getRowId, b1 as getParseRuleInfo, bb as transformUtils, aY as materialCheck, aZ as getLotLockedReason, a_ as validateReinspectionDate, bh as FormulaRuleFieldKeyEnum, aW as NCB_PROVIDE, F as FIELD_TYPE, dh as buildError, z as api, l as SubTableType, b2 as getParseRuleValue, c9 as uuid2, aH as DeviceLink, a4 as _export_sfc, cz as buildFormChangeDisplayRows, d5 as resolveRowFormChangeMark, d4 as resolveFormChangeRowUi, cS as isAnnLocationSelected, d6 as setSelectMobileTdId, cT as isFormChangeGhostRow, x as CellType, aR as setSelectAnnotationId, c$ as recordSubtableRowDelete, cB as deleteSubtableRow, d0 as relocateDeletedRowsToEnd, cR as insertSubtableRows, c_ as recordSubtableRowAdd, G as useModal, di as q, dj as groupFixedTableRows, dk as QUICK_FILL_ALLOWED_FIELDS, dl as processQuickFillRows, dm as getIsGroupEmpty, bf as RenderModeEnum, cM as getSubTableQuickFillInfo } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-DhvnFfly.js";
3
3
  import { isNil, cloneDeep, merge, pickBy, mergeWith, omit, last, pick } from "lodash-es";
4
4
  import dayjs from "dayjs";
5
5
  import { u as useNamespace } from "./use-namespace-BxkK4ofX.js";
6
6
  import { Modal, message } from "ant-design-vue";
7
- import { u as useFormModel } from "./mb-render-CtCYbeiE.js";
7
+ import { u as useFormModel } from "./mb-render-BWsK2uaj.js";
8
8
  const InstanceStatusValues = {
9
9
  /** 作废状态 */
10
10
  ABANDON: "ABANDON",
@@ -365,14 +365,13 @@ class McRowValidateError extends Error {
365
365
  row;
366
366
  }
367
367
  class BomEntryValidator {
368
- constructor(bomEntry, enableSequenceLoading, getMaterialNoNum, historyData, mainMaterialNo, noBomMode, isCustomRequiredQty = false) {
368
+ constructor(bomEntry, enableSequenceLoading, getMaterialNoNum, historyData, mainMaterialNo, noBomMode) {
369
369
  this.bomEntry = bomEntry;
370
370
  this.enableSequenceLoading = enableSequenceLoading;
371
371
  this.getMaterialNoNum = getMaterialNoNum;
372
372
  this.historyData = historyData;
373
373
  this.mainMaterialNo = mainMaterialNo;
374
374
  this.noBomMode = noBomMode;
375
- this.isCustomRequiredQty = isCustomRequiredQty;
376
375
  this.productIds.push(this.bomEntry.product_id_);
377
376
  this.productCodes[this.bomEntry.product_id_] = this.bomEntry.product_code_;
378
377
  if (this.bomEntry.substitute_material_enabled_ && this.bomEntry.substitute_material_entries_) {
@@ -389,7 +388,6 @@ class BomEntryValidator {
389
388
  historyData;
390
389
  mainMaterialNo;
391
390
  noBomMode;
392
- isCustomRequiredQty;
393
391
  /** 该明细使用到的产品的id集合 */
394
392
  productIds = [];
395
393
  /** 物料和code的映射 */
@@ -422,7 +420,7 @@ class BomEntryValidator {
422
420
  * @return {*}
423
421
  */
424
422
  filterGroupData(arr) {
425
- return arr.filter((i) => this.isRowInGroup(i) && i.product_id_);
423
+ return arr.filter((i) => this.productIds.includes(i.product_id_));
426
424
  }
427
425
  /** 行是否属于本 BOM 组(优先 bom_entry_id_,避免跨组 product_id_ 误判) */
428
426
  isRowInGroup(row) {
@@ -605,18 +603,8 @@ class BomEntryValidator {
605
603
  if (!entry.qty_validation_enabled_ || entry.type_ === "view") {
606
604
  return;
607
605
  }
608
- const groupData = this.filterGroupData(arr);
609
606
  const loaded = this.calcQtyConsumed(arr);
610
- let required = this.remainingNum;
611
- if (this.isCustomRequiredQty) {
612
- const currentQty = groupData[0]?.qty_required_;
613
- if (typeof currentQty !== "number" || !Number.isFinite(currentQty) || currentQty <= 0) {
614
- throw new Error(
615
- groupNo != null && groupNo > 0 ? `序号${groupNo},需求数量必须大于 0` : "需求数量必须大于 0"
616
- );
617
- }
618
- required = currentQty - this.hasConsumed;
619
- }
607
+ const required = this.remainingNum;
620
608
  const diff = loaded - required;
621
609
  const rule = entry.qty_validation_rule_;
622
610
  const fail = (msg) => {
@@ -638,9 +626,9 @@ class BomEntryValidator {
638
626
  if (diff > 0) fail($t("sys.qtyValidationRule.lte"));
639
627
  break;
640
628
  case "bounds": {
641
- const groupData2 = this.filterGroupData(arr);
629
+ const groupData = this.filterGroupData(arr);
642
630
  const consumeSum = this.calcQtyForBounds(arr) + this.calcQtyForBounds(this.historyData);
643
- const { min, max } = await this.calcCustomNumberLimit(groupData2[0]);
631
+ const { min, max } = await this.calcCustomNumberLimit(groupData[0]);
644
632
  if (min !== void 0 && consumeSum < min || max !== void 0 && consumeSum > max) {
645
633
  fail($t("sys.qtyValidationRule.bounds", { min, max }));
646
634
  }
@@ -650,14 +638,13 @@ class BomEntryValidator {
650
638
  }
651
639
  }
652
640
  class BomEntriesValidator {
653
- constructor(entries, enableSequenceLoading, getMaterialNoNum, historyData, mainMaterialNo, noBomMode, isCustomRequiredQty = false) {
641
+ constructor(entries, enableSequenceLoading, getMaterialNoNum, historyData, mainMaterialNo, noBomMode) {
654
642
  this.entries = entries;
655
643
  this.enableSequenceLoading = enableSequenceLoading;
656
644
  this.getMaterialNoNum = getMaterialNoNum;
657
645
  this.historyData = historyData;
658
646
  this.mainMaterialNo = mainMaterialNo;
659
647
  this.noBomMode = noBomMode;
660
- this.isCustomRequiredQty = isCustomRequiredQty;
661
648
  this.bomEntryValidators = entries.map(
662
649
  (i) => new BomEntryValidator(
663
650
  i,
@@ -665,8 +652,7 @@ class BomEntriesValidator {
665
652
  getMaterialNoNum,
666
653
  historyData,
667
654
  mainMaterialNo,
668
- noBomMode,
669
- isCustomRequiredQty
655
+ noBomMode
670
656
  )
671
657
  );
672
658
  }
@@ -676,7 +662,6 @@ class BomEntriesValidator {
676
662
  historyData;
677
663
  mainMaterialNo;
678
664
  noBomMode;
679
- isCustomRequiredQty;
680
665
  bomEntryValidators;
681
666
  /**
682
667
  * 翻译物料的code
@@ -734,14 +719,11 @@ class BomEntriesValidator {
734
719
  * 行 → BOM 明细在 bomEntryValidators 中的下标,找不到返回 -1
735
720
  */
736
721
  resolveEntryIndex(row) {
737
- if (row.bom_entry_id_) {
738
- return this.bomEntryValidators.findIndex((v) => v.bomEntry.id_ === row.bom_entry_id_);
739
- }
740
722
  if (row.product_id_) {
741
723
  const i = this.bomEntryValidators.findIndex((v) => v.productIds.includes(row.product_id_));
742
724
  if (i >= 0) return i;
743
725
  }
744
- return -1;
726
+ return row.bom_entry_id_ ? this.bomEntryValidators.findIndex((v) => v.bomEntry.id_ === row.bom_entry_id_) : -1;
745
727
  }
746
728
  /**
747
729
  * 行所属组在序号列中的 groupOrderIndex(0-based;-1 未绑 BOM 组)
@@ -1137,7 +1119,6 @@ var ScanParamType = /* @__PURE__ */ ((ScanParamType2) => {
1137
1119
  var RequiredQtyCalcRule = /* @__PURE__ */ ((RequiredQtyCalcRule2) => {
1138
1120
  RequiredQtyCalcRule2["LotQty"] = "lotQty";
1139
1121
  RequiredQtyCalcRule2["ProductQty"] = "productQty";
1140
- RequiredQtyCalcRule2["Custom"] = "custom";
1141
1122
  return RequiredQtyCalcRule2;
1142
1123
  })(RequiredQtyCalcRule || {});
1143
1124
  async function applyScanFillPlan(arr, scanRow, plan, options) {
@@ -1510,8 +1491,7 @@ class MaterialConsumeTableController {
1510
1491
  () => this.materialNoNum,
1511
1492
  this.tmplBomController.historyData,
1512
1493
  this.tmplBomController.materialNo,
1513
- this.mcPattern === MaterialConsumptionPatternEnum.RECORD && !this.tmplBom.personal_bom_enabled_,
1514
- this.tmplBom.required_qty_calc_rule_ === RequiredQtyCalcRule.Custom
1494
+ this.mcPattern === MaterialConsumptionPatternEnum.RECORD && !this.tmplBom.personal_bom_enabled_
1515
1495
  );
1516
1496
  }
1517
1497
  tmplBomController;
@@ -1550,9 +1530,6 @@ class MaterialConsumeTableController {
1550
1530
  /** 批次数量或生产数量 */
1551
1531
  get materialNoNum() {
1552
1532
  const { required_qty_calc_rule_, product_qty_field_ } = this.tmplBom;
1553
- if (required_qty_calc_rule_ === RequiredQtyCalcRule.Custom) {
1554
- return void 0;
1555
- }
1556
1533
  if (required_qty_calc_rule_ === RequiredQtyCalcRule.ProductQty) {
1557
1534
  return product_qty_field_ ? this.mainFormState.value[product_qty_field_] : 0;
1558
1535
  }
@@ -1600,35 +1577,6 @@ class MaterialConsumeTableController {
1600
1577
  const deletedArr = this.tableDataRef.value.filter((i) => i.deleted_);
1601
1578
  this.tableDataRef.value = [...value, ...deletedArr];
1602
1579
  }
1603
- get isCustomRequiredQty() {
1604
- return this.tmplBom.required_qty_calc_rule_ === RequiredQtyCalcRule.Custom;
1605
- }
1606
- getBomGroupForRow(row) {
1607
- const validators = this.bomEntriesValidator.bomEntryValidators;
1608
- if (row.bom_entry_id_) {
1609
- return validators.find((util) => util.bomEntry.id_ === row.bom_entry_id_);
1610
- }
1611
- return row.product_id_ ? this.bomEntriesValidator.findUtilByProductId(row.product_id_) : void 0;
1612
- }
1613
- /** 自定义规则的需求数量在同一 BOM 组内保持一致。 */
1614
- getCustomGroupRequiredQty(row) {
1615
- const util = this.getBomGroupForRow(row);
1616
- if (!util) return row.qty_required_;
1617
- return this.actualTableData.find(
1618
- (item) => util.isRowInGroup(item) && item.qty_required_ != null
1619
- )?.qty_required_;
1620
- }
1621
- setCustomGroupRequiredQty(row, qty) {
1622
- if (!this.isCustomRequiredQty) return;
1623
- const util = this.getBomGroupForRow(row);
1624
- if (!util) {
1625
- row.qty_required_ = qty;
1626
- return;
1627
- }
1628
- this.actualTableData.forEach((item) => {
1629
- if (util.isRowInGroup(item)) item.qty_required_ = qty;
1630
- });
1631
- }
1632
1580
  /** 错误信息 */
1633
1581
  error(message2) {
1634
1582
  MaterialConsumeTableController.render.message({
@@ -1684,11 +1632,10 @@ class MaterialConsumeTableController {
1684
1632
  */
1685
1633
  calcFormState() {
1686
1634
  if (this.tmplBom.bom_init_enabled_) {
1687
- const materialNoNum = this.materialNoNum;
1688
1635
  return this.actualBomEntries.map((i) => {
1689
1636
  return {
1690
1637
  product_id_: i.product_id_,
1691
- ...materialNoNum === void 0 ? {} : { qty_required_: i.qty_required_ * materialNoNum },
1638
+ qty_required_: i.qty_required_ * this.materialNoNum,
1692
1639
  bom_entry_id_: i.id_
1693
1640
  };
1694
1641
  });
@@ -1728,7 +1675,7 @@ class MaterialConsumeTableController {
1728
1675
  "sort_num_",
1729
1676
  "qty_consumed_total_"
1730
1677
  ];
1731
- const isRecordPattern = this.mcPattern === MaterialConsumptionPatternEnum.RECORD && (!this.tmplBom.personal_bom_enabled_ || this.tmplBom.required_qty_calc_rule_ === RequiredQtyCalcRule.Custom);
1678
+ const isRecordPattern = this.mcPattern === MaterialConsumptionPatternEnum.RECORD && !this.tmplBom.personal_bom_enabled_;
1732
1679
  if (!isRecordPattern) {
1733
1680
  disabledKeys.push("qty_required_");
1734
1681
  }
@@ -1868,19 +1815,9 @@ class MaterialConsumeTableController {
1868
1815
  this.setDefaultValue(row);
1869
1816
  try {
1870
1817
  const plan = await this.bomEntriesValidator.validateScanCanInsert(row, this.actualTableData);
1871
- const existingRequiredQty = this.isCustomRequiredQty && plan ? this.actualTableData.find(
1872
- (item) => plan.target.isRowInGroup(item) && item.qty_required_ != null
1873
- )?.qty_required_ : void 0;
1874
- const nextTable = await applyScanFillPlan(this.actualTableData, row, plan, {
1818
+ this.tableDataRef.value = await applyScanFillPlan(this.actualTableData, row, plan, {
1875
1819
  validateCurrentGroupForSwitch: (table, current) => this.bomEntriesValidator.validateCurrentGroupForSwitch(table, current)
1876
1820
  });
1877
- if (this.isCustomRequiredQty && plan) {
1878
- const requiredQty = existingRequiredQty ?? row.qty_required_;
1879
- nextTable.forEach((item) => {
1880
- if (plan.target.isRowInGroup(item)) item.qty_required_ = requiredQty;
1881
- });
1882
- }
1883
- this.tableDataRef.value = nextTable;
1884
1821
  this.updateDerivedQtyFields();
1885
1822
  } catch (e) {
1886
1823
  console.error(e);
@@ -1969,7 +1906,6 @@ class MaterialConsumeTableController {
1969
1906
  * 按当前 materialNoNum 回写各行 qty_required_(校验侧 total 已通过 getter 实时读取)
1970
1907
  */
1971
1908
  syncQtyRequiredFromBom() {
1972
- if (this.tmplBom.required_qty_calc_rule_ === RequiredQtyCalcRule.Custom) return;
1973
1909
  this.actualTableData.forEach((row) => {
1974
1910
  if (!row.product_id_) return;
1975
1911
  const util = this.bomEntriesValidator.findUtilByProductId(row.product_id_);
@@ -2241,9 +2177,7 @@ class MaterialConsumeTableController {
2241
2177
  if (row.product_id_) {
2242
2178
  const util = this.bomEntriesValidator.findUtilByProductId(row.product_id_);
2243
2179
  if (util) {
2244
- if (this.tmplBom.required_qty_calc_rule_ !== RequiredQtyCalcRule.Custom) {
2245
- row.qty_required_ = util.total;
2246
- }
2180
+ row.qty_required_ = util.total;
2247
2181
  row.qty_consumed_ = util.hasConsumed;
2248
2182
  row.bom_entry_id_ = util.bomEntry.id_;
2249
2183
  }
@@ -2256,10 +2190,7 @@ class MaterialConsumeTableController {
2256
2190
  async handleChange(opts) {
2257
2191
  const { field, row, value, option } = opts;
2258
2192
  console.log("handleChange", opts);
2259
- if (field === "qty_required_" && this.isCustomRequiredQty) {
2260
- const qty = value == null || value === "" ? void 0 : Number(value);
2261
- this.setCustomGroupRequiredQty(row, qty);
2262
- } else if (field === "product_id_") {
2193
+ if (field === "product_id_") {
2263
2194
  if (row._scanFallback) {
2264
2195
  try {
2265
2196
  await validateReinspectionDate({
@@ -2273,8 +2204,6 @@ class MaterialConsumeTableController {
2273
2204
  }
2274
2205
  return;
2275
2206
  }
2276
- const oldGroupId = row.bom_entry_id_;
2277
- const oldRequiredQty = this.isCustomRequiredQty && oldGroupId ? this.getCustomGroupRequiredQty(row) : void 0;
2278
2207
  row.material_no_ = void 0;
2279
2208
  row.material_no__id_ = void 0;
2280
2209
  row.material_no__lb_ = void 0;
@@ -2283,10 +2212,6 @@ class MaterialConsumeTableController {
2283
2212
  row.expiration_date_ = void 0;
2284
2213
  this.setDefaultValue(row);
2285
2214
  this.updateDerivedQtyFields();
2286
- if (this.isCustomRequiredQty) {
2287
- const qty = oldGroupId && row.bom_entry_id_ === oldGroupId ? oldRequiredQty : this.getCustomGroupRequiredQty(row);
2288
- this.setCustomGroupRequiredQty(row, qty);
2289
- }
2290
2215
  } else if (field === "material_no_") {
2291
2216
  if (option?.is_locked_) {
2292
2217
  row.material_no_ = void 0;
@@ -2310,16 +2235,9 @@ class MaterialConsumeTableController {
2310
2235
  this.error(e.message);
2311
2236
  return;
2312
2237
  }
2313
- const oldGroupId = row.bom_entry_id_;
2314
- const oldRequiredQty = this.isCustomRequiredQty && oldGroupId ? this.getCustomGroupRequiredQty(row) : void 0;
2315
2238
  row.product_id_ = option.product_id_;
2316
2239
  row.expiration_date_ = option.validate_;
2317
- if (this.isCustomRequiredQty) row.qty_required_ = void 0;
2318
2240
  this.setDefaultValue(row);
2319
- if (this.isCustomRequiredQty) {
2320
- const qty = oldGroupId && row.bom_entry_id_ === oldGroupId ? oldRequiredQty : this.getCustomGroupRequiredQty(row);
2321
- this.setCustomGroupRequiredQty(row, qty);
2322
- }
2323
2241
  } else if (field === "qty_") {
2324
2242
  this.updateDerivedQtyFields();
2325
2243
  }
@@ -2593,11 +2511,11 @@ async function validateObjectBomQtyOnSubmit(opts) {
2593
2511
  }
2594
2512
  return errors;
2595
2513
  }
2596
- function isBlank$2(value) {
2514
+ function isBlank$1(value) {
2597
2515
  return value == null || value === "";
2598
2516
  }
2599
2517
  function pickPresent(preferred, fallback) {
2600
- return isBlank$2(preferred) ? fallback : preferred;
2518
+ return isBlank$1(preferred) ? fallback : preferred;
2601
2519
  }
2602
2520
  function resolveObjectFieldKeys(opts) {
2603
2521
  const obj = opts.objectFieldList?.find((item) => item.objectField === opts.belongingObject);
@@ -2617,7 +2535,7 @@ function resolveObjectFieldKeys(opts) {
2617
2535
  };
2618
2536
  }
2619
2537
  function buildObjectLotExtraQuery(productId) {
2620
- if (isBlank$2(productId)) return {};
2538
+ if (isBlank$1(productId)) return {};
2621
2539
  const versionId = String(productId).split(":").pop();
2622
2540
  if (!versionId) return {};
2623
2541
  return { "product_id_.versionEq": versionId };
@@ -2630,9 +2548,9 @@ function clearObjectLotFields(formData, materialNoKey) {
2630
2548
  }
2631
2549
  function shouldClearLotOnProductChange(opts) {
2632
2550
  const { prevProduct, nextProduct, lotValue } = opts;
2633
- if (isBlank$2(prevProduct) && isBlank$2(nextProduct)) return false;
2551
+ if (isBlank$1(prevProduct) && isBlank$1(nextProduct)) return false;
2634
2552
  if (prevProduct === nextProduct) return false;
2635
- if (isBlank$2(prevProduct) && !isBlank$2(nextProduct) && !isBlank$2(lotValue)) {
2553
+ if (isBlank$1(prevProduct) && !isBlank$1(nextProduct) && !isBlank$1(lotValue)) {
2636
2554
  return false;
2637
2555
  }
2638
2556
  return true;
@@ -2650,7 +2568,7 @@ function runWithFillProduct(fn) {
2650
2568
  }
2651
2569
  function fillProductFromLotOption(opts) {
2652
2570
  const productId = opts.option?.product_id_ ?? opts.option?._item?.product_id_;
2653
- if (!opts.productKey || isBlank$2(productId)) return;
2571
+ if (!opts.productKey || isBlank$1(productId)) return;
2654
2572
  runWithFillProduct(() => {
2655
2573
  opts.formData[opts.productKey] = productId;
2656
2574
  });
@@ -2681,7 +2599,7 @@ async function applyConsumeObjectTraceChange(opts) {
2681
2599
  }
2682
2600
  if (keys.bomEntryIdKey) {
2683
2601
  formData[keys.bomEntryIdKey] = null;
2684
- if (!isBlank$2(opts.nextValue) && opts.formInstBom) {
2602
+ if (!isBlank$1(opts.nextValue) && opts.formInstBom) {
2685
2603
  const entry = resolveObjectBomEntry({
2686
2604
  formInstBom: opts.formInstBom,
2687
2605
  belongingObject,
@@ -2691,7 +2609,7 @@ async function applyConsumeObjectTraceChange(opts) {
2691
2609
  }
2692
2610
  }
2693
2611
  const lotValue = keys.materialNoKey ? formData[keys.materialNoKey] : void 0;
2694
- if (!isBlank$2(opts.nextValue) && !isBlank$2(lotValue)) {
2612
+ if (!isBlank$1(opts.nextValue) && !isBlank$1(lotValue)) {
2695
2613
  try {
2696
2614
  await validateReinspectionDate({
2697
2615
  product_id_: String(opts.nextValue),
@@ -2710,7 +2628,7 @@ async function applyConsumeObjectTraceChange(opts) {
2710
2628
  return { abortLocked: opts.option.id_ };
2711
2629
  }
2712
2630
  const params = resolveLotValidateParams(keys, formData, opts.option);
2713
- if (isBlank$2(params.material_no_) && isBlank$2(params.material_no_id_)) return {};
2631
+ if (isBlank$1(params.material_no_) && isBlank$1(params.material_no_id_)) return {};
2714
2632
  try {
2715
2633
  await validateReinspectionDate(params);
2716
2634
  } catch (e) {
@@ -2724,7 +2642,7 @@ async function applyConsumeObjectTraceChange(opts) {
2724
2642
  });
2725
2643
  if (keys.bomEntryIdKey && opts.formInstBom) {
2726
2644
  const productId = opts.option?.product_id_ ?? opts.option?._item?.product_id_;
2727
- if (!isBlank$2(productId)) {
2645
+ if (!isBlank$1(productId)) {
2728
2646
  const entry = resolveObjectBomEntry({
2729
2647
  formInstBom: opts.formInstBom,
2730
2648
  belongingObject,
@@ -2980,7 +2898,6 @@ class TdHandler {
2980
2898
  set fieldReadonly(val) {
2981
2899
  this.cloneTd();
2982
2900
  this.td.cellWidget.props.readonly = val;
2983
- this.td.cellWidget.props.field_readonly = val;
2984
2901
  if (val) {
2985
2902
  this.td.cellWidget.props.disabled = false;
2986
2903
  }
@@ -3292,12 +3209,6 @@ class SubTableCore {
3292
3209
  */
3293
3210
  calcFieldStatus(params) {
3294
3211
  const result = {};
3295
- const config = this.bizTableConfig;
3296
- if (config?.dataLockControlField && params.field === config.dataLockControlField) {
3297
- result.readonly = isPersistedSignatureLockActive(config, params.rowData);
3298
- } else if (config?.dataLockControlField) {
3299
- result.disabled = isSignatureLockActive(config, params.rowData);
3300
- }
3301
3212
  return result;
3302
3213
  }
3303
3214
  /**
@@ -3855,7 +3766,7 @@ const OPERATION_RECEIVE_QTY_API = {
3855
3766
  modelKey: "em_routing_operation_number",
3856
3767
  bsKey: "getOne"
3857
3768
  };
3858
- function isBlank$1(value) {
3769
+ function isBlank(value) {
3859
3770
  return value == null || value === "";
3860
3771
  }
3861
3772
  function unwrapBizPayload(res) {
@@ -3870,7 +3781,7 @@ function unwrapBizPayload(res) {
3870
3781
  async function fetchOperationReceiveQty(paramsConfig) {
3871
3782
  const containerId = paramsConfig?.containerId;
3872
3783
  const routingOperationId = paramsConfig?.routingOperationId;
3873
- if (isBlank$1(containerId) || isBlank$1(routingOperationId)) return void 0;
3784
+ if (isBlank(containerId) || isBlank(routingOperationId)) return void 0;
3874
3785
  try {
3875
3786
  const res = await api.apaas.modelComprehensive.postBizServiceModelCategoryModelKeyBsKey(
3876
3787
  OPERATION_RECEIVE_QTY_API,
@@ -3891,74 +3802,6 @@ async function fetchOperationReceiveQty(paramsConfig) {
3891
3802
  return void 0;
3892
3803
  }
3893
3804
  }
3894
- const UDI_API = {
3895
- modelCategory: "entity",
3896
- modelKey: "em_production_identification_udi",
3897
- bsKey: "listAll"
3898
- };
3899
- function isPresent(value) {
3900
- return value !== void 0 && value !== null && value !== "";
3901
- }
3902
- function isBlank(value) {
3903
- return value === void 0 || value === null || value === "";
3904
- }
3905
- function unwrapUdiList(res) {
3906
- if (Array.isArray(res)) return res;
3907
- if (!res || typeof res !== "object") return [];
3908
- const data = res.data;
3909
- if (Array.isArray(data)) return data;
3910
- if (data && typeof data === "object" && Array.isArray(data.data)) {
3911
- return data.data;
3912
- }
3913
- return [];
3914
- }
3915
- function resolveUdiQuery(paramsConfig) {
3916
- const containerId = paramsConfig?.containerId;
3917
- if (!isBlank(containerId)) {
3918
- return { production_identification_id_: String(containerId) };
3919
- }
3920
- const snId = paramsConfig?.snId;
3921
- if (!isBlank(snId)) {
3922
- return { production_identification_id_: String(snId) };
3923
- }
3924
- return void 0;
3925
- }
3926
- function parseUdi(res) {
3927
- const row = unwrapUdiList(res)[0];
3928
- if (!row) return void 0;
3929
- const value = row.udi_;
3930
- return isPresent(value) ? String(value) : void 0;
3931
- }
3932
- const inflightUdiByQuery = /* @__PURE__ */ new Map();
3933
- const resolvedUdiByQuery = /* @__PURE__ */ new Map();
3934
- async function fetchUdi(paramsConfig) {
3935
- const query = resolveUdiQuery(paramsConfig);
3936
- if (!query) return void 0;
3937
- const cacheKey = JSON.stringify(query);
3938
- if (resolvedUdiByQuery.has(cacheKey)) return resolvedUdiByQuery.get(cacheKey);
3939
- const existing = inflightUdiByQuery.get(cacheKey);
3940
- if (existing) return existing;
3941
- const task = (async () => {
3942
- try {
3943
- const res = await api.apaas.modelComprehensive.postBizServiceModelCategoryModelKeyBsKey(
3944
- UDI_API,
3945
- {},
3946
- { query, pageNo: 1, pageSize: 1 }
3947
- );
3948
- const udi = parseUdi(res);
3949
- resolvedUdiByQuery.set(cacheKey, udi);
3950
- return udi;
3951
- } catch {
3952
- return void 0;
3953
- }
3954
- })();
3955
- inflightUdiByQuery.set(cacheKey, task);
3956
- try {
3957
- return await task;
3958
- } finally {
3959
- inflightUdiByQuery.delete(cacheKey);
3960
- }
3961
- }
3962
3805
  const _hoisted_1$5 = ["data-merge", "data-fill-direction"];
3963
3806
  const _hoisted_2$1 = {
3964
3807
  key: 0,
@@ -4832,7 +4675,6 @@ const MaterialConsumeTable = /* @__PURE__ */ defineComponent({
4832
4675
  Object.assign(rowData, defaultRow, preserved);
4833
4676
  tableController.setDefaultValue(rowData);
4834
4677
  rowData.bom_entry_id_ = void 0;
4835
- if (tableController.isCustomRequiredQty) rowData.qty_required_ = void 0;
4836
4678
  rowData.qty_consumed_total_ = void 0;
4837
4679
  clearMcValidatorComments();
4838
4680
  tableController.updateDerivedQtyFields();
@@ -4854,11 +4696,8 @@ const MaterialConsumeTable = /* @__PURE__ */ defineComponent({
4854
4696
  rowNum = 1,
4855
4697
  quickFillDatas
4856
4698
  }) => {
4857
- const bomEntryId = rowData.bom_entry_id_ ?? (rowData.product_id_ ? tableController.bomEntriesValidator.findUtilByProductId(rowData.product_id_)?.bomEntry.id_ : void 0);
4858
- const requiredQty = tableController.isCustomRequiredQty && bomEntryId ? tableController.getCustomGroupRequiredQty(rowData) : void 0;
4859
4699
  insertRowsAt(resolveRealIndex(index) + 1, createDefaultRows(rowNum, quickFillDatas, (r) => {
4860
- if (bomEntryId) r.bom_entry_id_ = bomEntryId;
4861
- if (tableController.isCustomRequiredQty && bomEntryId) r.qty_required_ = requiredQty;
4700
+ if (rowData.bom_entry_id_) r.bom_entry_id_ = rowData.bom_entry_id_;
4862
4701
  }));
4863
4702
  };
4864
4703
  const handleAddGroup = async ({
@@ -4895,11 +4734,7 @@ const MaterialConsumeTable = /* @__PURE__ */ defineComponent({
4895
4734
  });
4896
4735
  }
4897
4736
  if (groupLast < 0) groupLast = resolveRealIndex(index);
4898
- insertRowsAt(groupLast + 1, createDefaultRows(1, quickFillDatas, (row) => {
4899
- if (tableController.isCustomRequiredQty && quickFillDatas?.[0]?.qty_required_ == null) {
4900
- row.qty_required_ = void 0;
4901
- }
4902
- }));
4737
+ insertRowsAt(groupLast + 1, createDefaultRows(1, quickFillDatas));
4903
4738
  };
4904
4739
  const handleAction = (action, rowData) => {
4905
4740
  switch (action) {
@@ -5895,33 +5730,6 @@ const DocumentPaper = /* @__PURE__ */ defineComponent({
5895
5730
  }
5896
5731
  return attrInfo;
5897
5732
  };
5898
- const applyFixedTableSignatureLock = (tdInfo) => {
5899
- if (!tdInfo.props?.isNewFixedTableTd || !tdInfo.cellWidget?.props?.field) {
5900
- return tdInfo;
5901
- }
5902
- const tableField = tdInfo.props.fixedTableFieldId;
5903
- const table = fixedTables.value.find((item) => item.field === tableField);
5904
- const config2 = table?.bizTableConfig;
5905
- if (!config2?.dataLockControlField) return tdInfo;
5906
- const rowIndex = tdInfo.cellFixedTableDataIdx ?? 0;
5907
- const rowData = props.formState?.[tableField]?.[rowIndex];
5908
- const isControlField = tdInfo.cellWidget.props.field === config2.dataLockControlField;
5909
- const locked = isSignatureLockActive(config2, rowData) && !isControlField;
5910
- const controlFieldReadonly = isControlField && isPersistedSignatureLockActive(config2, rowData);
5911
- const originalProps = tdInfo.cellWidget.props;
5912
- return {
5913
- ...tdInfo,
5914
- cellWidget: {
5915
- ...tdInfo.cellWidget,
5916
- props: {
5917
- ...originalProps,
5918
- fieldDisabled: locked ? true : originalProps.fieldDisabled,
5919
- field_readonly: controlFieldReadonly ? true : originalProps.field_readonly,
5920
- readonly: controlFieldReadonly ? true : originalProps.readonly
5921
- }
5922
- }
5923
- };
5924
- };
5925
5733
  onMounted(async () => {
5926
5734
  if (props.basicInfo.renderModeType === RenderModeEnum.ViewMode) {
5927
5735
  await waitDomStable(mainTableRef.value, void 0, void 0, props.basicInfo.__isPrintRender);
@@ -5976,7 +5784,7 @@ const DocumentPaper = /* @__PURE__ */ defineComponent({
5976
5784
  "key": `${trId}_${trIndex}`,
5977
5785
  "height": height
5978
5786
  }, [tdIds.map((tdId) => {
5979
- const tdInfo = applyFixedTableSignatureLock(props.widgetCenter[tdId]);
5787
+ const tdInfo = props.widgetCenter[tdId];
5980
5788
  const tdAttrs = {
5981
5789
  key: tdId,
5982
5790
  id: tdId,
@@ -6236,60 +6044,57 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
6236
6044
  });
6237
6045
  const DynamicTableAction = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-53d7e66c"]]);
6238
6046
  export {
6239
- parseUdi as $,
6240
- resolveScanQty as A,
6047
+ getCopySubMenu as A,
6241
6048
  BorderTD as B,
6242
- toDateOnly as C,
6049
+ resolveScanParsedValue as C,
6243
6050
  DeviceLinkTmplUtil as D,
6244
6051
  EMPTY_PRODUCT_VERSION_ID as E,
6245
- getCopySubMenu as F,
6246
- resolveScanParsedValue as G,
6247
- isProductBatchEmptyRow as H,
6052
+ resolveScanFillData as F,
6053
+ isProductBatchEmptyRow as G,
6054
+ useMaterialBalance as H,
6248
6055
  InstanceStatusValues as I,
6249
- useMaterialBalance as J,
6250
- validate as K,
6251
- validateObjectBomQtyOnSubmit as L,
6056
+ validate as J,
6057
+ validateObjectBomQtyOnSubmit as K,
6058
+ DeviceConnector as L,
6252
6059
  MaterialConsumptionPatternEnum as M,
6253
- DeviceConnector as N,
6254
- DocumentLoading as O,
6255
- DynamicQuickFillModal as P,
6256
- FixedQuickFillModal as Q,
6060
+ DocumentLoading as N,
6061
+ DynamicQuickFillModal as O,
6062
+ FixedQuickFillModal as P,
6063
+ FormTmplConfigController as Q,
6257
6064
  RequiredQtyCalcRule as R,
6258
6065
  ScanParamType as S,
6259
- FormTmplConfigController as T,
6260
- MCDataUtil as U,
6261
- OCR_MODEL_PRECISION_ENUM_KEY as V,
6262
- getAppInfo as W,
6263
- getSuiteKey as X,
6264
- isBlank$2 as Y,
6265
- isEqmSuite as Z,
6066
+ MCDataUtil as T,
6067
+ OCR_MODEL_PRECISION_ENUM_KEY as U,
6068
+ getAppInfo as V,
6069
+ getSuiteKey as W,
6070
+ isBlank$1 as X,
6071
+ isEqmSuite as Y,
6072
+ pickObjectFieldKeys as Z,
6266
6073
  _sfc_main$5 as _,
6267
6074
  useTmplBom as a,
6268
- pickObjectFieldKeys as a0,
6269
- resolveUdiQuery as a1,
6270
6075
  buildObjectLotExtraQuery as b,
6271
6076
  resolveObjectBomEntry as c,
6272
6077
  runWithFillProduct as d,
6273
6078
  applyConsumeObjectTraceChange as e,
6274
- fetchUdi as f,
6079
+ fetchOperationReceiveQty as f,
6275
6080
  getObjectBomMaterialLotQuery as g,
6276
- fetchOperationReceiveQty as h,
6081
+ getObjectBomProductQuery as h,
6277
6082
  isEdhrSuite as i,
6278
- getObjectBomProductQuery as j,
6279
- useStyles as k,
6280
- useValidator as l,
6281
- DocumentPaper as m,
6083
+ useStyles as j,
6084
+ useValidator as k,
6085
+ DocumentPaper as l,
6086
+ DynamicTableAction as m,
6282
6087
  normalizeFieldWidth as n,
6283
- DynamicTableAction as o,
6284
- MaterialConsumeTableController as p,
6088
+ MaterialConsumeTableController as o,
6089
+ SubTableCore as p,
6285
6090
  SubTableActionMenuTypeEnum as q,
6286
6091
  resolveObjectFieldKeys as r,
6287
6092
  getMenuByAction as s,
6288
6093
  SubTableActionEnum as t,
6289
6094
  useFormTmplConfig as u,
6290
6095
  validateObjectBomForScan as v,
6291
- resolveScanFillData as w,
6292
- SubTableCore as x,
6293
- getInsertSubMenu as y,
6294
- resolveScanAdjustType as z
6096
+ getInsertSubMenu as w,
6097
+ resolveScanAdjustType as x,
6098
+ resolveScanQty as y,
6099
+ toDateOnly as z
6295
6100
  };