@gct-paas/excel 0.1.40-beta.6 → 0.1.40-beta.8

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 (108) hide show
  1. package/dist/{BaseComponent-Dfx-Xuv4.js → BaseComponent-CELRDc47.js} +2 -2
  2. package/dist/{VueVideoPlayer-DHqhqgGs.js → VueVideoPlayer-CQ3WMohj.js} +2 -2
  3. package/dist/{align-editor-hvllGvX8.js → align-editor-BjxHuSxl.js} +1 -1
  4. package/dist/{barcode-design-CzlfYJ3s.js → barcode-design-BDHtEF3j.js} +2 -2
  5. package/dist/base/index.es.js +265 -109
  6. package/dist/{diagonal-design-DCVidBZD.js → diagonal-design-DLxRO_uM.js} +2 -2
  7. package/dist/{dynamic-table-action-Dn_iw4tV.js → dynamic-table-action-C_1EGXMe.js} +153 -148
  8. package/dist/{dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-Cz-fpECL.js → dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-B7k5famp.js} +544 -495
  9. package/dist/{edit.utils-CXmmCnxE-BUEfsAZ3.js → edit.utils-CXmmCnxE-C1w2rhHM.js} +1 -1
  10. package/dist/excel.css +16 -16
  11. package/dist/{exceljs.min-9FX7NALn.js → exceljs.min-rIUD8u2M.js} +2 -2
  12. package/dist/{font-editor-ClqMOFPr.js → font-editor-DWmzS_0C.js} +3 -3
  13. package/dist/{image-design-Cx1YIea4.js → image-design-Cjob0qMO.js} +2 -2
  14. package/dist/{index-BKnroXXX.js → index--kolAY9o.js} +3 -3
  15. package/dist/{index-mCrtpdq2.js → index-2X2QGo0A.js} +255 -85
  16. package/dist/{index-Cj_t_73x.js → index-B9a9T8if.js} +1 -1
  17. package/dist/{index-DCv60fUG.js → index-BHxDpc-C.js} +2 -2
  18. package/dist/{index-a6chYhIK.js → index-BLpDtBBv.js} +2 -2
  19. package/dist/{index-D7ZzvopL.js → index-BeYN1fxt.js} +2 -2
  20. package/dist/{index-D4zDlgqU.js → index-BgsXETEd.js} +1 -1
  21. package/dist/{index-lf11EIvP.js → index-BlLeFC1A.js} +2 -2
  22. package/dist/{index-DkXBzlUL.js → index-Bn5H-iFV.js} +2 -2
  23. package/dist/{index-Dp2q7ZPo.js → index-Bw67kX4Y.js} +2 -2
  24. package/dist/{index-BkoKoZbl.js → index-ByeVrxVl.js} +1 -1
  25. package/dist/{index-BjSWHyj1.js → index-BzBMhjxB.js} +1 -1
  26. package/dist/{index-BRc6frrP.js → index-C-F1u_o7.js} +2 -2
  27. package/dist/{index-BLrixMsM.js → index-CAekmaIN.js} +2 -2
  28. package/dist/{index-BgzCdSQH.js → index-CHS101Sz.js} +3 -3
  29. package/dist/{index-BWHnHAjs.js → index-CIkhaEj4.js} +1 -1
  30. package/dist/{index-NJZaG-sl.js → index-CQ0BwWRP.js} +2 -2
  31. package/dist/{index-CVG3Z6rp.js → index-CQkWk_7M.js} +3 -3
  32. package/dist/{index-CjCFTTI3.js → index-CfyXGhk3.js} +1 -1
  33. package/dist/{index-BM1sPB29.js → index-Cn2_Yd7q.js} +1 -1
  34. package/dist/{index-DYyVGkv3.js → index-DJj0H4QE.js} +2 -2
  35. package/dist/{index-Cl_94fZQ.js → index-DMOi4nAC.js} +2 -2
  36. package/dist/{index-B9xwdsWY.js → index-DQNLZ671.js} +4 -4
  37. package/dist/{index-CG5LAGQp.js → index-DdxuhIJY.js} +2 -2
  38. package/dist/{index-NqYSNDX9.js → index-DiNxihKr.js} +2 -2
  39. package/dist/{index-Dru8lW-_.js → index-DqomTxsG.js} +1 -1
  40. package/dist/{index-CcB9d0A-.js → index-DxW-5l6p.js} +2 -2
  41. package/dist/{index-B3KkYxiX.js → index-DxaR4DCk.js} +2 -2
  42. package/dist/{index-CWjwF2wn.js → index-LOpDQbHn.js} +2 -2
  43. package/dist/{index-COmm7d4j.js → index-RV5ozdPP.js} +1 -1
  44. package/dist/{index-q_pMlfx9.js → index-Refavqkv.js} +3 -3
  45. package/dist/{index-vEKEZcff.js → index-U90xa0_k.js} +2 -2
  46. package/dist/{index-B4c_0M_d.js → index-nGGsFW_9.js} +2 -2
  47. package/dist/{index-BdYI71iy.js → index-poil0x4K.js} +2 -2
  48. package/dist/{index-CyPwg8fV.js → index-w6agN1-G.js} +1 -1
  49. package/dist/index.es.js +2 -2
  50. package/dist/{mb-render-DjSdDuaL.js → mb-render-wAlqnYW9.js} +1 -1
  51. package/dist/{online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-QrM7rL99.js → online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-BLEHWjXh.js} +1 -1
  52. package/dist/{pagination-design-DJEw5vlL.js → pagination-design-CuM2_cOO.js} +2 -2
  53. package/dist/paper-widget-design-OVR0zocz.js +4 -0
  54. package/dist/{print-runtime-instance-BtxZfq51.js → print-runtime-instance-xGsbD9K-.js} +1 -1
  55. package/dist/{print-snapshot-renderer-0D5MUsR6.js → print-snapshot-renderer-DYUY1xCI.js} +3 -3
  56. package/dist/{qrcode-design-9jPH-S8z.js → qrcode-design-CO631M71.js} +1 -1
  57. package/dist/{revo-grid.entry-BhCFcCVS.js → revo-grid.entry-B7SWMhl1.js} +1 -1
  58. package/dist/{revogr-attribution_7.entry-icpuI3V8.js → revogr-attribution_7.entry-BkqynH6l.js} +3 -3
  59. package/dist/{revogr-clipboard_3.entry-Dm2_h2RL.js → revogr-clipboard_3.entry-DAHR-Vx9.js} +2 -2
  60. package/dist/{revogr-data_4.entry-DlVEyI7J.js → revogr-data_4.entry-CVh6lcCy.js} +2 -2
  61. package/dist/{revogr-filter-panel.entry-MJr7PMnd.js → revogr-filter-panel.entry-BBhV4Xqa.js} +1 -1
  62. package/dist/seal-design-BnXd0buM.js +4 -0
  63. package/dist/{serialnumber-design-BsfJH6Kp.js → serialnumber-design-DxGYVdk3.js} +1 -1
  64. package/dist/shared/index.es.js +9 -9
  65. package/dist/{single-field-drop-DXjppxDh.js → single-field-drop-DpHqYP0Z.js} +2 -2
  66. package/dist/{size-editor-DzQdRb-7.js → size-editor-D0jQ3Lrf.js} +1 -1
  67. package/dist/src/domain/document-business/business/product-release/profile.d.ts +2 -0
  68. package/dist/src/domain/document-business/business/product-release/service.d.ts +2 -0
  69. package/dist/src/domain/document-business/index.d.ts +2 -0
  70. package/dist/src/domain/document-business/registry.d.ts +2 -0
  71. package/dist/src/domain/document-business/runtime/field-query-runtime.d.ts +4 -0
  72. package/dist/src/domain/document-business/types.d.ts +24 -0
  73. package/dist/src/domain/field/number/product-release-qty-manifest.d.ts +2 -0
  74. package/dist/src/domain/field/query-filter.d.ts +15 -0
  75. package/dist/src/domain/table/business/material/material-substitution/profile/field-keys.d.ts +13 -11
  76. package/dist/src/domain/table/business/material/material-substitution/runtime/select-loaders.d.ts +8 -0
  77. package/dist/src/nocode-base/src/core/sub-table/profile-driven-sub-table-core.d.ts +3 -3
  78. package/dist/src/nocode-base/src/hooks/material-consume-object/bom-validator.d.ts +4 -3
  79. package/dist/src/nocode-base/src/hooks/material-consume-object/object-validation-controller.d.ts +24 -0
  80. package/dist/src/nocode-base/src/hooks/render-page/initialize-runtime.d.ts +1 -0
  81. package/dist/src/nocode-base/src/hooks/useRenderPageFactory.d.ts +3 -0
  82. package/dist/src/nocode-base/src/interface/ref-loader.d.ts +12 -1
  83. package/dist/src/nocode-base/src/types/common/base.d.ts +2 -0
  84. package/dist/src/online-form/src/views/__cell_widgets__/common/display-fields-editor/display-fields.util.d.ts +2 -2
  85. package/dist/src/online-form/src/views/designer/constants/index.d.ts +1 -0
  86. package/dist/src/shared/enum/field-type.d.ts +7 -0
  87. package/dist/src/shared/utils/withRequestCache.d.ts +27 -0
  88. package/dist/{sub-table-factory-Ddx70uYs.js → sub-table-factory-dhsoO5eF.js} +194 -85
  89. package/dist/{text-design-DmLrMqdk.js → text-design-CCJVszh9.js} +2 -2
  90. package/dist/{throttle-Cpk1LoGk-DLVGpnFw.js → throttle-Cpk1LoGk-D7Z-44El.js} +1 -1
  91. package/dist/{timediff-design-CYqz1SKQ.js → timediff-design-DE0Lb5-J.js} +1 -1
  92. package/dist/{trace-like-wrapper-CVl0Vm8r.js → trace-like-wrapper-u1qMVyxo.js} +2 -2
  93. package/dist/{value-editor.vue_vue_type_style_index_0_lang-B0aWEk5D.js → value-editor.vue_vue_type_style_index_0_lang-BDK70sFY.js} +2 -2
  94. package/dist/web-render/index.es.js +3 -3
  95. package/dist/{widget-barcode-DwYihxgd.js → widget-barcode-BiqBkpJf.js} +4 -4
  96. package/dist/{widget-diagonal-DWdxDYVl.js → widget-diagonal-DEPOR_xL.js} +3 -3
  97. package/dist/{widget-image-D1SXIbMU.js → widget-image-CT0b6oE3.js} +5 -5
  98. package/dist/{widget-line-BNTbSFkx.js → widget-line-CencIyCA.js} +2 -2
  99. package/dist/{widget-pagination-25CKNe-i.js → widget-pagination-CLokA4N9.js} +5 -5
  100. package/dist/{widget-power-BSjWdgM3.js → widget-power-BPxteor_.js} +3 -3
  101. package/dist/{widget-qrcode-Kbe9Skrd.js → widget-qrcode-gYHAR233.js} +3 -3
  102. package/dist/{widget-rangelimit-TWPoG8DX.js → widget-rangelimit-BJKYDkcT.js} +3 -3
  103. package/dist/{widget-serialnumber-uNkQzBIT.js → widget-serialnumber-BCPB7hqo.js} +1 -1
  104. package/dist/{widget-text-DH4r60jo.js → widget-text-D_CGo-mQ.js} +5 -5
  105. package/dist/{widget-timediff-Bv8VCgrv.js → widget-timediff-cBekBImJ.js} +2 -2
  106. package/package.json +1 -1
  107. package/dist/paper-widget-design-C3rm4SzP.js +0 -4
  108. package/dist/seal-design-CtzWGxnH.js +0 -4
@@ -1,17 +1,17 @@
1
1
  import * as Vue from "vue";
2
2
  import { createVNode, computed, unref, ref, defineComponent, onMounted, resolveComponent, openBlock, createElementBlock, withCtx, watch, toRaw, inject, reactive, createBlock, Fragment, renderList, createTextVNode, toDisplayString as toDisplayString$1, createCommentVNode, createElementVNode, normalizeClass, h, normalizeStyle, watchEffect, renderSlot, shallowRef, defineAsyncComponent, resolveDynamicComponent, mergeProps, normalizeProps, guardReactiveProps, onUnmounted, Text, nextTick, onBeforeUnmount, withModifiers, withDirectives, vShow, Teleport, withKeys, vModelText, isRef, provide, isVNode as isVNode$1, createApp, render, TransitionGroup, toRefs, useAttrs, createSlots, onScopeDispose, useCssVars, onBeforeMount, toRef, mergeDefaults, toHandlers, getCurrentInstance as getCurrentInstance$1, Transition, useModel, mergeModels as mergeModels$1, onErrorCaptured, markRaw } from "vue";
3
- import { g as getAllDataProfiles, i as isDataTableProfile, a as getProfile, b as isBusinessSubTableProfile, c as getProfileByTableType, r as resolveCreateTargetByTableType, d as getBusinessProfileByRefModelType, S as SUB_TABLE_PANEL_TYPE_NAME, e as expandAutofillTemplates, f as resolveAutofillToField, h as SubTableType, j as getAllBusinessRefModelTypes, D as DateObjectContext, k as isBlank$1, F as FIELD_TYPE, l as isSameFieldValue$1, m as runDateObjectHandler, n as companionIdKey, o as companionLabelKey, p as api, P as PaginationFormat, q as PaperWidgeType, B as BwipCodeType, L as LineType, s as PageSizeEnum, O as Orientation, t as src, T as TRACE_FIELD_TYPES, u as BUSINESS_FIELD_TYPES, v as resolveFieldRenderComponent, C as ComponentTypeEnum, w as parse$1, x as estraverse, y as Syntax, z as isDynamicCreateTarget, A as CellType, E as isDynamicCellSubTable, G as ParamModelTypeEnum, H as FieldTypeToJs, I as CreateType, J as uuid2, K as useModal, M as requireEstraverse, N as commonjsGlobal, Q as getDefaultExportFromCjs, R as PaperWidgeValueType, U as getParseFormulaVarInfos, V as onlineFormMasterModelTypeEnum, W as WAREHOUSE_FIELD_TYPES, X as UniqueConstraintType, Y as FieldDefaultValueTypeEnum, Z as FormTypeEnum, _ as mitt, $ as isDateObjectField, a0 as PlatformEnum, a1 as LabelPosition, a2 as BooleanShowMode, a3 as SignatureImageDirectionEnum, a4 as FallbackSignTypeEnum, a5 as SignatureNumberTypeEnum, a6 as SignatureTimeTypeEnum, a7 as SignShowTypeEnum, a8 as SignatureTypeEnum, a9 as _export_sfc, aa as normalizeFieldType, ab as PaperSizeMap, ac as clampSealPosition, ad as normalizeSealDiameter, ae as getFieldMain, af as buildUUID, ag as FieldIconMap, ah as BigNumber, ai as FieldSysVarDefaultValueEnum, aj as CellWidgetViewState, ak as DiagonalDirection, al as WidgetImageSizeMode, am as LineDirection, an as TimeDiffFormat, ao as DiagonalVertex, ap as resolveDiagonalVertex, aq as getThemeColorByTableType, ar as ViewTypeEnum, as as isDynamicSubTablePanelType, at as isFixedSubTablePanelType, au as ExpressionModeEnum, av as ReturnTypeEnum, aw as ExpressionTabEnum, ax as RangeValidateMode, ay as RangeCompareOp, az as getExclusiveBusinessTypeTokens, aA as getSubTableTypeByRefModelType, aB as findFieldMain, aC as DecimalDisplayMode$1, aD as ImageDisplayModeEnum, aE as FormDesignEnum, aF as BASIC_FIELD_TYPES, aG as getAllTableProfiles, aH as transformUtils, aI as EmptySymbol, aJ as ASSIGNMENTSTRATEGY_ENUM, aK as Dependency_ENUM, aL as EntityModelCategoryEnum, aM as resolveLotDisplayLabel, aN as CheckDsTypeEnum, aO as DeviceLink, aP as DeviceParamsTypeTitle, aQ as AITooltips, aR as DenoiseMethodOptions, aS as BinarizeMethodOptions, aT as DateFormat, aU as LOT_CONTAINER_ROLE, aV as buildLotSnListQuery, aW as renderUtils, aX as resolveLotRecordByValue, aY as materialCheck, aZ as getLotLockedReason, a_ as validateReinspectionDate, a$ as ProductionIdentificationTypeEnum, b0 as BindCmpStyleEnum, b1 as getParseRuleInfo, b2 as getParseRuleValue, b3 as normalizeRefLoaderResult, b4 as STOCKTAKE_DIMENSION, b5 as F, b6 as resolveStocktakeSelectApi, b7 as readSealValue, b8 as isSealStamped, b9 as RenderModeEnum, ba as stampSealValue, bb as isValidSealValue, bc as clearSealValue, bd as normalizeProductionContainerOptions, be as buildProductionLotListQuery, bf as refUtils, bg as buildInspectionLotListQuery, bh as buildDeviceFilterQuery, bi as DEVICE_GROUP_QUERY_KEY, bj as getRowId, bk as findRuntimeTableRow, bl as calculateFormula, bm as findRuntimeParentRow, bn as useOnlineFormTransformField2Component, bo as FormulaRuleFieldKeyEnum, bp as formulaRuleFieldDict, bq as resolveDesignPanelFeatures, br as BIZ_TABLE_CONFIG_SEED_TYPES, bs as STOCKTAKE_DIMENSION_OPTIONS, bt as isRepeatingSubTablePanelType, bu as moveSealValue, bv as uuid2$1 } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-Cz-fpECL.js";
3
+ import { g as getAllDataProfiles, i as isDataTableProfile, a as getProfile, b as isBusinessSubTableProfile, c as getProfileByTableType, r as resolveCreateTargetByTableType, d as getBusinessProfileByRefModelType, S as SUB_TABLE_PANEL_TYPE_NAME, e as expandAutofillTemplates, f as resolveAutofillToField, h as SubTableType, j as getAllBusinessRefModelTypes, D as DateObjectContext, k as isBlank$1, F as FIELD_TYPE, l as isSameFieldValue$1, m as runDateObjectHandler, n as companionIdKey, o as companionLabelKey, p as api, P as PaginationFormat, q as PaperWidgeType, B as BwipCodeType, L as LineType, s as PageSizeEnum, O as Orientation, t as src, T as TRACE_FIELD_TYPES, u as BUSINESS_FIELD_TYPES, v as resolveFieldRenderComponent, C as ComponentTypeEnum, w as parse$1, x as estraverse, y as Syntax, z as isDynamicCreateTarget, A as CellType, E as isDynamicCellSubTable, G as ParamModelTypeEnum, H as FieldTypeToJs, I as CreateType, J as uuid2, K as useModal, M as requireEstraverse, N as commonjsGlobal, Q as getDefaultExportFromCjs, R as PaperWidgeValueType, U as getParseFormulaVarInfos, V as onlineFormMasterModelTypeEnum, W as WAREHOUSE_FIELD_TYPES, X as UniqueConstraintType, Y as FieldDefaultValueTypeEnum, Z as FormTypeEnum, _ as mitt, $ as isDateObjectField, a0 as PlatformEnum, a1 as LabelPosition, a2 as BooleanShowMode, a3 as SignatureImageDirectionEnum, a4 as FallbackSignTypeEnum, a5 as SignatureNumberTypeEnum, a6 as SignatureTimeTypeEnum, a7 as SignShowTypeEnum, a8 as SignatureTypeEnum, a9 as _export_sfc, aa as normalizeFieldType, ab as PaperSizeMap, ac as clampSealPosition, ad as normalizeSealDiameter, ae as getFieldMain, af as buildUUID, ag as FieldIconMap, ah as BigNumber, ai as FieldSysVarDefaultValueEnum, aj as CellWidgetViewState, ak as DiagonalDirection, al as WidgetImageSizeMode, am as LineDirection, an as TimeDiffFormat, ao as DiagonalVertex, ap as resolveDiagonalVertex, aq as getThemeColorByTableType, ar as ViewTypeEnum, as as isDynamicSubTablePanelType, at as isFixedSubTablePanelType, au as ExpressionModeEnum, av as ReturnTypeEnum, aw as ExpressionTabEnum, ax as RangeValidateMode, ay as RangeCompareOp, az as getExclusiveBusinessTypeTokens, aA as getSubTableTypeByRefModelType, aB as findFieldMain, aC as DecimalDisplayMode$1, aD as ImageDisplayModeEnum, aE as FormDesignEnum, aF as BASIC_FIELD_TYPES, aG as getAllTableProfiles, aH as transformUtils, aI as EmptySymbol, aJ as ASSIGNMENTSTRATEGY_ENUM, aK as Dependency_ENUM, aL as EntityModelCategoryEnum, aM as resolveLotDisplayLabel, aN as CheckDsTypeEnum, aO as DeviceLink, aP as DeviceParamsTypeTitle, aQ as AITooltips, aR as DenoiseMethodOptions, aS as BinarizeMethodOptions, aT as DateFormat, aU as withRequestCache, aV as LOT_CONTAINER_ROLE, aW as buildLotSnListQuery, aX as renderUtils, aY as resolveLotRecordByValue, aZ as materialCheck, a_ as getLotLockedReason, a$ as validateReinspectionDate, b0 as ProductionIdentificationTypeEnum, b1 as BindCmpStyleEnum, b2 as getParseRuleInfo, b3 as getParseRuleValue, b4 as normalizeRefLoaderResult, b5 as STOCKTAKE_DIMENSION, b6 as F, b7 as resolveStocktakeSelectApi, b8 as readSealValue, b9 as isSealStamped, ba as RenderModeEnum, bb as stampSealValue, bc as isValidSealValue, bd as clearSealValue, be as normalizeProductionContainerOptions, bf as buildProductionLotListQuery, bg as refUtils, bh as buildInspectionLotListQuery, bi as buildDeviceFilterQuery, bj as DEVICE_GROUP_QUERY_KEY, bk as getRowId, bl as findRuntimeTableRow, bm as calculateFormula, bn as findRuntimeParentRow, bo as useOnlineFormTransformField2Component, bp as FormulaRuleFieldKeyEnum, bq as formulaRuleFieldDict, br as resolveDesignPanelFeatures, bs as BIZ_TABLE_CONFIG_SEED_TYPES, bt as STOCKTAKE_DIMENSION_OPTIONS, bu as isRepeatingSubTablePanelType, bv as moveSealValue, bw as uuid2$1 } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-B7k5famp.js";
4
4
  import { range, cloneDeep, get as get$3, merge, isEmpty, zip, pick, omit, has, debounce, isNil, times, clone as clone$3, differenceBy, mapValues, last, set as set$2, hasIn, isEqual } from "lodash-es";
5
5
  import dayjs from "dayjs";
6
6
  import { DataSourceChangeEvent, useFormBaseModal, getBuiltinContextFields, DataSources, FieldFills, FormBaseModalPlugin } from "@gct-paas/form-base";
7
7
  import * as Antd from "ant-design-vue";
8
8
  import { message, Modal, notification, Empty, InputSearch, Cascader, ConfigProvider, Tooltip as Tooltip$1, Input, Tree, Transfer, Select, Tag, AutoComplete, TimePicker, DatePicker, Textarea, TreeSelect, CheckboxGroup, Checkbox, Radio, RadioGroup } from "ant-design-vue";
9
- import { b as bindFormulaCacheInvalidation, c as currentParamsConfig, M as MAX_RUNTIME_SHEETS, a as MAX_RUNTIME_SHEET_TITLE_LENGTH, d as MULTI_SHEET_SCHEMA_VERSION, e as createRuntimeDocumentV2, g as getBusinessFieldKey, n as normalizeFieldWidth, D as DEFAULT_BOOLEAN_FIELD_WIDTH, B as BorderTD, u as useFormTmplConfig, f as findFieldProfile, h as normalizeHistoricalBusinessRow, i as DeviceLinkTmplUtil, j as normalizeAIOcrTmpl, k as useWidgetStaticAttrs, l as useRuntimeInstanceServices, s as setSelectValidatorId, m as setSelectAnnotationId, o as useRuntimeRowState, p as getObjectBomMaterialLotQuery, q as buildObjectLotExtraQuery, r as resolveObjectFieldKeys, t as MaterialConsumptionPatternEnum, v as validateObjectBomForScan, w as resolveObjectBomEntry, x as runWithFillProduct, y as useNocodeFormWidget, z as applyConsumeObjectTraceChange, A as getObjectBomProductQuery, E as EMPTY_PRODUCT_VERSION_ID, C as normalizeHistoricalAutofillRow, N as NCB_PROVIDE, F as parseRuntimeFieldPath, G as useStyles, H as useDependency, I as useFieldPresentation, J as useRuntimeEditorFlusher, R as RuntimeFormStateStore, K as createRuntimeInstanceContext, L as RuntimeInstanceRegistry, S as ScanParamType, O as RequiredQtyCalcRule, P as DocumentPaper, Q as DynamicTableAction, _ as _sfc_main$6g } from "./dynamic-table-action-Dn_iw4tV.js";
10
- import { S as SEARCH_SEVICE, V as VersionSelect, C as CloseOutlined, E as EmptyImg$2, P as ProductTypeEnum } from "./online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-QrM7rL99.js";
9
+ import { b as bindFormulaCacheInvalidation, c as currentParamsConfig, M as MAX_RUNTIME_SHEETS, a as MAX_RUNTIME_SHEET_TITLE_LENGTH, d as MULTI_SHEET_SCHEMA_VERSION, e as createRuntimeDocumentV2, g as getBusinessFieldKey, n as normalizeFieldWidth, D as DEFAULT_BOOLEAN_FIELD_WIDTH, B as BorderTD, u as useFormTmplConfig, f as findFieldProfile, h as normalizeHistoricalBusinessRow, i as DeviceLinkTmplUtil, j as normalizeAIOcrTmpl, k as useWidgetStaticAttrs, l as useRuntimeInstanceServices, s as setSelectValidatorId, m as setSelectAnnotationId, o as useRuntimeRowState, p as getObjectBomMaterialLotQuery, q as buildObjectLotExtraQuery, r as resolveObjectFieldKeys, t as MaterialConsumptionPatternEnum, v as validateObjectBomForScan, w as resolveObjectBomEntry, x as runWithFillProduct, y as useNocodeFormWidget, z as applyConsumeObjectTraceChange, A as getObjectBomProductQuery, E as EMPTY_PRODUCT_VERSION_ID, C as normalizeHistoricalAutofillRow, N as NCB_PROVIDE, F as parseRuntimeFieldPath, G as useStyles, H as useDependency, I as useFieldPresentation, J as useRuntimeEditorFlusher, R as RuntimeFormStateStore, K as createRuntimeInstanceContext, L as RuntimeInstanceRegistry, S as ScanParamType, O as RequiredQtyCalcRule, P as DocumentPaper, Q as DynamicTableAction, _ as _sfc_main$6g } from "./dynamic-table-action-C_1EGXMe.js";
10
+ import { S as SEARCH_SEVICE, V as VersionSelect, C as CloseOutlined, E as EmptyImg$2, P as ProductTypeEnum } from "./online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-BLEHWjXh.js";
11
11
  import { I as Icon$1, w as warning, u as useInsertStyles, s as svgBaseProps, a as useNamespace } from "./AntdIcon-DCIaV352.js";
12
- import { u as useWebUpload, i as initWebPaasUploadApis, a as useThrottleFn, d as defaultWindow, n as noop, b as useEventListener, c as isIOS, e as unrefElement, r as require$$0, U as Uploader, f as useIntersectionObserver, g as cacheAdapter, w as watchDebounced, A as AddRuleBtn, M as ModalWrapper, F as FormFieldSelect, o as onClickOutside$1, _ as _sfc_main$6f, h as initWebNocodeAdapter } from "./index-a6chYhIK.js";
12
+ import { u as useWebUpload, i as initWebPaasUploadApis, a as useThrottleFn, d as defaultWindow, n as noop, b as useEventListener, c as isIOS, e as unrefElement, r as require$$0, U as Uploader, f as useIntersectionObserver, g as cacheAdapter, w as watchDebounced, A as AddRuleBtn, M as ModalWrapper, F as FormFieldSelect, o as onClickOutside$1, _ as _sfc_main$6f, h as initWebNocodeAdapter } from "./index-BLpDtBBv.js";
13
13
  import { Tooltip, Grid, Table, Column, Icon as Icon$2, Edit, Validator, VxeGrid } from "vxe-table";
14
- import { u as useFormModel, F as FormModelController } from "./mb-render-DjSdDuaL.js";
14
+ import { u as useFormModel, F as FormModelController } from "./mb-render-wAlqnYW9.js";
15
15
  import { HttpUtil } from "@gct-paas/api";
16
16
  import { useModal as useModal$1, t as t$2 } from "@gct-paas/core";
17
17
  import { useRoute } from "vue-router";
@@ -1529,6 +1529,7 @@ const FieldTypeToCellWidgetMap = {
1529
1529
  [FIELD_TYPE.SCRAP_MATERIAL_NO]: CellWidgetCategory.Ref,
1530
1530
  [FIELD_TYPE.DESTRUCTIVE_TEST_QTY]: CellWidgetCategory.Double,
1531
1531
  [FIELD_TYPE.PRODUCT_CHECK_QTY]: CellWidgetCategory.Double,
1532
+ [FIELD_TYPE.PRODUCT_RELEASE_QTY]: CellWidgetCategory.Double,
1532
1533
  [FIELD_TYPE.MATERIAL_CHECK_QTY]: CellWidgetCategory.Double,
1533
1534
  [FIELD_TYPE.INSPECTION_QTY]: CellWidgetCategory.Double,
1534
1535
  [FIELD_TYPE.INSPECTION_MODULE_QTY]: CellWidgetCategory.Double,
@@ -1556,6 +1557,7 @@ const NumberFieldTypes = [
1556
1557
  FIELD_TYPE.SCRAP_QTY,
1557
1558
  FIELD_TYPE.DESTRUCTIVE_TEST_QTY,
1558
1559
  FIELD_TYPE.PRODUCT_CHECK_QTY,
1560
+ FIELD_TYPE.PRODUCT_RELEASE_QTY,
1559
1561
  FIELD_TYPE.MATERIAL_CHECK_QTY,
1560
1562
  FIELD_TYPE.INSPECTION_QTY,
1561
1563
  FIELD_TYPE.INSPECTION_MODULE_QTY,
@@ -1622,6 +1624,7 @@ const OnlineFormBusinessTypes = [
1622
1624
  FIELD_TYPE.SCRAP_MATERIAL_NO,
1623
1625
  FIELD_TYPE.DESTRUCTIVE_TEST_QTY,
1624
1626
  FIELD_TYPE.PRODUCT_CHECK_QTY,
1627
+ FIELD_TYPE.PRODUCT_RELEASE_QTY,
1625
1628
  FIELD_TYPE.MATERIAL_CHECK_QTY,
1626
1629
  FIELD_TYPE.INSPECTION_QTY,
1627
1630
  FIELD_TYPE.INSPECTION_MODULE_QTY,
@@ -1700,6 +1703,7 @@ const FIELD_TYPE_LABEL_MAP = {
1700
1703
  [FIELD_TYPE.SCRAP_MATERIAL_NO]: "报废物料批次",
1701
1704
  [FIELD_TYPE.DESTRUCTIVE_TEST_QTY]: "破坏性试验数量",
1702
1705
  [FIELD_TYPE.PRODUCT_CHECK_QTY]: "产品检验数量",
1706
+ [FIELD_TYPE.PRODUCT_RELEASE_QTY]: "放行数量",
1703
1707
  [FIELD_TYPE.MATERIAL_CHECK_QTY]: "材料检验数量",
1704
1708
  [FIELD_TYPE.INSPECTION_QTY]: "送检数量",
1705
1709
  [FIELD_TYPE.INSPECTION_MODULE_QTY]: "检验数量",
@@ -2014,7 +2018,7 @@ function openWindow(url, opt) {
2014
2018
  const FieldPropLabels = Object.entries(FIELD_PROP_LABEL_MAP);
2015
2019
  const FieldTypeLabels = Object.entries(FIELD_TYPE_LABEL_MAP);
2016
2020
  async function createWorkbook() {
2017
- const ExcelJs = (await import("./exceljs.min-9FX7NALn.js").then((n) => n.e)).default;
2021
+ const ExcelJs = (await import("./exceljs.min-rIUD8u2M.js").then((n) => n.e)).default;
2018
2022
  return new ExcelJs.Workbook();
2019
2023
  }
2020
2024
  class XlsxParser {
@@ -2342,39 +2346,39 @@ class XlsxParser {
2342
2346
  }
2343
2347
  function asyncImportClassModules() {
2344
2348
  const modules = /* @__PURE__ */ Object.assign({
2345
- "./_field_/auto-complete/index.ts": () => import("./index-BKnroXXX.js").then((m) => m["default"]),
2346
- "./_field_/datepicker/index.ts": () => import("./index-DkXBzlUL.js").then((m) => m["default"]),
2347
- "./_field_/datetimepicker/index.ts": () => import("./index-CWjwF2wn.js").then((m) => m["default"]),
2348
- "./_field_/department/index.ts": () => import("./index-NqYSNDX9.js").then((m) => m["default"]),
2349
- "./_field_/enum-select/index.ts": () => import("./index-q_pMlfx9.js").then((m) => m["default"]),
2350
- "./_field_/input/index.ts": () => import("./index-BRc6frrP.js").then((m) => m["default"]),
2351
- "./_field_/inputdouble/index.ts": () => import("./index-DYyVGkv3.js").then((m) => m["default"]),
2352
- "./_field_/inputnumber/index.ts": () => import("./index-BLrixMsM.js").then((m) => m["default"]),
2353
- "./_field_/rdo-select/index.ts": () => import("./index-CVG3Z6rp.js").then((m) => m["default"]),
2354
- "./_field_/seal/index.ts": () => import("./index-NJZaG-sl.js").then((m) => m["default"]),
2355
- "./_field_/select/index.ts": () => import("./index-BgzCdSQH.js").then((m) => m["default"]),
2356
- "./_field_/sign/index.ts": () => import("./index-B3KkYxiX.js").then((m) => m["default"]),
2357
- "./_field_/switch/index.ts": () => import("./index-B9xwdsWY.js").then((m) => m["default"]),
2358
- "./_field_/textarea/index.ts": () => import("./index-Dp2q7ZPo.js").then((m) => m["default"]),
2359
- "./_field_/timepicker/index.ts": () => import("./index-D7ZzvopL.js").then((m) => m["default"]),
2360
- "./_field_/upload-file/index.ts": () => import("./index-vEKEZcff.js").then((m) => m["default"]),
2361
- "./_field_/upload-image/index.ts": () => import("./index-B4c_0M_d.js").then((m) => m["default"]),
2362
- "./_field_/userpicker/index.ts": () => import("./index-Cl_94fZQ.js").then((m) => m["default"]),
2363
- "./_widget_/barcode/index.ts": () => import("./index-BjSWHyj1.js").then((m) => m["default"]),
2364
- "./_widget_/combine-fields/index.ts": () => import("./index-CG5LAGQp.js").then((m) => m["default"]),
2365
- "./_widget_/diagonal/index.ts": () => import("./index-DCv60fUG.js").then((m) => m["default"]),
2366
- "./_widget_/dyn-value/index.ts": () => import("./index-BdYI71iy.js").then((m) => m["default"]),
2367
- "./_widget_/image/index.ts": () => import("./index-BkoKoZbl.js").then((m) => m["default"]),
2368
- "./_widget_/line/index.ts": () => import("./index-Cj_t_73x.js").then((m) => m["default"]),
2369
- "./_widget_/power/index.ts": () => import("./index-Dru8lW-_.js").then((m) => m["default"]),
2370
- "./_widget_/qrcode/index.ts": () => import("./index-COmm7d4j.js").then((m) => m["default"]),
2371
- "./_widget_/ro/index.ts": () => import("./index-CjCFTTI3.js").then((m) => m["default"]),
2372
- "./_widget_/serialnumber/index.ts": () => import("./index-D4zDlgqU.js").then((m) => m["default"]),
2373
- "./_widget_/sub-table/index.ts": () => import("./index-BM1sPB29.js").then((m) => m["default"]),
2374
- "./_widget_/timediff/index.ts": () => import("./index-BWHnHAjs.js").then((m) => m["default"]),
2375
- "./paper/index.ts": () => import("./index-CyPwg8fV.js").then((m) => m["default"]),
2376
- "./td/index.ts": () => import("./index-CcB9d0A-.js").then((m) => m["default"]),
2377
- "./tr/index.ts": () => import("./index-lf11EIvP.js").then((m) => m["default"])
2349
+ "./_field_/auto-complete/index.ts": () => import("./index--kolAY9o.js").then((m) => m["default"]),
2350
+ "./_field_/datepicker/index.ts": () => import("./index-Bn5H-iFV.js").then((m) => m["default"]),
2351
+ "./_field_/datetimepicker/index.ts": () => import("./index-LOpDQbHn.js").then((m) => m["default"]),
2352
+ "./_field_/department/index.ts": () => import("./index-DiNxihKr.js").then((m) => m["default"]),
2353
+ "./_field_/enum-select/index.ts": () => import("./index-Refavqkv.js").then((m) => m["default"]),
2354
+ "./_field_/input/index.ts": () => import("./index-C-F1u_o7.js").then((m) => m["default"]),
2355
+ "./_field_/inputdouble/index.ts": () => import("./index-DJj0H4QE.js").then((m) => m["default"]),
2356
+ "./_field_/inputnumber/index.ts": () => import("./index-CAekmaIN.js").then((m) => m["default"]),
2357
+ "./_field_/rdo-select/index.ts": () => import("./index-CQkWk_7M.js").then((m) => m["default"]),
2358
+ "./_field_/seal/index.ts": () => import("./index-CQ0BwWRP.js").then((m) => m["default"]),
2359
+ "./_field_/select/index.ts": () => import("./index-CHS101Sz.js").then((m) => m["default"]),
2360
+ "./_field_/sign/index.ts": () => import("./index-DxaR4DCk.js").then((m) => m["default"]),
2361
+ "./_field_/switch/index.ts": () => import("./index-DQNLZ671.js").then((m) => m["default"]),
2362
+ "./_field_/textarea/index.ts": () => import("./index-Bw67kX4Y.js").then((m) => m["default"]),
2363
+ "./_field_/timepicker/index.ts": () => import("./index-BeYN1fxt.js").then((m) => m["default"]),
2364
+ "./_field_/upload-file/index.ts": () => import("./index-U90xa0_k.js").then((m) => m["default"]),
2365
+ "./_field_/upload-image/index.ts": () => import("./index-nGGsFW_9.js").then((m) => m["default"]),
2366
+ "./_field_/userpicker/index.ts": () => import("./index-DMOi4nAC.js").then((m) => m["default"]),
2367
+ "./_widget_/barcode/index.ts": () => import("./index-BzBMhjxB.js").then((m) => m["default"]),
2368
+ "./_widget_/combine-fields/index.ts": () => import("./index-DdxuhIJY.js").then((m) => m["default"]),
2369
+ "./_widget_/diagonal/index.ts": () => import("./index-BHxDpc-C.js").then((m) => m["default"]),
2370
+ "./_widget_/dyn-value/index.ts": () => import("./index-poil0x4K.js").then((m) => m["default"]),
2371
+ "./_widget_/image/index.ts": () => import("./index-ByeVrxVl.js").then((m) => m["default"]),
2372
+ "./_widget_/line/index.ts": () => import("./index-B9a9T8if.js").then((m) => m["default"]),
2373
+ "./_widget_/power/index.ts": () => import("./index-DqomTxsG.js").then((m) => m["default"]),
2374
+ "./_widget_/qrcode/index.ts": () => import("./index-RV5ozdPP.js").then((m) => m["default"]),
2375
+ "./_widget_/ro/index.ts": () => import("./index-CfyXGhk3.js").then((m) => m["default"]),
2376
+ "./_widget_/serialnumber/index.ts": () => import("./index-BgsXETEd.js").then((m) => m["default"]),
2377
+ "./_widget_/sub-table/index.ts": () => import("./index-Cn2_Yd7q.js").then((m) => m["default"]),
2378
+ "./_widget_/timediff/index.ts": () => import("./index-CIkhaEj4.js").then((m) => m["default"]),
2379
+ "./paper/index.ts": () => import("./index-w6agN1-G.js").then((m) => m["default"]),
2380
+ "./td/index.ts": () => import("./index-DxW-5l6p.js").then((m) => m["default"]),
2381
+ "./tr/index.ts": () => import("./index-BlLeFC1A.js").then((m) => m["default"])
2378
2382
  });
2379
2383
  return modules;
2380
2384
  }
@@ -11649,10 +11653,13 @@ const resolveQuickSearchConfig = (fieldMeta) => {
11649
11653
  const fields2 = getBasicSearchFields(fieldMeta);
11650
11654
  return { searchable: true, fields: fields2 };
11651
11655
  }
11656
+ const defaultType = resolveDefaultSearchType(fieldMeta);
11657
+ if (showDisplayAndSearchConfig(fieldMeta) && Array.isArray(fieldMeta.searchField)) {
11658
+ return { searchable: fieldMeta.searchField.length > 0, fields: fieldMeta.searchField };
11659
+ }
11652
11660
  if (fieldMeta.searchField?.length) {
11653
11661
  return { searchable: true, fields: fieldMeta.searchField };
11654
11662
  }
11655
- const defaultType = resolveDefaultSearchType(fieldMeta);
11656
11663
  if (defaultType === FIELD_TYPE.ROUTING_OPERATION || defaultType === FIELD_TYPE.OPERATION) {
11657
11664
  return { searchable: false, fields: [] };
11658
11665
  }
@@ -11667,6 +11674,7 @@ const resolveQuickSearchConfig = (fieldMeta) => {
11667
11674
  FIELD_TYPE.SHOPFLOOR,
11668
11675
  "storage_zone"
11669
11676
  ].includes(defaultType)) {
11677
+ if (showDisplayAndSearchConfig(fieldMeta)) return { searchable: false, fields: [] };
11670
11678
  const fields2 = [...DEFAULT_QUICK_SEARCH_FIELDS[defaultType || ""]];
11671
11679
  return { searchable: true, fields: fields2 };
11672
11680
  }
@@ -16014,7 +16022,7 @@ function asyncImportWidgetConfigList() {
16014
16022
  return widgetConfigList;
16015
16023
  }
16016
16024
  function asyncImportWidgetDesign() {
16017
- const modules = /* @__PURE__ */ Object.assign({ "../__cell_widgets__/cell-widget-design.vue": () => Promise.resolve().then(() => cellWidgetDesign), "../__cell_widgets__/seal/seal-design.vue": () => import("./seal-design-CtzWGxnH.js"), "./barcode/barcode-design.vue": () => import("./barcode-design-CzlfYJ3s.js"), "./diagonal/diagonal-design.vue": () => import("./diagonal-design-DCVidBZD.js"), "./image/image-design.vue": () => import("./image-design-Cx1YIea4.js"), "./line/line-design.vue": () => Promise.resolve().then(() => lineDesign), "./pagination/pagination-design.vue": () => import("./pagination-design-DJEw5vlL.js"), "./paper-widget-design.vue": () => import("./paper-widget-design-C3rm4SzP.js"), "./power/power-design.vue": () => Promise.resolve().then(() => powerDesign), "./qrcode/qrcode-design.vue": () => import("./qrcode-design-9jPH-S8z.js"), "./rangelimit/rangelimit-design.vue": () => Promise.resolve().then(() => rangelimitDesign), "./serialnumber/serialnumber-design.vue": () => import("./serialnumber-design-BsfJH6Kp.js"), "./text/text-design.vue": () => import("./text-design-DmLrMqdk.js"), "./timediff/timediff-design.vue": () => import("./timediff-design-CYqz1SKQ.js") });
16025
+ const modules = /* @__PURE__ */ Object.assign({ "../__cell_widgets__/cell-widget-design.vue": () => Promise.resolve().then(() => cellWidgetDesign), "../__cell_widgets__/seal/seal-design.vue": () => import("./seal-design-BnXd0buM.js"), "./barcode/barcode-design.vue": () => import("./barcode-design-BDHtEF3j.js"), "./diagonal/diagonal-design.vue": () => import("./diagonal-design-DLxRO_uM.js"), "./image/image-design.vue": () => import("./image-design-Cjob0qMO.js"), "./line/line-design.vue": () => Promise.resolve().then(() => lineDesign), "./pagination/pagination-design.vue": () => import("./pagination-design-CuM2_cOO.js"), "./paper-widget-design.vue": () => import("./paper-widget-design-OVR0zocz.js"), "./power/power-design.vue": () => Promise.resolve().then(() => powerDesign), "./qrcode/qrcode-design.vue": () => import("./qrcode-design-CO631M71.js"), "./rangelimit/rangelimit-design.vue": () => Promise.resolve().then(() => rangelimitDesign), "./serialnumber/serialnumber-design.vue": () => import("./serialnumber-design-DxGYVdk3.js"), "./text/text-design.vue": () => import("./text-design-CCJVszh9.js"), "./timediff/timediff-design.vue": () => import("./timediff-design-DE0Lb5-J.js") });
16018
16026
  const widgetDesignMap = Object.keys(modules).reduce((map2, path) => {
16019
16027
  const mKey = path.match(/\/([a-z]+)-design\.vue$/)?.[1];
16020
16028
  if (mKey) {
@@ -33832,6 +33840,7 @@ const fifteenDigitTypes = /* @__PURE__ */ new Set([
33832
33840
  FIELD_TYPE.GOOD_QTY,
33833
33841
  FIELD_TYPE.NOT_GOOD_QTY,
33834
33842
  FIELD_TYPE.PRODUCT_CHECK_QTY,
33843
+ FIELD_TYPE.PRODUCT_RELEASE_QTY,
33835
33844
  FIELD_TYPE.DESTRUCTIVE_TEST_QTY,
33836
33845
  FIELD_TYPE.OPERATION_OUTPUT_QTY,
33837
33846
  FIELD_TYPE.OPERATION_RECEIVE_QTY,
@@ -34498,6 +34507,7 @@ const _sfc_main$4A = /* @__PURE__ */ defineComponent({
34498
34507
  FIELD_TYPE.SCRAP_QTY,
34499
34508
  FIELD_TYPE.DESTRUCTIVE_TEST_QTY,
34500
34509
  FIELD_TYPE.PRODUCT_CHECK_QTY,
34510
+ FIELD_TYPE.PRODUCT_RELEASE_QTY,
34501
34511
  FIELD_TYPE.MATERIAL_CHECK_QTY,
34502
34512
  FIELD_TYPE.INSPECTION_QTY,
34503
34513
  FIELD_TYPE.INSPECTION_MODULE_QTY
@@ -35731,7 +35741,13 @@ const _sfc_main$4m = /* @__PURE__ */ defineComponent({
35731
35741
  };
35732
35742
  }
35733
35743
  });
35734
- const getDefaultDisplayFieldConfig = (_fieldType) => {
35744
+ const DEFAULT_DISPLAY_FIELDS_MAP = {
35745
+ material: ["code_", "name_", "spec_", "uom_id_", "description_"]
35746
+ };
35747
+ const getDefaultDisplayFieldConfig = (fieldType) => {
35748
+ if ([FIELD_TYPE.PRODUCT, FIELD_TYPE.SCRAP_MATERIAL].includes(fieldType)) {
35749
+ return { keys: DEFAULT_DISPLAY_FIELDS_MAP.material, unremovableKeys: ["code_"] };
35750
+ }
35735
35751
  return { keys: [], unremovableKeys: [] };
35736
35752
  };
35737
35753
  const retainsLegacyDisplayFields = (fieldType) => [
@@ -37259,7 +37275,7 @@ const _sfc_main$4j = /* @__PURE__ */ defineComponent({
37259
37275
  return { options, values, displayTitle };
37260
37276
  });
37261
37277
  const unremovableKeys = computed(() => {
37262
- return (props2.displayFields || []).filter((o) => o._dfUnremovable).map((o) => o._dfValue);
37278
+ return (props2.displayFields || []).filter((o) => o._dfUnremovable || defaultConfig.value.unremovableKeys.includes(o.key)).map((o) => o._dfValue);
37263
37279
  });
37264
37280
  const handleOpenModal = () => {
37265
37281
  open({
@@ -37282,19 +37298,22 @@ const _sfc_main$4j = /* @__PURE__ */ defineComponent({
37282
37298
  _dfValue: f.id,
37283
37299
  _dfUnremovable: defaultConfig.value.unremovableKeys.includes(f.key)
37284
37300
  }));
37285
- emit2("update:displayFields", fields);
37301
+ const locked = (props2.displayFields || []).filter(
37302
+ (field) => defaultConfig.value.unremovableKeys.includes(field.key) && !fields.some((item) => item.key === field.key)
37303
+ );
37304
+ emit2("update:displayFields", [...locked, ...fields]);
37286
37305
  }
37287
37306
  });
37288
37307
  };
37289
37308
  const handleSelectChange = (remainingKeys) => {
37290
37309
  if (props2.disabled) return;
37291
37310
  const options = (props2.displayFields || []).filter((o) => {
37292
- return o._dfUnremovable ? true : remainingKeys.includes(o._dfValue);
37311
+ return unremovableKeys.value.includes(o._dfValue) || remainingKeys.includes(o._dfValue);
37293
37312
  });
37294
37313
  emit2("update:displayFields", options);
37295
37314
  };
37296
37315
  const handleTagClose = (val) => {
37297
- if (props2.disabled) return;
37316
+ if (props2.disabled || unremovableKeys.value.includes(val)) return;
37298
37317
  const options = (props2.displayFields || []).filter((o) => o._dfValue !== val);
37299
37318
  emit2("update:displayFields", options);
37300
37319
  };
@@ -37306,13 +37325,15 @@ const _sfc_main$4j = /* @__PURE__ */ defineComponent({
37306
37325
  if (!shouldInit) return;
37307
37326
  if (!refModelKey) return;
37308
37327
  const retainsDefaults = retainsLegacyDisplayFields(fieldMeta.bizType || fieldType) || fieldMeta.field?.split("$").pop() === "part_id_";
37309
- if (!retainsDefaults) {
37328
+ if (!retainsDefaults && !defaultConfig.value.keys.length) {
37310
37329
  emit2("update:displayFields", []);
37311
37330
  return;
37312
37331
  }
37313
- const { unremovableKeys: unremovableKeys2 } = getDefaultDisplayFieldConfig(fieldMeta.bizType || fieldType);
37332
+ const { keys: defaultKeys, unremovableKeys: unremovableKeys2 } = defaultConfig.value;
37314
37333
  const keys2 = Array.from(
37315
- new Set((props2.legacySearchFields || []).map((key) => key.split(".")[0]))
37334
+ new Set(
37335
+ defaultKeys.length ? defaultKeys : (props2.legacySearchFields || []).map((key) => key.split(".")[0])
37336
+ )
37316
37337
  );
37317
37338
  if (!keys2.length) return;
37318
37339
  if (!modelMetaMap2.value[refModelKey]) {
@@ -37343,7 +37364,7 @@ const _sfc_main$4j = /* @__PURE__ */ defineComponent({
37343
37364
  mode: "multiple",
37344
37365
  showArrow: "",
37345
37366
  "max-tag-count": "responsive",
37346
- allowClear: !__props.disabled,
37367
+ allowClear: !__props.disabled && !defaultConfig.value.unremovableKeys.length,
37347
37368
  open: false,
37348
37369
  showSearch: false,
37349
37370
  options: selectorInfo.value.options,
@@ -37375,7 +37396,7 @@ const _sfc_main$4j = /* @__PURE__ */ defineComponent({
37375
37396
  };
37376
37397
  }
37377
37398
  });
37378
- const DisplayFieldsEditor = /* @__PURE__ */ _export_sfc(_sfc_main$4j, [["__scopeId", "data-v-9a44d291"]]);
37399
+ const DisplayFieldsEditor = /* @__PURE__ */ _export_sfc(_sfc_main$4j, [["__scopeId", "data-v-2593d6b8"]]);
37379
37400
  const _hoisted_1$2q = {
37380
37401
  key: 0,
37381
37402
  class: "quick-search-editor"
@@ -53354,7 +53375,7 @@ const _sfc_main$3b = /* @__PURE__ */ defineComponent({
53354
53375
  }
53355
53376
  });
53356
53377
  function asyncImportWidgetProp() {
53357
- const modules = /* @__PURE__ */ Object.assign({ "./widget-barcode.vue": () => import("./widget-barcode-DwYihxgd.js"), "./widget-diagonal.vue": () => import("./widget-diagonal-DWdxDYVl.js"), "./widget-image.vue": () => import("./widget-image-D1SXIbMU.js"), "./widget-line.vue": () => import("./widget-line-BNTbSFkx.js"), "./widget-pagination.vue": () => import("./widget-pagination-25CKNe-i.js"), "./widget-power.vue": () => import("./widget-power-BSjWdgM3.js"), "./widget-qrcode.vue": () => import("./widget-qrcode-Kbe9Skrd.js"), "./widget-rangelimit.vue": () => import("./widget-rangelimit-TWPoG8DX.js"), "./widget-serialnumber.vue": () => import("./widget-serialnumber-uNkQzBIT.js"), "./widget-text.vue": () => import("./widget-text-DH4r60jo.js"), "./widget-timediff.vue": () => import("./widget-timediff-Bv8VCgrv.js") });
53378
+ const modules = /* @__PURE__ */ Object.assign({ "./widget-barcode.vue": () => import("./widget-barcode-BiqBkpJf.js"), "./widget-diagonal.vue": () => import("./widget-diagonal-DEPOR_xL.js"), "./widget-image.vue": () => import("./widget-image-CT0b6oE3.js"), "./widget-line.vue": () => import("./widget-line-CencIyCA.js"), "./widget-pagination.vue": () => import("./widget-pagination-CLokA4N9.js"), "./widget-power.vue": () => import("./widget-power-BPxteor_.js"), "./widget-qrcode.vue": () => import("./widget-qrcode-gYHAR233.js"), "./widget-rangelimit.vue": () => import("./widget-rangelimit-BJKYDkcT.js"), "./widget-serialnumber.vue": () => import("./widget-serialnumber-BCPB7hqo.js"), "./widget-text.vue": () => import("./widget-text-D_CGo-mQ.js"), "./widget-timediff.vue": () => import("./widget-timediff-cBekBImJ.js") });
53358
53379
  const widgetPropMap = Object.keys(modules).reduce((map2, path) => {
53359
53380
  const mKey = path.match(/\/widget-([a-z]+)\.vue$/)?.[1];
53360
53381
  if (mKey) {
@@ -56193,6 +56214,7 @@ const getDisplayFieldColumns = (displayFields, isTree = false) => {
56193
56214
  const fragmentKey = key ? knownFieldToFragment[key] : void 0;
56194
56215
  const base = fragmentKey ? getColumns([fragmentKey])[0] : void 0;
56195
56216
  return {
56217
+ ...baseColumnConfig,
56196
56218
  ...base,
56197
56219
  title: name || base?.title || key,
56198
56220
  field: key,
@@ -56210,7 +56232,10 @@ function renderWithFormatter(column = {}, row = {}) {
56210
56232
  if (typeof formatter === "function") {
56211
56233
  return formatter({ cellValue, row, column }) || params.defaultValueStr || "--";
56212
56234
  }
56213
- return cellValue ?? params.defaultValueStr ?? "--";
56235
+ const raw = normalizeHistoricalBusinessRow(row);
56236
+ const dictValue = (row?._DICT ?? raw?._DICT)?.[field]?.[cellValue];
56237
+ const displayValue = Array.isArray(dictValue) ? dictValue.join("") : dictValue ?? cellValue;
56238
+ return displayValue ?? params.defaultValueStr ?? "--";
56214
56239
  }
56215
56240
  const transformTreeData = (options = [], currentValue) => {
56216
56241
  const highlightIdx = { parent: -1, child: -1 };
@@ -60222,7 +60247,7 @@ function useObjectInit() {
60222
60247
  const currentModelFields = computed(() => allModelFields.value.filter(isObjectInitField));
60223
60248
  const objectFields = computed(
60224
60249
  () => currentModelFields.value.filter(
60225
- (item) => item.type === FIELD_TYPE.OBJECT_TYPE && !isDateObjectField(item)
60250
+ (item) => item.type === FIELD_TYPE.OBJECT_TYPE && item.bizType === FIELD_TYPE.MATERIAL_CONSUME
60226
60251
  )
60227
60252
  );
60228
60253
  const configuredItems = computed(() => {
@@ -61528,6 +61553,113 @@ function useSearchEnter({
61528
61553
  }
61529
61554
  };
61530
61555
  }
61556
+ async function fetchCollinearContainerIds(containerId) {
61557
+ const res = await api.apaas.modelComprehensive.postBizServiceModelCategoryModelKeyBsKey(
61558
+ { modelCategory: "entity", modelKey: "em_container", bsKey: "listAll" },
61559
+ {},
61560
+ { query: { collinear_production_container_id_: containerId } }
61561
+ );
61562
+ if (res == null || typeof res === "object" && "ok" in res && res.ok === false) {
61563
+ throw new Error("查询放行单共线批次失败");
61564
+ }
61565
+ const data = typeof res === "object" && "data" in res ? res.data : res;
61566
+ const rows = Array.isArray(data) ? data : data && typeof data === "object" && "data" in data && Array.isArray(data.data) ? data.data : [];
61567
+ return [
61568
+ ...new Set(rows.flatMap((row) => row.id_ != null && row.id_ !== "" ? [String(row.id_)] : []))
61569
+ ];
61570
+ }
61571
+ const productReleaseProfile = {
61572
+ businessType: "PRODUCT_RELEASE",
61573
+ fieldQueries: [
61574
+ {
61575
+ id: "collinear-lots",
61576
+ match: { fieldType: FIELD_TYPE.MATERIAL_NO },
61577
+ cache: {
61578
+ key: ({ paramsConfig }) => {
61579
+ const id = paramsConfig.containerId;
61580
+ return id != null && id !== "" ? String(id) : null;
61581
+ }
61582
+ },
61583
+ resolveFilters: async ({ paramsConfig }) => {
61584
+ const containerId = paramsConfig.containerId;
61585
+ if (containerId == null || containerId === "") return [];
61586
+ const ids = await fetchCollinearContainerIds(String(containerId));
61587
+ return ids.length ? [{ field: "id_", operator: "in", values: ids }] : [];
61588
+ }
61589
+ }
61590
+ ]
61591
+ };
61592
+ const profiles = [productReleaseProfile];
61593
+ const profileByBusinessType = new Map(profiles.map((profile) => [profile.businessType, profile]));
61594
+ function getDocumentBusinessProfile(businessType) {
61595
+ return businessType ? profileByBusinessType.get(businessType) : void 0;
61596
+ }
61597
+ async function resolveBusinessFieldFilters(context) {
61598
+ const profile = getDocumentBusinessProfile(context.businessType);
61599
+ if (!profile) return [];
61600
+ const rules = profile.fieldQueries.filter((rule) => rule.match.fieldType === context.fieldType);
61601
+ const results = await Promise.all(
61602
+ rules.map(async (rule) => {
61603
+ try {
61604
+ if (!rule.cache) return await rule.resolveFilters(context);
61605
+ return await withRequestCache.handleRequest(
61606
+ "document-business-field-query",
61607
+ {
61608
+ businessType: profile.businessType,
61609
+ ruleId: rule.id,
61610
+ key: rule.cache.key(context)
61611
+ },
61612
+ () => rule.resolveFilters(context),
61613
+ rule.cache.ttlMs
61614
+ );
61615
+ } catch {
61616
+ return [];
61617
+ }
61618
+ })
61619
+ );
61620
+ return results.flat();
61621
+ }
61622
+ const EMPTY_QUERY_VALUE = "__excel_no_matching_query_value__";
61623
+ function joinAnd(expressions) {
61624
+ return expressions.length > 1 ? `AND(${expressions.join(",")})` : expressions[0] ?? "";
61625
+ }
61626
+ function splitAndTerms(expression) {
61627
+ if (!expression.startsWith("AND(") || !expression.endsWith(")")) return [expression];
61628
+ const inner = expression.slice(4, -1);
61629
+ const terms = [];
61630
+ let depth = 0;
61631
+ let start = 0;
61632
+ for (let index2 = 0; index2 < inner.length; index2++) {
61633
+ const char = inner[index2];
61634
+ if (char === "(") depth++;
61635
+ if (char === ")" && --depth < 0) return [expression];
61636
+ if (char === "," && depth === 0) {
61637
+ terms.push(inner.slice(start, index2).trim());
61638
+ start = index2 + 1;
61639
+ }
61640
+ }
61641
+ terms.push(inner.slice(start).trim());
61642
+ if (depth !== 0 || terms.some((term) => !term)) return [expression];
61643
+ return terms.flatMap(splitAndTerms);
61644
+ }
61645
+ function mergeQueryFilters(query, filters) {
61646
+ if (!filters.length) return query;
61647
+ const queryData = { ...query.queryData };
61648
+ const baseExp = query.exp || joinAnd(Object.keys(queryData));
61649
+ const expressions = new Set(baseExp ? splitAndTerms(baseExp) : []);
61650
+ for (const filter of filters) {
61651
+ const key = `${filter.field}.${filter.operator}`;
61652
+ let values = [...new Set(filter.values)];
61653
+ const existing = queryData[key];
61654
+ if (Array.isArray(existing) && existing.length) {
61655
+ const existingValues = new Set(existing.map(String));
61656
+ values = values.filter((value) => existingValues.has(value));
61657
+ }
61658
+ queryData[key] = values.length ? values : [EMPTY_QUERY_VALUE];
61659
+ expressions.add(key);
61660
+ }
61661
+ return { ...query, queryData, exp: joinAnd([...expressions]) };
61662
+ }
61531
61663
  const _hoisted_1$1g = { class: "search-actions" };
61532
61664
  const _sfc_main$2k = /* @__PURE__ */ defineComponent({
61533
61665
  __name: "lot-select-table",
@@ -61558,8 +61690,14 @@ const _sfc_main$2k = /* @__PURE__ */ defineComponent({
61558
61690
  const {
61559
61691
  options: initialOptions,
61560
61692
  newTotalCount,
61561
- customLoaderRef
61693
+ customLoaderRef,
61694
+ dataRelationShip
61562
61695
  } = useWidgetStaticAttrs(props2.widget);
61696
+ const businessContext = computed(() => ({
61697
+ businessType: dataRelationShip?.businessType,
61698
+ paramsConfig: dataRelationShip?.paramsConfig ?? {},
61699
+ fieldType: props2.widget.props.bizType || props2.widget.props.fieldType
61700
+ }));
61563
61701
  const searchForm = ref({
61564
61702
  keyword: void 0
61565
61703
  });
@@ -61568,7 +61706,9 @@ const _sfc_main$2k = /* @__PURE__ */ defineComponent({
61568
61706
  return getColumns(["radio", "lot2sn", "productCode", "productName", "productSpec"]);
61569
61707
  });
61570
61708
  const fetcher = async ({ keyword: keyword2 = "", pageNo, pageSize: pageSize2 }) => {
61571
- const { queryData, exp } = buildLotSnListQuery(keyword2, props2.extraQuery);
61709
+ const baseQuery = buildLotSnListQuery(keyword2, props2.extraQuery);
61710
+ const businessFilters = await resolveBusinessFieldFilters(businessContext.value);
61711
+ const { queryData, exp } = mergeQueryFilters(baseQuery, businessFilters);
61572
61712
  const res = await renderUtils.requestLot2SnOptions({
61573
61713
  isMaterialConsumeField: props2.widget.props.isMaterialConsumeField,
61574
61714
  customLoader: customLoaderRef.value,
@@ -61587,7 +61727,10 @@ const _sfc_main$2k = /* @__PURE__ */ defineComponent({
61587
61727
  highlightIdx: info.highlightIdx
61588
61728
  };
61589
61729
  };
61590
- const usePreloaded = !customLoaderRef.value && !Object.keys(props2.extraQuery || {}).length;
61730
+ const hasBusinessQuery = getDocumentBusinessProfile(
61731
+ businessContext.value.businessType
61732
+ )?.fieldQueries.some((rule) => rule.match.fieldType === businessContext.value.fieldType);
61733
+ const usePreloaded = !hasBusinessQuery && !customLoaderRef.value && !Object.keys(props2.extraQuery || {}).length;
61591
61734
  const initialParams = usePreloaded ? merge(
61592
61735
  {},
61593
61736
  transformLotData(
@@ -61611,6 +61754,7 @@ const _sfc_main$2k = /* @__PURE__ */ defineComponent({
61611
61754
  },
61612
61755
  { deep: true }
61613
61756
  );
61757
+ watch(businessContext, () => search(searchForm.value.keyword), { deep: true });
61614
61758
  const paginationAttr = computed(() => ({
61615
61759
  current: pagination.current,
61616
61760
  pageSize: pagination.pageSize,
@@ -61715,7 +61859,7 @@ const _sfc_main$2k = /* @__PURE__ */ defineComponent({
61715
61859
  };
61716
61860
  }
61717
61861
  });
61718
- const LotSelectTable = /* @__PURE__ */ _export_sfc(_sfc_main$2k, [["__scopeId", "data-v-601a640e"]]);
61862
+ const LotSelectTable = /* @__PURE__ */ _export_sfc(_sfc_main$2k, [["__scopeId", "data-v-f451e686"]]);
61719
61863
  const INITIAL_WRAPPER_HEIGHT = 360;
61720
61864
  const POPOVER_PADDING = 16;
61721
61865
  const SEARCH_BLOCK_HEIGHT = 44;
@@ -64834,6 +64978,9 @@ const _sfc_main$1$ = /* @__PURE__ */ defineComponent({
64834
64978
  } = useWidgetStaticAttrs(props2.widget);
64835
64979
  const searchField = computed(() => {
64836
64980
  const realFieldType = bizType || fieldType;
64981
+ if (Array.isArray(quickSearchField) && !quickSearchField.length) {
64982
+ return [];
64983
+ }
64837
64984
  const basicFields = [FIELD_TYPE.PRODUCT, FIELD_TYPE.SCRAP_MATERIAL].includes(realFieldType) ? ["code_.like", "version_.like", "name_.like", "spec_.like"] : [];
64838
64985
  const configuredFields = (() => {
64839
64986
  if (quickSearchField?.length) return quickSearchField;
@@ -65002,7 +65149,7 @@ const _sfc_main$1$ = /* @__PURE__ */ defineComponent({
65002
65149
  };
65003
65150
  }
65004
65151
  });
65005
- const RdoSelectTable = /* @__PURE__ */ _export_sfc(_sfc_main$1$, [["__scopeId", "data-v-ca7c40d7"]]);
65152
+ const RdoSelectTable = /* @__PURE__ */ _export_sfc(_sfc_main$1$, [["__scopeId", "data-v-ba907b47"]]);
65006
65153
  const _hoisted_1$1b = { class: "rdo-select-tree" };
65007
65154
  const _hoisted_2$O = {
65008
65155
  key: 0,
@@ -65261,11 +65408,17 @@ const _sfc_main$1Z = /* @__PURE__ */ defineComponent({
65261
65408
  const emit2 = __emit;
65262
65409
  const { field, bizType, fieldType, modelKey, refModelKey, customLoaderRef } = useWidgetStaticAttrs(props2.widget);
65263
65410
  const keyword2 = ref();
65411
+ const selectionValue = computed(
65412
+ () => customLoaderRef.value?.getSelectedKey ? customLoaderRef.value.getSelectedKey() : props2.modelValue
65413
+ );
65264
65414
  const showSearch = computed(
65265
- () => (props2.widget.props.displayFields || []).some((item) => item?.key) && (!!props2.widget.props.quickSearchField?.length || (bizType || fieldType) === FIELD_TYPE.MFG_ORDER)
65415
+ () => (props2.widget.props.displayFields || []).some((item) => item?.key) && !!props2.widget.props.quickSearchField?.length
65266
65416
  );
65267
- function formatDisplayCell({ cellValue }) {
65268
- return cellValue === "" || cellValue === null || cellValue === void 0 ? "--" : cellValue;
65417
+ function formatDisplayCell({ cellValue, row, column }) {
65418
+ const raw = row?._item ?? row;
65419
+ const dictValue = (row?._DICT ?? raw?._DICT)?.[column.field]?.[cellValue];
65420
+ const displayValue = Array.isArray(dictValue) ? dictValue.join("") : dictValue ?? cellValue;
65421
+ return displayValue === "" || displayValue === null || displayValue === void 0 ? "--" : displayValue;
65269
65422
  }
65270
65423
  const columns = computed(() => [
65271
65424
  ...getColumns(["radio"]),
@@ -65273,13 +65426,15 @@ const _sfc_main$1Z = /* @__PURE__ */ defineComponent({
65273
65426
  title: name,
65274
65427
  field: key,
65275
65428
  minWidth: 170,
65429
+ showOverflow: true,
65430
+ align: "left",
65276
65431
  slots: { default: "default" },
65277
65432
  formatter: formatDisplayCell
65278
65433
  }))
65279
65434
  ]);
65280
65435
  const fetcher = async ({ keyword: keyword22 = "", pageNo, pageSize: pageSize2 }) => {
65281
65436
  const queryData = {
65282
- operating_state_: (bizType || fieldType) === FIELD_TYPE.SHOPFLOOR ? true : void 0,
65437
+ ...(bizType || fieldType) === FIELD_TYPE.SHOPFLOOR ? { operating_state_: true } : {},
65283
65438
  ...props2.extraQuery
65284
65439
  };
65285
65440
  const searchFields = props2.widget.props.quickSearchField?.length ? props2.widget.props.quickSearchField : [(bizType || fieldType) === FIELD_TYPE.MFG_ORDER ? "code_" : "name_", "code_"];
@@ -65300,14 +65455,14 @@ const _sfc_main$1Z = /* @__PURE__ */ defineComponent({
65300
65455
  ...option2._item,
65301
65456
  _item: option2._item,
65302
65457
  _option: option2,
65303
- __VALUE__: option2.value
65458
+ __VALUE__: customLoaderRef.value?.getOptionKey?.(option2) ?? option2.value
65304
65459
  }));
65305
65460
  return {
65306
65461
  data,
65307
65462
  totalCount: Number(res.totalCount ?? 0),
65308
65463
  highlightIdx: {
65309
65464
  index: data.flatMap(
65310
- (row, index2) => row.__VALUE__ === props2.modelValue ? [index2] : []
65465
+ (row, index2) => row.__VALUE__ === selectionValue.value ? [index2] : []
65311
65466
  )
65312
65467
  }
65313
65468
  };
@@ -65386,7 +65541,7 @@ const _sfc_main$1Z = /* @__PURE__ */ defineComponent({
65386
65541
  ref: xTable,
65387
65542
  columns: columns.value,
65388
65543
  tableData: unref(tableData),
65389
- modelValue: __props.modelValue,
65544
+ modelValue: selectionValue.value,
65390
65545
  loading: unref(loading2),
65391
65546
  paginationAttr: paginationAttr.value,
65392
65547
  wrapperHeight: __props.wrapperHeight,
@@ -65399,7 +65554,7 @@ const _sfc_main$1Z = /* @__PURE__ */ defineComponent({
65399
65554
  };
65400
65555
  }
65401
65556
  });
65402
- const TraceRefSelectTable = /* @__PURE__ */ _export_sfc(_sfc_main$1Z, [["__scopeId", "data-v-b48ca019"]]);
65557
+ const TraceRefSelectTable = /* @__PURE__ */ _export_sfc(_sfc_main$1Z, [["__scopeId", "data-v-3fc5ac60"]]);
65403
65558
  const _sfc_main$1Y = /* @__PURE__ */ defineComponent({
65404
65559
  ...{ inheritAttrs: false },
65405
65560
  __name: "parse-select",
@@ -65712,7 +65867,7 @@ const _sfc_main$1X = /* @__PURE__ */ defineComponent({
65712
65867
  emits: ["update:value", "change"],
65713
65868
  setup(__props, { expose: __expose, emit: __emit }) {
65714
65869
  const props2 = __props;
65715
- const { setRowField } = useRuntimeRowState(() => props2.formData);
65870
+ const { setRowField, patchRow } = useRuntimeRowState(() => props2.formData);
65716
65871
  const emit2 = __emit;
65717
65872
  const {
65718
65873
  field,
@@ -65886,11 +66041,23 @@ const _sfc_main$1X = /* @__PURE__ */ defineComponent({
65886
66041
  emit2("update:value", null);
65887
66042
  }
65888
66043
  };
65889
- function setVisible(visible) {
65890
- if (open.value === visible) {
66044
+ let visibilityRequest = 0;
66045
+ async function setVisible(visible) {
66046
+ const request = ++visibilityRequest;
66047
+ const loader = customLoaderRef.value;
66048
+ if (!visible || !loader?.beforeOpen) {
66049
+ open.value = visible && !showDisabled.value;
65891
66050
  return;
65892
66051
  }
65893
- open.value = visible;
66052
+ if (open.value || showDisabled.value) return;
66053
+ const result = await loader.beforeOpen();
66054
+ if (request !== visibilityRequest || loader !== customLoaderRef.value || showDisabled.value)
66055
+ return;
66056
+ if (!result.allowed) {
66057
+ if (result.message) message.error(result.message);
66058
+ return;
66059
+ }
66060
+ open.value = true;
65894
66061
  }
65895
66062
  function visibleChange(visible) {
65896
66063
  if (!visible) {
@@ -65993,7 +66160,7 @@ const _sfc_main$1X = /* @__PURE__ */ defineComponent({
65993
66160
  __RDO_LABEL__,
65994
66161
  __VERSION_NAME__
65995
66162
  } = record || {};
65996
- const value = __VALUE__ || id_ || null;
66163
+ const value = (useFlatCustomTable.value ? record?._option?.value : void 0) ?? (__VALUE__ || id_ || null);
65997
66164
  const rawRecord = record?._item ?? record;
65998
66165
  const optionLabel = record?._option?.label || record?.["product_id_.name_"] || rawRecord?.["product_id_.name_"] || rawRecord?._OPCT?.["product_id_.name_"] || record?.product_id_name_ || record?.label || record?.__LABEL__ || record?.name_;
65999
66166
  let showValue;
@@ -66050,6 +66217,9 @@ const _sfc_main$1X = /* @__PURE__ */ defineComponent({
66050
66217
  }
66051
66218
  );
66052
66219
  }
66220
+ if (useFlatCustomTable.value && customLoaderRef.value?.getSelectionPatch) {
66221
+ patchRow(customLoaderRef.value.getSelectionPatch(rawRecord), "user");
66222
+ }
66053
66223
  open.value = false;
66054
66224
  if (useFlatCustomTable.value) {
66055
66225
  emit2("change", showValue, record);
@@ -66143,7 +66313,7 @@ const _sfc_main$1X = /* @__PURE__ */ defineComponent({
66143
66313
  };
66144
66314
  }
66145
66315
  });
66146
- const TraceRdoSelect = /* @__PURE__ */ _export_sfc(_sfc_main$1X, [["__scopeId", "data-v-f00b4ba0"]]);
66316
+ const TraceRdoSelect = /* @__PURE__ */ _export_sfc(_sfc_main$1X, [["__scopeId", "data-v-1493d589"]]);
66147
66317
  const _hoisted_1$1a = { class: "allocate-product__dropdown" };
66148
66318
  const _sfc_main$1W = /* @__PURE__ */ defineComponent({
66149
66319
  __name: "allocate-product",
@@ -67367,7 +67537,7 @@ const VuePdf = /* @__PURE__ */ defineComponent({
67367
67537
  }
67368
67538
  });
67369
67539
  const VueVideoPlayer = defineAsyncComponent(
67370
- () => import("./VueVideoPlayer-DHqhqgGs.js")
67540
+ () => import("./VueVideoPlayer-CQ3WMohj.js")
67371
67541
  );
67372
67542
  const _hoisted_1$19 = {
67373
67543
  key: 0,
@@ -68513,12 +68683,6 @@ const _sfc_main$1P = /* @__PURE__ */ defineComponent({
68513
68683
  const displayFields = computed(() => {
68514
68684
  const configured = props2.widget.props.displayFields;
68515
68685
  if (configured !== void 0) return configured.filter((item) => item?.key);
68516
- if ([FIELD_TYPE.WAREHOUSE, FIELD_TYPE.TARGET_WAREHOUSE].includes(fieldType) || [FIELD_TYPE.WAREHOUSE, FIELD_TYPE.TARGET_WAREHOUSE].includes(bizType) || ["warehouse_id_", "target_warehouse_id_", "origin_warehouse_id_"].includes(field)) {
68517
- return [
68518
- { key: "name_", name: $t2("sys.name") },
68519
- { key: "code_", name: $t2("sys.edhr.field.code") }
68520
- ];
68521
- }
68522
68686
  return [];
68523
68687
  });
68524
68688
  const multiple = fieldType === FIELD_TYPE.REF_MULTI || fieldType === FIELD_TYPE.DEVICE_REF_MULTI;
@@ -68535,8 +68699,11 @@ const _sfc_main$1P = /* @__PURE__ */ defineComponent({
68535
68699
  const isRoutingOperation = fieldType === FIELD_TYPE.ROUTING_OPERATION || bizType === FIELD_TYPE.ROUTING_OPERATION;
68536
68700
  const isOperationRef = !isRoutingOperation && (bizType === FIELD_TYPE.OPERATION || fieldType === FIELD_TYPE.OPERATION || refModelKey === "em_operation");
68537
68701
  const isWarehouseSelect = [FIELD_TYPE.WAREHOUSE, FIELD_TYPE.TARGET_WAREHOUSE].includes(fieldType) || [FIELD_TYPE.WAREHOUSE, FIELD_TYPE.TARGET_WAREHOUSE].includes(bizType) || ["warehouse_id_", "target_warehouse_id_", "origin_warehouse_id_"].includes(field);
68702
+ const isWarehouseFamilySelect = isWarehouseSelect || fieldType === FIELD_TYPE.LOCATION || bizType === FIELD_TYPE.LOCATION || ["location_id_", "target_location_id_", "origin_location_id_", "storage_zone_id_"].includes(
68703
+ field
68704
+ );
68538
68705
  const useDisplayFieldSelect = computed(
68539
- () => (isGroup || isReason || isRoutingOperation || isOperationRef || isWarehouseSelect || bizType === FIELD_TYPE.PRODUCT || fieldType === FIELD_TYPE.PRODUCT || bizType === FIELD_TYPE.SCRAP_MATERIAL || fieldType === FIELD_TYPE.SCRAP_MATERIAL) && displayFields.value.length >= 2
68706
+ () => (isGroup || isReason || isRoutingOperation || isOperationRef || isWarehouseFamilySelect || bizType === FIELD_TYPE.MODEL_RELATION && !multiple || bizType === FIELD_TYPE.PRODUCT || fieldType === FIELD_TYPE.PRODUCT || bizType === FIELD_TYPE.SCRAP_MATERIAL || fieldType === FIELD_TYPE.SCRAP_MATERIAL) && displayFields.value.length >= 2
68540
68707
  );
68541
68708
  const defaultDeviceSearchField = ["name_.iLike", "code_.iLike", "asset_number_.iLike"];
68542
68709
  const defaultProductLotSearchField = ["name_.iLike"];
@@ -68547,6 +68714,7 @@ const _sfc_main$1P = /* @__PURE__ */ defineComponent({
68547
68714
  if ((bizType || fieldType) === FIELD_TYPE.E_SOP || isRoutingOperation || isOperationRef) {
68548
68715
  return [];
68549
68716
  }
68717
+ if (Array.isArray(quickSearchField)) return [];
68550
68718
  if (customLoaderRef.value) return ["name_.like"];
68551
68719
  return quickSearchField;
68552
68720
  })();
@@ -68560,7 +68728,7 @@ const _sfc_main$1P = /* @__PURE__ */ defineComponent({
68560
68728
  }
68561
68729
  });
68562
68730
  const searchVisible = computed(() => {
68563
- if (isWarehouseSelect && !displayFields.value.length) return false;
68731
+ if (isWarehouseFamilySelect && !displayFields.value.length) return false;
68564
68732
  return !!quickSearchFields?.length;
68565
68733
  });
68566
68734
  const selectProps = computed(() => {
@@ -69004,7 +69172,7 @@ const _sfc_main$1P = /* @__PURE__ */ defineComponent({
69004
69172
  }, [
69005
69173
  createVNode(unref(VNode), { node: menuNode }, null, 8, ["node"])
69006
69174
  ], 2),
69007
- state.data.length && !unref(loadFinished2Options) && !state.hasSearched ? (openBlock(), createElementBlock("div", _hoisted_2$K, toDisplayString$1(unref($t2)("sys.onlineForm.searchForMore")), 1)) : createCommentVNode("", true),
69175
+ searchVisible.value && state.data.length && !unref(loadFinished2Options) && !state.hasSearched ? (openBlock(), createElementBlock("div", _hoisted_2$K, toDisplayString$1(unref($t2)("sys.onlineForm.searchForMore")), 1)) : createCommentVNode("", true),
69008
69176
  unref(customTooltip) ? (openBlock(), createElementBlock("div", {
69009
69177
  key: 2,
69010
69178
  class: "inner-custom-tooltip",
@@ -70471,6 +70639,8 @@ const _sfc_main$1J = /* @__PURE__ */ defineComponent({
70471
70639
  } = useWidgetStaticAttrs(props2.widget);
70472
70640
  const searchField = searchFieldMap[fieldType] || "name_";
70473
70641
  const searchVisible = computed(() => {
70642
+ const { quickSearchField } = props2.widget.props;
70643
+ if (Array.isArray(quickSearchField) && !quickSearchField.length) return false;
70474
70644
  if ((bizType || fieldType) === FIELD_TYPE.MFG_ORDER) {
70475
70645
  return !!props2.widget.props.quickSearchField?.length;
70476
70646
  }
@@ -88979,8 +89149,8 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
88979
89149
  printTask = (async () => {
88980
89150
  if (document.activeElement instanceof HTMLElement) document.activeElement.blur();
88981
89151
  await nextTick();
88982
- const { printRuntimeInstance } = await import("./print-runtime-instance-BtxZfq51.js");
88983
- const { default: renderer } = await import("./print-snapshot-renderer-0D5MUsR6.js");
89152
+ const { printRuntimeInstance } = await import("./print-runtime-instance-xGsbD9K-.js");
89153
+ const { default: renderer } = await import("./print-snapshot-renderer-DYUY1xCI.js");
88984
89154
  if (abort.signal.aborted) throw new Error("打印已取消");
88985
89155
  printRenderer.value = markRaw(renderer);
88986
89156
  await printRuntimeInstance(