@gct-paas/excel 0.1.27 → 0.1.28-beta.1

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 (222) hide show
  1. package/dist/{VueVideoPlayer-D5r4RRnv.js → VueVideoPlayer-B6X1JmEL.js} +2 -2
  2. package/dist/{agg-design-BVxNAUfK.js → agg-design-qUcK9OAF.js} +1 -1
  3. package/dist/{agg-props-BM1V7-82.js → agg-props-ockP_cAM.js} +1 -1
  4. package/dist/{agg-style-bu1csor3.js → agg-style-BV0qjEEw.js} +1 -1
  5. package/dist/{align-editor-D2IrDyiX.js → align-editor-DpWvsI_x.js} +1 -1
  6. package/dist/{attach-fields-editor-cbkBKnao.js → attach-fields-editor-B55NB5QH.js} +5 -5
  7. package/dist/{barcode-design-BRx1bmVT.js → barcode-design-D1Ll_5lG.js} +2 -2
  8. package/dist/base/index.es.js +401 -552
  9. package/dist/{base-font-editor-DvxGgHGz.js → base-font-editor-Bc5Nq5zV.js} +2 -2
  10. package/dist/{boolean-design-bh0IRiJd.js → boolean-design-quBCeS1G.js} +2 -2
  11. package/dist/{boolean-props-CblOGRwR.js → boolean-props-BqRbb2XN.js} +3 -3
  12. package/dist/{boolean-style-DwRYZG46.js → boolean-style-BLJfwtaX.js} +4 -4
  13. package/dist/{cell-upload-C-xtn3eM.js → cell-upload-PkWTiWYW.js} +1 -1
  14. package/dist/{date-range-editor-DgRj3qWq.js → date-range-editor-DptQq6pH.js} +2 -2
  15. package/dist/{date-time-design-CmzyZZ0f.js → date-time-design-DmeUPsi-.js} +1 -1
  16. package/dist/{date-time-props-D2g7OYyD.js → date-time-props-B5jOoX4Y.js} +3 -3
  17. package/dist/{date-time-style-D1hsou32.js → date-time-style-DFtXaN2d.js} +1 -1
  18. package/dist/{decimal-design-mtrsEocu.js → decimal-design-DQ-61MMF.js} +1 -1
  19. package/dist/{decimal-display-mode-DBBORdt8.js → decimal-display-mode-C1KBlKKw.js} +2 -2
  20. package/dist/{decimal-props-BAnCY6iG.js → decimal-props-CDo5SCYL.js} +4 -4
  21. package/dist/{decimal-style-B_3SjSrk.js → decimal-style-DwLrDj_1.js} +1 -1
  22. package/dist/{default-value-editor.vue_vue_type_script_setup_true_name_default-value-editor_lang-CaXarLgm.js → default-value-editor.vue_vue_type_script_setup_true_name_default-value-editor_lang-MEsfM8dF.js} +2 -2
  23. package/dist/{diagonal-design-CcD7fvfW.js → diagonal-design-cdmqJBTe.js} +2 -2
  24. package/dist/{double-design-7vcqNVyg.js → double-design-Bpuy9Ss3.js} +1 -1
  25. package/dist/{double-props-B-y0KH2n.js → double-props-DXysqniB.js} +4 -4
  26. package/dist/{double-style-CA5tNsrD.js → double-style-BnEd4QED.js} +1 -1
  27. package/dist/{dynamic-table-action-C2GfKCbJ.js → dynamic-table-action-CT_aYOca.js} +8 -10
  28. package/dist/{dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-Dti3Kjh8.js → dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-SAa6KGYz.js} +2240 -392
  29. package/dist/{edit.utils-CXmmCnxE-Ca3Pb0IU.js → edit.utils-CXmmCnxE-CrBcZqbG.js} +1 -1
  30. package/dist/{enum-design-QV-rTgR9.js → enum-design-CGIgeXrw.js} +2 -2
  31. package/dist/{enum-props-75ShzzCh.js → enum-props-XT85YcrM.js} +3 -3
  32. package/dist/{enum-style-BMtWgRC6.js → enum-style-Cqw4JjzR.js} +3 -3
  33. package/dist/excel.css +150 -148
  34. package/dist/{exceljs.min-0mQdhEhP.js → exceljs.min-BHpCeDsd.js} +2 -2
  35. package/dist/{expression-design-E4gBR1RY.js → expression-design-DO5gzF-x.js} +1 -1
  36. package/dist/{expression-props-BwPz0GJc.js → expression-props-DuvdDUWt.js} +1 -1
  37. package/dist/{expression-style-D7o1udLl.js → expression-style-BYJ-iIYc.js} +1 -1
  38. package/dist/{file-design-CY5qOoTr.js → file-design-Cix4ztNq.js} +1 -1
  39. package/dist/{file-props-zXWQ1bVe.js → file-props-DwUasn2W.js} +2 -2
  40. package/dist/{file-style-BxiYD3KK.js → file-style-DTXliETB.js} +1 -1
  41. package/dist/{font-editor-Dvzk8M-U.js → font-editor-CxdKktbw.js} +3 -3
  42. package/dist/{image-design-lVRSbqr7.js → image-design-BxFQTm4-.js} +2 -2
  43. package/dist/{image-design-BhK2hIpf.js → image-design-IaQbw4Bv.js} +1 -1
  44. package/dist/{image-props-BzWQmFnm.js → image-props-ENaIXFCE.js} +1 -1
  45. package/dist/{image-style-COx37YQA.js → image-style-BuGQiWh9.js} +1 -1
  46. package/dist/{index-D4c8S3QX.js → index-1kSDRqJL.js} +1 -1
  47. package/dist/{index-DQUYeRO2.js → index-5E89tzgQ.js} +1 -1
  48. package/dist/{index-Xo3mSme0.js → index-6AnvwL1T.js} +1 -1
  49. package/dist/{index-_sBfWkw5.js → index-BCFgHqQ4.js} +1 -1
  50. package/dist/{index-DJMQPKtC.js → index-BKQgEYOt.js} +1 -1
  51. package/dist/{index-BKl3sdLV.js → index-BSWx0ysi.js} +1 -1
  52. package/dist/{index-FsRMnSH6.js → index-BUEsJ6db.js} +1 -1
  53. package/dist/{index-n08cOEu4.js → index-BuucdbMD.js} +1 -1
  54. package/dist/{index-xAiRicc_.js → index-C7XazAkv.js} +27 -22
  55. package/dist/{index-Bnw3rp6T.js → index-CLFPSEpt.js} +5 -3
  56. package/dist/{index-BxJDx07D.js → index-CO1Iw_97.js} +1 -1
  57. package/dist/{index-BfFR4_sj.js → index-CSGDQQxf.js} +1 -1
  58. package/dist/{index-BOJ1qa5y.js → index-CYc23F99.js} +1 -1
  59. package/dist/{index-CLiI_jbj.js → index-CmfE-VkX.js} +1 -1
  60. package/dist/{index--0Kpxacn.js → index-CvefH3Ld.js} +1 -1
  61. package/dist/{index-C3vFg5YC.js → index-DBt-6fax.js} +2 -2
  62. package/dist/{index-sDAMzgHy.js → index-DG8SGSHV.js} +11 -1
  63. package/dist/{index-DX751NRk.js → index-DIHeOfRf.js} +1 -1
  64. package/dist/{index-7I61fuwY.js → index-DJsySg7Z.js} +1 -1
  65. package/dist/{index-BZUfZUe_.js → index-DayP0trN.js} +1 -1
  66. package/dist/{index-LPi5gPDc.js → index-DgbS8dwI.js} +2 -2
  67. package/dist/{index-Cv8PAOND.js → index-Dl48Dmuf.js} +1 -1
  68. package/dist/{index-D1eAo-Nu.js → index-DuELqbrc.js} +1 -1
  69. package/dist/{index-gZDQm5ZQ.js → index-HHW_GvS9.js} +1 -1
  70. package/dist/{index-BcFJ5NMo.js → index-PgmRu5Zh.js} +1 -1
  71. package/dist/{index-BQkzdAys.js → index-V3KPtSlA.js} +1 -1
  72. package/dist/{index-BKcbh7wy.js → index-VU8yct3A.js} +1 -1
  73. package/dist/{index-D_EbV20_.js → index-VjzaY3fS.js} +2 -2
  74. package/dist/{index-JMdllXCQ.js → index-aZhb-M_v.js} +1 -1
  75. package/dist/{index-uPWALfQF.js → index-hkXYQoCV.js} +1 -1
  76. package/dist/{index-CvgNTIj3.js → index-pkv7_FaG.js} +1372 -1287
  77. package/dist/{index-C8YcRZdY.js → index-uIR6j0YE.js} +1 -1
  78. package/dist/{index-CvnUTiu5.js → index-w83mSV_k.js} +5 -3
  79. package/dist/index.es.js +45 -45
  80. package/dist/{integer-design-B4_XsKZo.js → integer-design-B48BapfF.js} +1 -1
  81. package/dist/{integer-props-C6PM1TRQ.js → integer-props-1bbkhP4A.js} +4 -4
  82. package/dist/{integer-style-BEQYgQr6.js → integer-style-BDe6Dudv.js} +1 -1
  83. package/dist/{mb-render-Cuhqw431.js → mb-render-DiWQ5hOn.js} +12 -1
  84. package/dist/{number-input-ex-C-lDRF5x.js → number-input-ex-6e_-B7y7.js} +1 -1
  85. package/dist/{org-props-COEjPBZu.js → org-props-CVEkrQTH.js} +2 -2
  86. package/dist/{org-style-BCAm4c-t.js → org-style-CDb_GH8S.js} +1 -1
  87. package/dist/{pagination-design-BCbcTaoL.js → pagination-design-wrFXRg3I.js} +2 -2
  88. package/dist/paper-widget-design-pzfwtqOo.js +4 -0
  89. package/dist/{qrcode-design-DsWOsTMb.js → qrcode-design-D4SZHVWw.js} +1 -1
  90. package/dist/{ref-autofill-editor-M4SwZwAT.js → ref-autofill-editor-C_73eGxk.js} +7 -6
  91. package/dist/{ref-props-z-4FJ63a.js → ref-props-CH853iFu.js} +3 -3
  92. package/dist/{ref-style-Cd4xxgki.js → ref-style-DNNTi1cL.js} +1 -1
  93. package/dist/{regex-editor-Clq3qEOM.js → regex-editor-BjpdR0tH.js} +2 -2
  94. package/dist/{revo-grid.entry-mK396nD_.js → revo-grid.entry-Cg-4cMIo.js} +1 -1
  95. package/dist/{revogr-attribution_7.entry-CVFYs2_S.js → revogr-attribution_7.entry-DzamtFvo.js} +3 -3
  96. package/dist/{revogr-clipboard_3.entry-CXob_C6H.js → revogr-clipboard_3.entry-CIxDfW07.js} +2 -2
  97. package/dist/{revogr-data_4.entry-DdIOstSg.js → revogr-data_4.entry-BNENcgpR.js} +2 -2
  98. package/dist/{revogr-filter-panel.entry-CbN2tKV5.js → revogr-filter-panel.entry-BrYsomo0.js} +1 -1
  99. package/dist/{select-render-type-editor.vue_vue_type_script_setup_true_lang-BRaJttUU.js → select-render-type-editor.vue_vue_type_script_setup_true_lang-Dr3dZp--.js} +2 -2
  100. package/dist/{serialnumber-design-lwuR-KrB.js → serialnumber-design-BsAogg1u.js} +1 -1
  101. package/dist/shared/index.es.js +29 -29
  102. package/dist/{signature-design-CWKOqjMe.js → signature-design-sSyiIxFB.js} +1 -1
  103. package/dist/{signature-props-B4yndn4q.js → signature-props-BvPvVkD0.js} +3 -3
  104. package/dist/{signature-style-5DImPCv-.js → signature-style-wLJo19Kd.js} +1 -1
  105. package/dist/{single-field-drop-C0IXAiGz.js → single-field-drop-lP3_RRCL.js} +2 -2
  106. package/dist/{size-editor-DKIp_UFV.js → size-editor-DnyvSWUn.js} +1 -1
  107. package/dist/src/assets/svgs/table/index.d.ts +5 -0
  108. package/dist/src/domain/suite/suite-features.d.ts +14 -0
  109. package/dist/src/domain/table/business/material/material-requisition/index.d.ts +2 -0
  110. package/dist/src/domain/table/business/material/material-requisition/profile/field-keys.d.ts +35 -0
  111. package/dist/src/domain/table/business/material/material-requisition/profile/fields.d.ts +2 -0
  112. package/dist/src/domain/table/business/material/material-requisition/profile/index.d.ts +3 -0
  113. package/dist/src/domain/table/business/material/material-requisition/runtime/register-handlers.d.ts +1 -0
  114. package/dist/src/domain/table/business/material/material-requisition/runtime/row-change-handlers.d.ts +6 -0
  115. package/dist/src/domain/table/business/preprocess/pretreatment-list/index.d.ts +2 -1
  116. package/dist/src/domain/table/business/preprocess/pretreatment-list/profile/field-keys.d.ts +187 -0
  117. package/dist/src/domain/table/business/preprocess/pretreatment-list/profile/fields.d.ts +2 -0
  118. package/dist/src/domain/table/business/preprocess/pretreatment-list/runtime/register-handlers.d.ts +1 -0
  119. package/dist/src/domain/table/business/preprocess/pretreatment-list/runtime/row-change-handlers.d.ts +26 -0
  120. package/dist/src/domain/table/business/warehouse/device-part-consume/index.d.ts +2 -0
  121. package/dist/src/domain/table/business/warehouse/device-part-consume/profile/field-keys.d.ts +65 -0
  122. package/dist/src/domain/table/business/warehouse/device-part-consume/profile/fields.d.ts +2 -0
  123. package/dist/src/domain/table/business/warehouse/device-part-consume/profile/index.d.ts +3 -0
  124. package/dist/src/domain/table/business/warehouse/device-part-consume/runtime/register-handlers.d.ts +1 -0
  125. package/dist/src/domain/table/business/warehouse/device-part-consume/runtime/row-change-handlers.d.ts +6 -0
  126. package/dist/src/domain/table/business/warehouse/part-stocktake/index.d.ts +2 -0
  127. package/dist/src/domain/table/business/warehouse/part-stocktake/profile/field-keys.d.ts +70 -0
  128. package/dist/src/domain/table/business/warehouse/part-stocktake/profile/fields.d.ts +2 -0
  129. package/dist/src/domain/table/business/warehouse/part-stocktake/profile/index.d.ts +3 -0
  130. package/dist/src/domain/table/business/warehouse/part-stocktake/runtime/register-handlers.d.ts +1 -0
  131. package/dist/src/domain/table/business/warehouse/part-stocktake/runtime/row-change-handlers.d.ts +10 -0
  132. package/dist/src/domain/table/business/warehouse/warehouse-allocate/index.d.ts +2 -1
  133. package/dist/src/domain/table/business/warehouse/warehouse-allocate/profile/field-keys.d.ts +87 -0
  134. package/dist/src/domain/table/business/warehouse/warehouse-allocate/profile/fields.d.ts +2 -0
  135. package/dist/src/domain/table/business/warehouse/warehouse-allocate/runtime/register-handlers.d.ts +1 -0
  136. package/dist/src/domain/table/business/warehouse/warehouse-allocate/runtime/row-change-handlers.d.ts +7 -0
  137. package/dist/src/domain/table/business/warehouse/warehouse-in/index.d.ts +1 -0
  138. package/dist/src/domain/table/business/warehouse/warehouse-in/profile/field-keys.d.ts +39 -0
  139. package/dist/src/domain/table/business/warehouse/warehouse-in/profile/fields.d.ts +2 -0
  140. package/dist/src/domain/table/business/warehouse/warehouse-in/runtime/register-handlers.d.ts +1 -0
  141. package/dist/src/domain/table/business/warehouse/warehouse-in/runtime/row-change-handlers.d.ts +6 -0
  142. package/dist/src/domain/table/business/warehouse/warehouse-inbound/index.d.ts +2 -0
  143. package/dist/src/domain/table/business/warehouse/warehouse-inbound/profile/field-keys.d.ts +33 -0
  144. package/dist/src/domain/table/business/warehouse/warehouse-inbound/profile/fields.d.ts +2 -0
  145. package/dist/src/domain/table/business/warehouse/warehouse-inbound/profile/index.d.ts +3 -0
  146. package/dist/src/domain/table/business/warehouse/warehouse-inbound/runtime/register-handlers.d.ts +1 -0
  147. package/dist/src/domain/table/business/warehouse/warehouse-inbound/runtime/row-change-handlers.d.ts +6 -0
  148. package/dist/src/domain/table/business/warehouse/warehouse-inventory/index.d.ts +2 -1
  149. package/dist/src/domain/table/business/warehouse/warehouse-inventory/profile/field-keys.d.ts +114 -0
  150. package/dist/src/domain/table/business/warehouse/warehouse-inventory/profile/fields.d.ts +2 -0
  151. package/dist/src/domain/table/business/warehouse/warehouse-inventory/runtime/register-handlers.d.ts +1 -0
  152. package/dist/src/domain/table/business/warehouse/warehouse-inventory/runtime/row-change-handlers.d.ts +11 -0
  153. package/dist/src/domain/table/business/warehouse/warehouse-out/index.d.ts +1 -0
  154. package/dist/src/domain/table/business/warehouse/warehouse-out/profile/field-keys.d.ts +84 -0
  155. package/dist/src/domain/table/business/warehouse/warehouse-out/profile/fields.d.ts +2 -0
  156. package/dist/src/domain/table/business/warehouse/warehouse-out/runtime/register-handlers.d.ts +1 -0
  157. package/dist/src/domain/table/business/warehouse/warehouse-out/runtime/row-change-handlers.d.ts +6 -0
  158. package/dist/src/domain/table/business/warehouse/warehouse-outbound/index.d.ts +2 -0
  159. package/dist/src/domain/table/business/warehouse/warehouse-outbound/profile/field-keys.d.ts +64 -0
  160. package/dist/src/domain/table/business/warehouse/warehouse-outbound/profile/fields.d.ts +2 -0
  161. package/dist/src/domain/table/business/warehouse/warehouse-outbound/profile/index.d.ts +3 -0
  162. package/dist/src/domain/table/business/warehouse/warehouse-outbound/runtime/register-handlers.d.ts +1 -0
  163. package/dist/src/domain/table/business/warehouse/warehouse-outbound/runtime/row-change-handlers.d.ts +6 -0
  164. package/dist/src/domain/table/design/autofill-expander.d.ts +19 -0
  165. package/dist/src/domain/table/design/hooks/on-field-attach.d.ts +13 -0
  166. package/dist/src/domain/table/index.d.ts +4 -0
  167. package/dist/src/domain/table/runtime/apply-profile.d.ts +16 -0
  168. package/dist/src/domain/table/runtime/runtime-handlers.d.ts +9 -0
  169. package/dist/src/domain/table/types.d.ts +61 -2
  170. package/dist/src/nocode-base/src/constant/index.d.ts +11 -1
  171. package/dist/src/nocode-base/src/core/sub-table/allocate-table-core.d.ts +12 -7
  172. package/dist/src/nocode-base/src/core/sub-table/index.d.ts +1 -0
  173. package/dist/src/nocode-base/src/core/sub-table/pretreatment-list-table-core.d.ts +12 -5
  174. package/dist/src/nocode-base/src/core/sub-table/profile-driven-sub-table-core.d.ts +61 -0
  175. package/dist/src/nocode-base/src/core/sub-table/stocktake-table-core.d.ts +17 -19
  176. package/dist/src/nocode-base/src/core/sub-table/utils/pretreatment/field-keys.d.ts +2 -117
  177. package/dist/src/nocode-base/src/core/sub-table/utils/stocktake/field-keys.d.ts +2 -60
  178. package/dist/src/nocode-base/src/hooks/app-info/index.d.ts +4 -0
  179. package/dist/src/nocode-base/src/hooks/form-model/form-model-controller.d.ts +6 -1
  180. package/dist/src/nocode-base/src/hooks/form-model/types.d.ts +5 -0
  181. package/dist/src/nocode-base/src/hooks/material-date/material-date.d.ts +44 -0
  182. package/dist/src/nocode-base/src/hooks/material-date/service.d.ts +4 -0
  183. package/dist/src/nocode-base/src/hooks/material-date/use-material-date.d.ts +2 -0
  184. package/dist/src/nocode-base/src/interface/render.d.ts +2 -1
  185. package/dist/src/nocode-base/src/types/business/allocate.d.ts +8 -0
  186. package/dist/src/nocode-base/src/types/widgets/i-paper.d.ts +14 -0
  187. package/dist/src/nocode-web-render/src/render/sub-table/common/scan-modal.vue.d.ts +2 -3
  188. package/dist/src/online-form/src/views/__cell_widgets__/common/input-prop-editor/input-prop-editor.vue.d.ts +2 -0
  189. package/dist/src/online-form/src/views/designer/constants/index.d.ts +1 -0
  190. package/dist/src/online-form/src/views/designer/enums/index.d.ts +6 -1
  191. package/dist/src/online-form/src/views/designer/hooks/useAllSpreadSheets.d.ts +8 -0
  192. package/dist/src/online-form/src/views/designer/hooks/useSpreadSheet.d.ts +11 -17
  193. package/dist/src/online-form/src/views/designer/modules/panel/sub-table/comps/use-dynamic-sub-table-panel.d.ts +4 -0
  194. package/dist/src/shared/enum/field-type.d.ts +10 -4
  195. package/dist/src/shared/enum/online-form.d.ts +11 -1
  196. package/dist/{text-design-Cvkrx7Ay.js → text-design-CE2RPOMG.js} +2 -2
  197. package/dist/{text-design-Buv9yt9S.js → text-design-DhW8EogW.js} +2 -2
  198. package/dist/{text-props-CkVBSTXP.js → text-props-SHUEXLgb.js} +4 -4
  199. package/dist/{text-style-ByQS_L5l.js → text-style-aUG_dSEM.js} +1 -1
  200. package/dist/{throttle-Cpk1LoGk-G-XhI3O-.js → throttle-Cpk1LoGk-BYyz4gtI.js} +1 -1
  201. package/dist/{timediff-design-DDoTcrkV.js → timediff-design-JHt1-ug6.js} +1 -1
  202. package/dist/{trace-design-BCzk8EyB.js → trace-design-ZgPtVMap.js} +2 -2
  203. package/dist/{trace-props-BL3L-jup.js → trace-props-C1sYAcFN.js} +6 -6
  204. package/dist/{trace-style-BlpFFb55.js → trace-style-BVzEquy0.js} +1 -1
  205. package/dist/{user-props-B-vYJaSq.js → user-props-DFN3xNvd.js} +2 -2
  206. package/dist/{user-style-CbvEdi3Y.js → user-style-CQL88-69.js} +1 -1
  207. package/dist/{value-editor.vue_vue_type_style_index_0_lang-s8AB671m.js → value-editor.vue_vue_type_style_index_0_lang-BdgFyP-I.js} +2 -2
  208. package/dist/{version-select-CgXKULuu.js → version-select-Bw8yzDaH.js} +1 -1
  209. package/dist/web-render/index.es.js +2 -2
  210. package/dist/{widget-barcode-DSSIOMEn.js → widget-barcode-7P0lBeMG.js} +4 -4
  211. package/dist/{widget-diagonal-Ce7X4BVB.js → widget-diagonal-DOTVKoIQ.js} +3 -3
  212. package/dist/{widget-image-B07sa8Hv.js → widget-image-COhPjcF3.js} +5 -5
  213. package/dist/{widget-line-gfOAwJ73.js → widget-line-BMc5nU5m.js} +2 -2
  214. package/dist/{widget-pagination-DQT0Hcnv.js → widget-pagination-DxFNovQR.js} +5 -5
  215. package/dist/{widget-power-DB41Q7HC.js → widget-power-CAmZZQVa.js} +3 -3
  216. package/dist/{widget-qrcode-DPMDGtjU.js → widget-qrcode-CGE3qC2v.js} +3 -3
  217. package/dist/{widget-rangelimit-BpxO9qfT.js → widget-rangelimit-ZRtD4u7u.js} +3 -3
  218. package/dist/{widget-serialnumber-CM-Lm2mW.js → widget-serialnumber-CG997c4V.js} +1 -1
  219. package/dist/{widget-text-DnHhMcYh.js → widget-text-VWrSiodT.js} +5 -5
  220. package/dist/{widget-timediff-CHA6cLPN.js → widget-timediff-D_67OMYb.js} +2 -2
  221. package/package.json +1 -1
  222. package/dist/paper-widget-design-B1eAfVY6.js +0 -4
@@ -1,11 +1,11 @@
1
- import { aC as fetchHistoryConsume, aD as isBomGranted, F as FIELD_TYPE, i as api, ar as getParseRuleInfo, as as getParseRuleValue, aE as calcFillData, aF as extractKeywordFromQueryData, w as FormTypeEnum, aG as transformUtils, g as SubTableType, ao as NCB_PROVIDE, aH as settleAndValidateDisplay, aI as unregisterValidationContext, aJ as clearFormRules, aK as registerValidationContext, e as ComponentTypeEnum, aw as RenderModeEnum, aL as requestFullValidation, aM as requestDisplayValidation, aN as closeValidatorPopovers, aO as baseDataUtils, aP as getRawFormRuleMeta, aQ as enrichFormChangeRowDetails, aR as settleAfterModeSwitch, aS as calcUtils, a7 as CheckDsTypeEnum, al as renderUtils, H as PlatformEnum, aT as uuid2, aU as normalizeToArray, aV as safeParseArray, aW as BpmnNodeTypeEnum, aX as mergeByMultiKey, aB as useNocodeEmitter, aY as commonUtils, a6 as EntityModelCategoryEnum, aZ as getRowId, a_ as collectFormChangeFieldLocations, a$ as nextFormChangeRowViewHistoryId } from "../dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-Dti3Kjh8.js";
2
- import { aa, ac, am, z, b0, b1, B, b2, h, J, b3, b4, b5, ak, an, ab, a8, a9, K, N, b6, ay, Z, b7, a4, ae, y, M, L, b8, b9, O, b, P, a5, a, n, ad, ba, bb, av, E, A, D, G, bc, T, V, W, bd, be, bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, au, bq, br, bs, bt, bu, bv, bw, bx, by, bz, bA, bB, bC, bD, bE, ap, bF, bG, bH, aq, bI, bJ, bK, bL, Q, bM, bN, ai, bO, ah, af, bP, o, at, ax, aj, bQ, u, ag } from "../dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-Dti3Kjh8.js";
3
- import { M as MaterialConsumptionPatternEnum, e as MaterialConsumeTableController, f as SubTableCore, g as SubTableActionMenuTypeEnum, h as getMenuByAction, i as SubTableActionEnum, j as getCopySubMenu, k as getInsertSubMenu, l as useMaterialBalance, v as validate } from "../dynamic-table-action-C2GfKCbJ.js";
4
- import { B as B2, m, D as D2, _, n as n2, c, o as o2, d, F, p, I, q, O as O2, u as u2, a as a2, b as b10 } from "../dynamic-table-action-C2GfKCbJ.js";
1
+ import { aW as fetchHistoryConsume, aX as isBomGranted, F as FIELD_TYPE, w as api, c as getProfileByTableType, b as isBusinessSubTableProfile, aY as runRowHandler, aZ as F$1, a_ as FILL_FROM_INVENTORY_OPTION, a$ as F$2, b0 as INVENTORY_BASE_FIELDS, b1 as WAREHOUSE_IDENTITY_GROUP_KEYS, b2 as SCAN_MERGE_GROUP_KEYS, b3 as AUTO_LOAD_READONLY_SELECT_FIELDS, aH as getParseRuleInfo, b4 as FILL_FROM_INVENTORY_OPTION$1, aI as getParseRuleValue, b5 as F$3, b6 as FILL_FROM_INVENTORY_OPTION$2, b7 as calcFillData, b8 as extractKeywordFromQueryData, b9 as F$4, ba as isProductManuallyEditable, bb as applyFillFromMfgOrderOption, bc as applyFillFromOption$1, bd as applyFillFromProductOption, be as CLEAR_ON_MATERIAL_CONTAINER_SELECT, M as FormTypeEnum, bf as transformUtils, d as SubTableType, aE as NCB_PROVIDE, bg as settleAndValidateDisplay, bh as unregisterValidationContext, bi as clearFormRules, bj as registerValidationContext, m as ComponentTypeEnum, aM as RenderModeEnum, bk as requestFullValidation, bl as requestDisplayValidation, bm as closeValidatorPopovers, bn as baseDataUtils, bo as getRawFormRuleMeta, bp as enrichFormChangeRowDetails, bq as settleAfterModeSwitch, br as calcUtils, an as CheckDsTypeEnum, aB as renderUtils, Y as PlatformEnum, bs as uuid2, bt as normalizeToArray, bu as safeParseArray, bv as BpmnNodeTypeEnum, bw as mergeByMultiKey, aV as useNocodeEmitter, bx as commonUtils, am as EntityModelCategoryEnum, by as getRowId, bz as collectFormChangeFieldLocations, bA as nextFormChangeRowViewHistoryId } from "../dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-SAa6KGYz.js";
2
+ import { aq, as, aC, R, bB, bC, B, bD, t, a0, bE, bF, bG, aA, aD, ar, ao, ap, a1, a5, bH, aO, ae, bI, ak, au, Q, a3, L, bJ, bK, O, j, P, al, h, G, at, bL, bM, aL, W, T, V, X, bN, a4, a8, a2, bO, bP, bQ, bR, bS, bT, bU, bV, bW, bX, bY, bZ, b_, aK, b$, c0, c1, c2, c3, c4, c5, c6, c7, c8, c9, ca, cb, cc, cd, aF, ce, cf, cg, aG, ch, ci, cj, ck, a6, cl, cm, ay, cn, ax, av, co, H, aJ, aN, az, cp, u, aw } from "../dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-SAa6KGYz.js";
3
+ import { M as MaterialConsumptionPatternEnum, e as MaterialConsumeTableController, f as SubTableCore, g as SubTableActionMenuTypeEnum, h as getMenuByAction, i as SubTableActionEnum, j as getCopySubMenu, k as getInsertSubMenu, l as useMaterialBalance, v as validate } from "../dynamic-table-action-CT_aYOca.js";
4
+ import { B as B2, m, D, _, n, c, o, d, F, p, I, q, O as O2, u as u2, a, b } from "../dynamic-table-action-CT_aYOca.js";
5
5
  import { ref, provide, watch, computed, onBeforeMount } from "vue";
6
- import { defaults, pick, merge, has, isEmpty, cloneDeep, debounce } from "lodash-es";
6
+ import { defaults, has, merge, isEmpty, cloneDeep, debounce } from "lodash-es";
7
7
  import dayjs from "dayjs";
8
- import { B as B3, F as F2, M as M2, a as a3, u as u3 } from "../mb-render-Cuhqw431.js";
8
+ import { B as B3, F as F2, M, a as a7, u as u3 } from "../mb-render-DiWQ5hOn.js";
9
9
  var MaterialStatusEnum = /* @__PURE__ */ ((MaterialStatusEnum2) => {
10
10
  MaterialStatusEnum2["LOT"] = "LOT";
11
11
  MaterialStatusEnum2["SN"] = "SN";
@@ -189,7 +189,7 @@ class FormTmplBomController {
189
189
  }
190
190
  async submitValidate() {
191
191
  const results = await Promise.allSettled(
192
- Object.values(this.tableControllers).map((c2) => c2.submitValidate())
192
+ Object.values(this.tableControllers).map((c10) => c10.submitValidate())
193
193
  );
194
194
  const successful = results.filter((result) => result.status === "fulfilled").map((result) => result.value);
195
195
  const fieldArr = successful.filter(Boolean);
@@ -219,6 +219,10 @@ async function isEdhrSuite() {
219
219
  const suiteKey = await getSuiteKey();
220
220
  return suiteKey === "eDHR";
221
221
  }
222
+ async function isEqmSuite() {
223
+ const suiteKey = await getSuiteKey();
224
+ return suiteKey === "EQM";
225
+ }
222
226
  async function getModelQueries(opts) {
223
227
  const isEdhr = await isEdhrSuite();
224
228
  if (!isEdhr || !opts.mainMaterialNo) {
@@ -238,6 +242,147 @@ async function getModelQueries(opts) {
238
242
  console.log("getModelQueries", res);
239
243
  return res;
240
244
  }
245
+ function isBlank$2(value) {
246
+ return value === void 0 || value === null || value === "";
247
+ }
248
+ function matchFieldKey(match, fieldKey) {
249
+ if (!match.fieldKey) return false;
250
+ const keys = Array.isArray(match.fieldKey) ? match.fieldKey : [match.fieldKey];
251
+ return keys.includes(fieldKey);
252
+ }
253
+ function findFieldProfile(profile, fieldKey) {
254
+ return profile?.fields?.find((item) => matchFieldKey(item.match, fieldKey));
255
+ }
256
+ function buildDefaultMapFromProfile(profile, paramsConfig) {
257
+ const result = {};
258
+ if (!profile?.contextAssignments?.length) return result;
259
+ const assignments = profile.contextAssignments.filter(
260
+ (item) => item.when === "onRowInit"
261
+ );
262
+ for (const assignment of assignments) {
263
+ const value = paramsConfig?.[assignment.paramKey];
264
+ if (isBlank$2(value)) continue;
265
+ result[assignment.fieldKey] = value;
266
+ }
267
+ return result;
268
+ }
269
+ function buildFieldStatusFromProfile(params) {
270
+ const { profile, field } = params;
271
+ const result = {};
272
+ if (!profile) return result;
273
+ const fieldProfile = findFieldProfile(profile, field);
274
+ if (fieldProfile?.defaultProps) {
275
+ if (fieldProfile.defaultProps.disabled === true || fieldProfile.defaultProps.fieldDisabled === true) {
276
+ result.disabled = true;
277
+ }
278
+ if (fieldProfile.defaultProps.readonly === true || fieldProfile.defaultProps.fieldReadonly === true) {
279
+ result.readonly = true;
280
+ }
281
+ if (fieldProfile.defaultProps.required === false) {
282
+ result.required = false;
283
+ }
284
+ }
285
+ const rules = (profile.runtimeRules ?? []).filter(
286
+ (rule) => !rule.when || rule.when === "always" || rule.when === "onRowInit"
287
+ );
288
+ for (const rule of rules) {
289
+ if (!rule.fields.includes(field)) continue;
290
+ if (rule.effect.readonly) result.readonly = true;
291
+ if (rule.effect.disabled) result.disabled = true;
292
+ if (rule.effect.required !== void 0) result.required = rule.effect.required;
293
+ }
294
+ return result;
295
+ }
296
+ function getRowHandlersForFieldChange(profile, changedField) {
297
+ if (!profile?.rowHandlers?.length) return [];
298
+ return profile.rowHandlers.filter((item) => item.when === "onFieldChange").filter((item) => !item.watch?.length || item.watch.includes(changedField)).map((item) => item.handler);
299
+ }
300
+ class ProfileDrivenSubTableCore extends SubTableCore {
301
+ get profile() {
302
+ const profile = getProfileByTableType(this.ctx.widget.props.tableType);
303
+ return profile && isBusinessSubTableProfile(profile) ? profile : void 0;
304
+ }
305
+ calcDefaultMap() {
306
+ return {
307
+ ...super.calcDefaultMap(),
308
+ ...buildDefaultMapFromProfile(this.profile, this.pageCtx?.paramsConfig)
309
+ };
310
+ }
311
+ calcFieldStatus(params) {
312
+ const result = super.calcFieldStatus(params);
313
+ const fromProfile = buildFieldStatusFromProfile({
314
+ profile: this.profile,
315
+ field: params.field
316
+ });
317
+ return {
318
+ ...result,
319
+ ...fromProfile
320
+ };
321
+ }
322
+ handleChange(params) {
323
+ const profileType = this.profile?.type;
324
+ if (profileType) {
325
+ for (const handlerName of getRowHandlersForFieldChange(this.profile, params.field)) {
326
+ runRowHandler(profileType, handlerName, {
327
+ rowData: params.rowData,
328
+ changedField: params.field
329
+ });
330
+ }
331
+ }
332
+ super.handleChange(params);
333
+ }
334
+ }
335
+ class WarehouseInTableCore extends ProfileDrivenSubTableCore {
336
+ }
337
+ class WarehouseInboundTableCore extends ProfileDrivenSubTableCore {
338
+ }
339
+ class WarehouseOutTableCore extends ProfileDrivenSubTableCore {
340
+ get warehouseId() {
341
+ return this.factory.ctx.paramsConfig?.warehouseId;
342
+ }
343
+ handleFieldTd = (params) => {
344
+ const { field, tdHandler } = params;
345
+ if (field === F$1.product) {
346
+ tdHandler.mergeTd({
347
+ cellWidget: {
348
+ props: {
349
+ customRenderTag: "allocateProduct",
350
+ newSpecificConfig: {
351
+ newOptions: []
352
+ }
353
+ }
354
+ }
355
+ });
356
+ }
357
+ super.handleFieldTd(params);
358
+ };
359
+ calcFieldQuery = (params) => {
360
+ const { field } = params;
361
+ if (field === F$1.product) {
362
+ return {
363
+ warehouse_id_: this.warehouseId
364
+ };
365
+ }
366
+ };
367
+ handleChange(params) {
368
+ super.handleChange(params);
369
+ const { field, value, option, rowData } = params;
370
+ if (field !== F$1.product || !option || value === void 0 || value === null || value === "") {
371
+ return;
372
+ }
373
+ for (const { optionField, toField } of FILL_FROM_INVENTORY_OPTION) {
374
+ rowData[toField] = option[optionField];
375
+ }
376
+ }
377
+ }
378
+ class WarehouseOutboundTableCore extends ProfileDrivenSubTableCore {
379
+ }
380
+ class PartStocktakeTableCore extends ProfileDrivenSubTableCore {
381
+ }
382
+ class DevicePartConsumeTableCore extends ProfileDrivenSubTableCore {
383
+ }
384
+ class MaterialRequisitionTableCore extends ProfileDrivenSubTableCore {
385
+ }
241
386
  var WarehouseInventoryRowSource = /* @__PURE__ */ ((WarehouseInventoryRowSource2) => {
242
387
  WarehouseInventoryRowSource2["MANUAL"] = "manual";
243
388
  WarehouseInventoryRowSource2["AUTO"] = "auto";
@@ -250,49 +395,6 @@ const STOCKTAKE_STATUS = {
250
395
  loss: "sys.edhr.stocktakeStatusEnum.loss",
251
396
  equals: "sys.edhr.stocktakeStatusEnum.equals"
252
397
  };
253
- const F$2 = {
254
- batch: "production_identification_id_",
255
- batchLb: "production_identification_id__lb_",
256
- product: "product_id_",
257
- productLb: "product_id__lb_",
258
- productName: "product_id_name_",
259
- productCode: "product_id_code_",
260
- productSpec: "product_id_spec_",
261
- warehouse: "warehouse_id_",
262
- location: "location_id_",
263
- locationLb: "location_id__lb_",
264
- stock: "stock_num_",
265
- stocktake: "stocktake_num_",
266
- diff: "diff_num_",
267
- stocktakeStatus: "stocktake_status_",
268
- stocktakeStatusLb: "stocktake_status__lb_",
269
- matno: "material_no_",
270
- matcode: "product_code_",
271
- locationAutoResolved: "_location_auto_resolved_",
272
- inventoryLocationIds: "_inventory_location_ids_",
273
- rowSource: "row_source_"
274
- };
275
- const INVENTORY_INFO_APPLY_FIELDS = [
276
- F$2.batch,
277
- // F.product,
278
- F$2.productName,
279
- F$2.productCode,
280
- F$2.productSpec,
281
- F$2.warehouse,
282
- F$2.location,
283
- F$2.stock
284
- ];
285
- const AUTO_LOAD_READONLY_SELECT_FIELDS = [F$2.product, F$2.batch, F$2.location];
286
- const WAREHOUSE_IDENTITY_GROUP_KEYS = [F$2.batch, F$2.product, F$2.warehouse];
287
- const SCAN_MERGE_GROUP_KEYS = [F$2.batch, F$2.product, F$2.warehouse, F$2.location];
288
- const INVENTORY_BASE_FIELDS = [
289
- F$2.batch,
290
- F$2.product,
291
- F$2.productName,
292
- F$2.productCode,
293
- F$2.productSpec,
294
- F$2.warehouse
295
- ];
296
398
  function buildRowGroupKey(row, fieldKeys, separator = "|") {
297
399
  return fieldKeys.map((key) => String(row[key] ?? "")).join(separator);
298
400
  }
@@ -300,7 +402,7 @@ function toNumber(value, fallback = 0) {
300
402
  const num = Number(value);
301
403
  return Number.isNaN(num) ? fallback : num;
302
404
  }
303
- function isBlank(value) {
405
+ function isBlank$1(value) {
304
406
  return value == null || value === "";
305
407
  }
306
408
  function pickInventoryBase(record) {
@@ -342,7 +444,7 @@ function groupByWarehouseIdentity(records) {
342
444
  return groups;
343
445
  }
344
446
  function getStocktakeDiff(stocktakeNum, stockNum) {
345
- if (isBlank(stocktakeNum)) {
447
+ if (isBlank$1(stocktakeNum)) {
346
448
  return void 0;
347
449
  }
348
450
  const stocktake = toNumber(stocktakeNum);
@@ -384,12 +486,12 @@ function dispositionScanRecord(record, visibleRows, groupByWarehouse) {
384
486
  for (let i = 0; i < visibleRows.length; i++) {
385
487
  const row = visibleRows[i];
386
488
  if (buildScanMergeKey(row) === scanKey) {
387
- if (isBlank(row[F$2.location])) {
489
+ if (isBlank$1(row[F$2.location])) {
388
490
  return { kind: "skip-location-not-selected" };
389
491
  }
390
492
  return { kind: "accumulate", index: i };
391
493
  }
392
- if (!hasWaitingRow && buildWarehouseGroupKey(row) === warehouseKey && isBlank(row[F$2.location])) {
494
+ if (!hasWaitingRow && buildWarehouseGroupKey(row) === warehouseKey && isBlank$1(row[F$2.location])) {
393
495
  hasWaitingRow = true;
394
496
  }
395
497
  }
@@ -416,14 +518,14 @@ function pickRecordsForNewScanRow(unprocessed, groupByWarehouse) {
416
518
  };
417
519
  }
418
520
  function applyScanQtyToStocktake(current, scanQty, type) {
419
- if (isBlank(scanQty)) {
521
+ if (isBlank$1(scanQty)) {
420
522
  return current;
421
523
  }
422
524
  const qtyNum = toNumber(scanQty);
423
525
  if (Number.isNaN(qtyNum)) {
424
526
  return current;
425
527
  }
426
- const base = isBlank(current) ? 0 : toNumber(current);
528
+ const base = isBlank$1(current) ? 0 : toNumber(current);
427
529
  return base + (type === "minus" ? -qtyNum : qtyNum);
428
530
  }
429
531
  function accumulateScanQtyOnRow(visibleRows, rowIndex, scanQty, type) {
@@ -501,7 +603,7 @@ async function getStockData({
501
603
  );
502
604
  return res || [];
503
605
  }
504
- class StocktakeTableCore extends SubTableCore {
606
+ class StocktakeTableCore extends ProfileDrivenSubTableCore {
505
607
  initData = [];
506
608
  get isGroupByWarehouse() {
507
609
  return !!this.ctx.widget?.props?.isGroupByWarehouse;
@@ -509,7 +611,6 @@ class StocktakeTableCore extends SubTableCore {
509
611
  get paramsWarehouseId() {
510
612
  return (this.pageCtx?.paramsConfig || {}).warehouseId;
511
613
  }
512
- /** 绘制UI相关工具 */
513
614
  get render() {
514
615
  return window.NocodeAdapter.stocktakeRender;
515
616
  }
@@ -517,11 +618,15 @@ class StocktakeTableCore extends SubTableCore {
517
618
  super.compUnmount();
518
619
  this.render.destroyAllModals();
519
620
  }
621
+ /**
622
+ * 运行态禁用优先按 row_source_(manual / auto / scan),
623
+ * Profile READONLY_INFO_FIELDS 作为基线由 super 合并。
624
+ */
520
625
  calcFieldStatus(params) {
521
626
  const result = super.calcFieldStatus(params);
522
627
  const { field, rowData } = params;
523
628
  const { row_source_: source } = rowData;
524
- if (field == F$2.stocktake) return result;
629
+ if (field === F$2.stocktake) return result;
525
630
  if (!Object.values(F$2).includes(field)) return result;
526
631
  if (source === WarehouseInventoryRowSource.SCAN) {
527
632
  result.disabled = F$2.location !== field;
@@ -529,7 +634,9 @@ class StocktakeTableCore extends SubTableCore {
529
634
  result.disabled = true;
530
635
  } else if (!source || source === WarehouseInventoryRowSource.MANUAL) {
531
636
  result.disabled = !AUTO_LOAD_READONLY_SELECT_FIELDS.includes(field);
532
- } else result.disabled = true;
637
+ } else {
638
+ result.disabled = true;
639
+ }
533
640
  return result;
534
641
  }
535
642
  calcFieldQuery = (params) => {
@@ -538,7 +645,8 @@ class StocktakeTableCore extends SubTableCore {
538
645
  return {
539
646
  "id_.in": rowData[F$2.inventoryLocationIds]
540
647
  };
541
- } else if (field === F$2.product) {
648
+ }
649
+ if (field === F$2.product) {
542
650
  return {
543
651
  warehouse_id_: this.paramsWarehouseId
544
652
  };
@@ -546,14 +654,13 @@ class StocktakeTableCore extends SubTableCore {
546
654
  };
547
655
  handleFieldTd = (params) => {
548
656
  const { field, tdHandler } = params;
549
- if (field === "product_id_") {
657
+ if (field === F$2.product) {
550
658
  tdHandler.mergeTd({
551
659
  cellWidget: {
552
660
  props: {
553
661
  customRenderTag: "allocateProduct",
554
662
  newSpecificConfig: {
555
663
  newOptions: []
556
- //禁用初始选项
557
664
  }
558
665
  }
559
666
  }
@@ -577,7 +684,6 @@ class StocktakeTableCore extends SubTableCore {
577
684
  label: $t("sys.edhr.editRow")
578
685
  },
579
686
  getMenuByAction(SubTableActionEnum.Insert1RowAfter),
580
- // getInsertSubMenu(),
581
687
  ...params.showDelBtn ? [
582
688
  {
583
689
  type: SubTableActionMenuTypeEnum.DIVIDER
@@ -587,9 +693,6 @@ class StocktakeTableCore extends SubTableCore {
587
693
  ];
588
694
  return menus;
589
695
  };
590
- /**
591
- * 初始化时,需要执行的异步方法
592
- */
593
696
  async init() {
594
697
  const { autoLoadStock, barcodeParsingRules } = this.bizTableConfig || {};
595
698
  if (barcodeParsingRules) {
@@ -604,24 +707,19 @@ class StocktakeTableCore extends SubTableCore {
604
707
  return e;
605
708
  });
606
709
  }
607
- /**
608
- * @param params 初始化塞默认数据,不能用异步,只有未填报时才会执行
609
- * @returns
610
- */
611
- handleInitializeFormState(params) {
710
+ handleInitializeFormState(_params) {
612
711
  return this.initData;
613
712
  }
614
- handleChange = async (params) => {
615
- const { field, rowData, value, option } = params;
616
- console.log("params-----change", params, pick(option, INVENTORY_INFO_APPLY_FIELDS));
617
- if (field === F$2.product) {
618
- merge(rowData, pick(option, INVENTORY_INFO_APPLY_FIELDS));
713
+ handleChange(params) {
714
+ super.handleChange(params);
715
+ const { field, value, option, rowData } = params;
716
+ if (field === F$2.product && option && value !== void 0 && value !== null && value !== "") {
717
+ for (const { optionField, toField } of FILL_FROM_INVENTORY_OPTION$1) {
718
+ rowData[toField] = option[optionField];
719
+ }
720
+ calcRowData(rowData);
619
721
  }
620
- calcRowData(rowData);
621
- };
622
- /**
623
- * 解析扫码的数据
624
- */
722
+ }
625
723
  async onScan({ barcode, type }) {
626
724
  const { lot, materialCode, qty = 0 } = getParseRuleValue(barcode, this.scanRuleInfo.rules_);
627
725
  if (!lot) {
@@ -636,7 +734,6 @@ class StocktakeTableCore extends SubTableCore {
636
734
  if (res?.length) {
637
735
  const materialGroups = groupRecordsByInventoryIdentity(res);
638
736
  const assignScanQty = materialGroups.length === 1;
639
- console.log("materialGroups========", materialGroups);
640
737
  const mergedIndexes = [];
641
738
  let totalSkippedForLocation = 0;
642
739
  const visibleRows = this.tableData.filter((e) => !e.deleted_);
@@ -652,7 +749,6 @@ class StocktakeTableCore extends SubTableCore {
652
749
  scanAdjustType: type,
653
750
  assignScanQty
654
751
  });
655
- console.log("result========", result);
656
752
  this.tableData = [...result.rows, ...deletedRows];
657
753
  mergedIndexes.push(...result.mergedIndexes);
658
754
  totalSkippedForLocation += result.skippedForLocation;
@@ -742,7 +838,6 @@ function processScanRecordGroup(options) {
742
838
  });
743
839
  visibleRows = appended.rows;
744
840
  const appendedCount = appended.mergedIndex != null ? 1 : 0;
745
- if (appendedCount > 0 && appended.appendMeta) ;
746
841
  if (appended.mergedIndex != null) {
747
842
  mergedIndexes.push(appended.mergedIndex);
748
843
  }
@@ -766,7 +861,6 @@ function appendUnresolvedScanRecords(options) {
766
861
  const rowData = buildRowFromResolve(
767
862
  resolveScanRecords(groupByWarehouse, recordsForNewRow),
768
863
  scanQty,
769
- // 多库位候选时 records 多条,但条码 qty 仍应写入新建行
770
864
  assignScanQty,
771
865
  scanAdjustType
772
866
  );
@@ -817,7 +911,7 @@ async function fetchInventoryInfo({
817
911
  );
818
912
  return res || [];
819
913
  }
820
- class AllocateTableCore extends SubTableCore {
914
+ class AllocateTableCore extends ProfileDrivenSubTableCore {
821
915
  /** 绘制UI相关工具 */
822
916
  get render() {
823
917
  return window.NocodeAdapter.allocateRender;
@@ -830,21 +924,15 @@ class AllocateTableCore extends SubTableCore {
830
924
  super.compUnmount();
831
925
  this.render.destroyAllModals();
832
926
  }
833
- calcDefaultMap = () => {
834
- return {
835
- origin_warehouse_id_: this.warehouseId
836
- };
837
- };
838
927
  handleFieldTd = (params) => {
839
928
  const { field, tdHandler } = params;
840
- if (field === "product_id_") {
929
+ if (field === F$3.product) {
841
930
  tdHandler.mergeTd({
842
931
  cellWidget: {
843
932
  props: {
844
933
  customRenderTag: "allocateProduct",
845
934
  newSpecificConfig: {
846
935
  newOptions: []
847
- //禁用初始选项
848
936
  }
849
937
  }
850
938
  }
@@ -852,34 +940,19 @@ class AllocateTableCore extends SubTableCore {
852
940
  }
853
941
  super.handleFieldTd(params);
854
942
  };
855
- calcFieldStatus = (params) => {
856
- const result = super.calcFieldStatus(params);
857
- const { field } = params;
858
- if ([
859
- "product_id_name_",
860
- "product_id_code_",
861
- "product_id_spec_",
862
- "stock_num_",
863
- "validity_",
864
- "origin_warehouse_id_",
865
- "origin_location_id_",
866
- "production_identification_id_"
867
- ].includes(field)) {
868
- result.disabled = true;
869
- }
870
- return result;
871
- };
872
943
  calcFieldQuery = (params) => {
873
944
  const { field, rowData } = params;
874
- if (field === "location_id_") {
945
+ if (field === F$3.location) {
875
946
  return {
876
- "warehouse_id_.eq": rowData.warehouse_id_
947
+ "warehouse_id_.eq": rowData[F$3.warehouse]
877
948
  };
878
- } else if (field === "origin_location_id_") {
949
+ }
950
+ if (field === F$3.originLocation) {
879
951
  return {
880
- "warehouse_id_.eq": rowData.origin_warehouse_id_
952
+ "warehouse_id_.eq": rowData[F$3.originWarehouse]
881
953
  };
882
- } else if (field === "product_id_") {
954
+ }
955
+ if (field === F$3.product) {
883
956
  return {
884
957
  warehouse_id_: this.warehouseId
885
958
  };
@@ -888,19 +961,6 @@ class AllocateTableCore extends SubTableCore {
888
961
  calcSubTableActionMenu = (params) => {
889
962
  const { showDelBtn } = params;
890
963
  const menus = [
891
- // {
892
- // type: SubTableActionMenuTypeEnum.SUBTITLE,
893
- // label: '业务操作',
894
- // },
895
- // getMenuByAction(SubTableActionEnum.SCAN),
896
- // getMenuByAction(SubTableActionEnum.CHANGE_PARSE_RULE),
897
- // {
898
- // type: SubTableActionMenuTypeEnum.DIVIDER,
899
- // },
900
- // {
901
- // type: SubTableActionMenuTypeEnum.SUBTITLE,
902
- // label: '行编辑',
903
- // },
904
964
  getMenuByAction(SubTableActionEnum.Insert1RowAfter),
905
965
  getCopySubMenu(),
906
966
  getInsertSubMenu(),
@@ -913,21 +973,16 @@ class AllocateTableCore extends SubTableCore {
913
973
  ].filter(Boolean);
914
974
  return menus;
915
975
  };
916
- handleChange = (params) => {
976
+ handleChange(params) {
977
+ super.handleChange(params);
917
978
  const { field, value, option, rowData } = params;
918
- const _rowData = rowData;
919
- if (field === "product_id_") {
920
- console.log("物料变更", option);
921
- _rowData.product_id_name_ = option?.product_id_name_;
922
- _rowData.product_id_code_ = option?.product_id_code_;
923
- _rowData.product_id_spec_ = option?.product_id_spec_;
924
- _rowData.production_identification_id_ = option?.production_identification_id_;
925
- _rowData.origin_warehouse_id_ = option?.warehouse_id_;
926
- _rowData.origin_location_id_ = option?.location_id_;
927
- _rowData.stock_num_ = option?.stock_num_;
928
- _rowData.validity_ = option?.validate_;
979
+ if (field !== F$3.product || !option || value === void 0 || value === null || value === "") {
980
+ return;
929
981
  }
930
- };
982
+ for (const { optionField, toField } of FILL_FROM_INVENTORY_OPTION$2) {
983
+ rowData[toField] = option[optionField];
984
+ }
985
+ }
931
986
  async onScan({ str }) {
932
987
  const data = getParseRuleValue(str, this.scanRuleInfo.rules_);
933
988
  console.log("parseScanStr", data);
@@ -948,10 +1003,16 @@ class AllocateTableCore extends SubTableCore {
948
1003
  production_identification_id_: info.production_identification_id_,
949
1004
  origin_location_id_: info.location_id_,
950
1005
  origin_warehouse_id_: info.warehouse_id_,
951
- stock_num_: info.stock_num_
1006
+ stock_num_: info.stock_num_,
1007
+ inventory_id_: info.id_,
1008
+ mfg_order_id_: info.mfg_order_id_,
1009
+ lot_sn_id_: info.lot_sn_id_,
1010
+ re_inspection_date_: info.re_inspection_date_
952
1011
  };
953
1012
  if (data.expiration) {
954
1013
  row.validity_ = dayjs(data.expiration).format("YYYY-MM-DD");
1014
+ } else if (info.validate_) {
1015
+ row.validity_ = info.validate_;
955
1016
  }
956
1017
  if (this.scanRuleProps?.fillMapArr?.length) {
957
1018
  const fillData = calcFillData(data, this.scanRuleProps.fillMapArr);
@@ -978,7 +1039,7 @@ class AllocateTableCore extends SubTableCore {
978
1039
  }
979
1040
  };
980
1041
  }
981
- const F$1 = {
1042
+ const F3 = {
982
1043
  /** 产品 */
983
1044
  product: "product_id_",
984
1045
  /** 产品标签 */
@@ -1003,69 +1064,69 @@ const F$1 = {
1003
1064
  productionDate: "production_date_"
1004
1065
  };
1005
1066
  const STERILIZE_ALWAYS_DISABLED_FIELDS = [
1006
- F$1.product,
1007
- F$1.productCode,
1008
- F$1.productSpec,
1009
- F$1.productName,
1010
- F$1.mfgOrderCode,
1011
- F$1.mfgOrder
1067
+ F3.product,
1068
+ F3.productCode,
1069
+ F3.productSpec,
1070
+ F3.productName,
1071
+ F3.mfgOrderCode,
1072
+ F3.mfgOrder
1012
1073
  ];
1013
- const CLEAR_ON_PROD_CONTAINER_EMPTY$1 = [
1014
- F$1.product,
1015
- F$1.productLb,
1016
- F$1.productName,
1017
- F$1.productCode,
1018
- F$1.productSpec,
1019
- F$1.qty,
1020
- F$1.mfgOrderCode,
1021
- F$1.mfgOrder,
1022
- F$1.mfgOrderLb,
1023
- F$1.productionDate
1074
+ const CLEAR_ON_PROD_CONTAINER_EMPTY = [
1075
+ F3.product,
1076
+ F3.productLb,
1077
+ F3.productName,
1078
+ F3.productCode,
1079
+ F3.productSpec,
1080
+ F3.qty,
1081
+ F3.mfgOrderCode,
1082
+ F3.mfgOrder,
1083
+ F3.mfgOrderLb,
1084
+ F3.productionDate
1024
1085
  ];
1025
- const fillFromOption$1 = [
1086
+ const fillFromOption = [
1026
1087
  {
1027
- optionField: F$1.product,
1028
- toField: F$1.product
1088
+ optionField: F3.product,
1089
+ toField: F3.product
1029
1090
  },
1030
1091
  {
1031
- optionField: F$1.productName,
1032
- toField: F$1.productName
1092
+ optionField: F3.productName,
1093
+ toField: F3.productName
1033
1094
  },
1034
1095
  {
1035
- optionField: F$1.productCode,
1036
- toField: F$1.productCode
1096
+ optionField: F3.productCode,
1097
+ toField: F3.productCode
1037
1098
  },
1038
1099
  {
1039
- optionField: F$1.productSpec,
1040
- toField: F$1.productSpec
1100
+ optionField: F3.productSpec,
1101
+ toField: F3.productSpec
1041
1102
  },
1042
1103
  {
1043
- optionField: F$1.mfgOrder,
1044
- toField: F$1.mfgOrder
1104
+ optionField: F3.mfgOrder,
1105
+ toField: F3.mfgOrder
1045
1106
  },
1046
1107
  {
1047
- optionField: F$1.mfgOrderCode,
1108
+ optionField: F3.mfgOrderCode,
1048
1109
  //工单号
1049
- toField: F$1.mfgOrderCode
1110
+ toField: F3.mfgOrderCode
1050
1111
  },
1051
1112
  {
1052
1113
  optionField: "real_start_date_",
1053
1114
  //生产日期
1054
- toField: F$1.productionDate
1115
+ toField: F3.productionDate
1055
1116
  },
1056
1117
  {
1057
- optionField: F$1.qty,
1058
- toField: F$1.qty
1118
+ optionField: F3.qty,
1119
+ toField: F3.qty
1059
1120
  }
1060
1121
  ];
1061
- function applyFillFromOption$1(A2, B4) {
1062
- const writableA = A2;
1063
- fillFromOption$1.forEach(({ optionField, toField }) => {
1122
+ function applyFillFromOption(A, B4) {
1123
+ const writableA = A;
1124
+ fillFromOption.forEach(({ optionField, toField }) => {
1064
1125
  if (has(B4, optionField)) {
1065
1126
  writableA[toField] = B4[optionField];
1066
1127
  }
1067
1128
  });
1068
- return A2;
1129
+ return A;
1069
1130
  }
1070
1131
  function mapContainerRowsToOptions(data = []) {
1071
1132
  return data.map((item) => ({
@@ -1155,7 +1216,7 @@ class SterilizeBatchTableCore extends SubTableCore {
1155
1216
  }
1156
1217
  handleFieldTd = (params) => {
1157
1218
  const { field, tdHandler } = params;
1158
- if (field === F$1.productionContainer) {
1219
+ if (field === F3.productionContainer) {
1159
1220
  tdHandler.mergeTd({
1160
1221
  cellWidget: {
1161
1222
  props: {
@@ -1178,7 +1239,7 @@ class SterilizeBatchTableCore extends SubTableCore {
1178
1239
  }
1179
1240
  calcFieldDataSource = (params) => {
1180
1241
  const { field } = params;
1181
- if (field !== F$1.productionContainer) return;
1242
+ if (field !== F3.productionContainer) return;
1182
1243
  const loader = async (loaderParams) => {
1183
1244
  const { mode, queryData = {}, pageNo = 1, pageSize = 100, ids = [] } = loaderParams;
1184
1245
  const query = {
@@ -1231,14 +1292,14 @@ class SterilizeBatchTableCore extends SubTableCore {
1231
1292
  };
1232
1293
  handleChange = (params) => {
1233
1294
  const { field, option, value, rowData } = params;
1234
- if (field !== F$1.productionContainer) return;
1295
+ if (field !== F3.productionContainer) return;
1235
1296
  if (option) {
1236
1297
  console.log(option);
1237
- applyFillFromOption$1(rowData, option);
1298
+ applyFillFromOption(rowData, option);
1238
1299
  return;
1239
1300
  }
1240
1301
  if (value == null || value === "") {
1241
- CLEAR_ON_PROD_CONTAINER_EMPTY$1.forEach((key) => {
1302
+ CLEAR_ON_PROD_CONTAINER_EMPTY.forEach((key) => {
1242
1303
  rowData[key] = void 0;
1243
1304
  });
1244
1305
  }
@@ -1267,191 +1328,9 @@ class SterilizeBatchTableCore extends SubTableCore {
1267
1328
  return;
1268
1329
  }
1269
1330
  const merged = { ...data, ...containerInfo };
1270
- this.tableData = [...this.showTableData, applyFillFromOption$1({}, merged)];
1331
+ this.tableData = [...this.showTableData, applyFillFromOption({}, merged)];
1271
1332
  }
1272
1333
  }
1273
- const F3 = {
1274
- /** 物料 */
1275
- product: "product_id_",
1276
- /** 物料名称 */
1277
- productName: "product_id_name_",
1278
- /** 编码 */
1279
- productCode: "product_id_code_",
1280
- /** 规格 */
1281
- productSpec: "product_id_spec_",
1282
- /** 生产批次号 */
1283
- productionContainer: "production_container_id_",
1284
- /** 数量 */
1285
- qty: "qty_",
1286
- /** 工单号 */
1287
- mfgOrderCode: "mfg_order_code_",
1288
- /** 工单 */
1289
- mfgOrder: "mfg_order_id_",
1290
- /** 生产日期 */
1291
- productionDate: "production_date_",
1292
- /** 物料批号 */
1293
- materialContainerNo: "material_container_no_",
1294
- /** 物料批号 ID */
1295
- materialContainerNoId: "material_container_no__id_"
1296
- };
1297
- const PRETREATMENT_ALWAYS_DISABLED_FIELDS = [
1298
- F3.productCode,
1299
- F3.productSpec,
1300
- F3.productName
1301
- ];
1302
- const CLEAR_ON_MFG_ORDER_EMPTY = [
1303
- F3.mfgOrderCode,
1304
- F3.product,
1305
- F3.productName,
1306
- F3.productCode,
1307
- F3.productSpec,
1308
- F3.qty,
1309
- F3.productionDate
1310
- ];
1311
- const CLEAR_ON_PROD_CONTAINER_EMPTY = [
1312
- F3.product,
1313
- F3.productName,
1314
- F3.productCode,
1315
- F3.productSpec,
1316
- F3.qty,
1317
- F3.mfgOrderCode,
1318
- F3.mfgOrder,
1319
- F3.productionDate
1320
- ];
1321
- const CLEAR_ON_MATERIAL_CONTAINER_EMPTY = [
1322
- F3.product,
1323
- F3.productName,
1324
- F3.productCode,
1325
- F3.productSpec,
1326
- F3.qty,
1327
- F3.mfgOrderCode,
1328
- F3.mfgOrder,
1329
- F3.productionDate,
1330
- F3.materialContainerNoId,
1331
- F3.productionContainer
1332
- ];
1333
- const CLEAR_ON_MFG_ORDER_SELECT = [
1334
- F3.productionContainer,
1335
- F3.materialContainerNo,
1336
- F3.materialContainerNoId
1337
- ];
1338
- const CLEAR_ON_PROD_CONTAINER_SELECT = [
1339
- F3.mfgOrder,
1340
- F3.mfgOrderCode,
1341
- F3.materialContainerNo,
1342
- F3.materialContainerNoId
1343
- ];
1344
- const CLEAR_ON_MATERIAL_CONTAINER_SELECT = [
1345
- F3.productionContainer,
1346
- F3.mfgOrder,
1347
- F3.mfgOrderCode
1348
- ];
1349
- const fillFromOption = [
1350
- {
1351
- optionField: F3.product,
1352
- toField: F3.product
1353
- },
1354
- {
1355
- optionField: F3.productName,
1356
- toField: F3.productName
1357
- },
1358
- {
1359
- optionField: F3.productCode,
1360
- toField: F3.productCode
1361
- },
1362
- {
1363
- optionField: F3.productSpec,
1364
- toField: F3.productSpec
1365
- },
1366
- {
1367
- optionField: F3.mfgOrder,
1368
- toField: F3.mfgOrder
1369
- },
1370
- {
1371
- optionField: F3.mfgOrderCode,
1372
- toField: F3.mfgOrderCode
1373
- },
1374
- {
1375
- optionField: "real_start_date_",
1376
- toField: F3.productionDate
1377
- },
1378
- {
1379
- optionField: F3.qty,
1380
- toField: F3.qty
1381
- }
1382
- ];
1383
- const fillFromMfgOrderOption = [
1384
- {
1385
- optionField: "id_",
1386
- toField: F3.mfgOrder
1387
- },
1388
- {
1389
- optionField: "code_",
1390
- toField: F3.mfgOrderCode
1391
- },
1392
- {
1393
- optionField: F3.product,
1394
- toField: F3.product
1395
- },
1396
- {
1397
- optionField: F3.productName,
1398
- toField: F3.productName
1399
- },
1400
- {
1401
- optionField: F3.productCode,
1402
- toField: F3.productCode
1403
- },
1404
- {
1405
- optionField: F3.productSpec,
1406
- toField: F3.productSpec
1407
- },
1408
- {
1409
- optionField: "real_start_date_",
1410
- toField: F3.productionDate
1411
- },
1412
- {
1413
- optionField: F3.qty,
1414
- toField: F3.qty
1415
- }
1416
- ];
1417
- const fillFromProductOption = [
1418
- {
1419
- optionField: "name_",
1420
- toField: F3.productName
1421
- },
1422
- {
1423
- optionField: "code_",
1424
- toField: F3.productCode
1425
- },
1426
- {
1427
- optionField: "spec_",
1428
- toField: F3.productSpec
1429
- }
1430
- ];
1431
- const CLEAR_ON_PRODUCT_EMPTY = [F3.productName, F3.productCode, F3.productSpec];
1432
- function applyFillFromMapping(A2, B4, mapping) {
1433
- const writableA = A2;
1434
- mapping.forEach(({ optionField, toField }) => {
1435
- if (has(B4, optionField)) {
1436
- writableA[toField] = B4[optionField];
1437
- }
1438
- });
1439
- return A2;
1440
- }
1441
- function applyFillFromOption(A2, B4) {
1442
- return applyFillFromMapping(A2, B4, fillFromOption);
1443
- }
1444
- function applyFillFromProductOption(A2, B4) {
1445
- return applyFillFromMapping(A2, B4, fillFromProductOption);
1446
- }
1447
- function applyFillFromMfgOrderOption(A2, B4) {
1448
- applyFillFromMapping(A2, B4, fillFromMfgOrderOption);
1449
- const writableA = A2;
1450
- if (!has(B4, "code_") && (B4.label != null || B4.__LABEL__ != null)) {
1451
- writableA[F3.mfgOrderCode] = B4.label ?? B4.__LABEL__;
1452
- }
1453
- return A2;
1454
- }
1455
1334
  function mapRefRowsToOptions(data = [], labelKey = "name_") {
1456
1335
  return data.map((item) => ({
1457
1336
  label: item.__LABEL__ ?? item[labelKey] ?? String(item.id_ ?? item.id ?? ""),
@@ -1631,7 +1510,10 @@ function normalizeContainerResult(res) {
1631
1510
  if (typeof data === "object") return data;
1632
1511
  return void 0;
1633
1512
  }
1634
- class PretreatmentListTableCore extends SubTableCore {
1513
+ function isBlank(value) {
1514
+ return value === void 0 || value === null || value === "";
1515
+ }
1516
+ class PretreatmentListTableCore extends ProfileDrivenSubTableCore {
1635
1517
  /** 触发扫码时的目标行 */
1636
1518
  scanTargetRow;
1637
1519
  /** 绘制UI相关工具,一期复用调拨表扫码弹窗 */
@@ -1652,16 +1534,6 @@ class PretreatmentListTableCore extends SubTableCore {
1652
1534
  calcSubTableActionMenu = (params) => {
1653
1535
  const { showDelBtn } = params;
1654
1536
  return [
1655
- // 一期暂不支持扫码
1656
- // {
1657
- // type: SubTableActionMenuTypeEnum.SUBTITLE,
1658
- // label: $t('sys.edhr.bizOperation'),
1659
- // },
1660
- // getMenuByAction(SubTableActionEnum.SCAN),
1661
- // getMenuByAction(SubTableActionEnum.CHANGE_PARSE_RULE),
1662
- // {
1663
- // type: SubTableActionMenuTypeEnum.DIVIDER,
1664
- // },
1665
1537
  {
1666
1538
  type: SubTableActionMenuTypeEnum.SUBTITLE,
1667
1539
  label: $t("sys.edhr.editRow")
@@ -1690,81 +1562,34 @@ class PretreatmentListTableCore extends SubTableCore {
1690
1562
  calcFieldStatus(params) {
1691
1563
  const result = super.calcFieldStatus(params);
1692
1564
  const { field, rowData } = params;
1693
- if (PRETREATMENT_ALWAYS_DISABLED_FIELDS.includes(field)) {
1694
- result.disabled = true;
1695
- }
1696
- if (field === F3.product) {
1697
- const hasNo = rowData[F3.materialContainerNo] != null && rowData[F3.materialContainerNo] !== "";
1698
- const idEmpty = rowData[F3.materialContainerNoId] == null || rowData[F3.materialContainerNoId] === "";
1699
- result.disabled = !(hasNo && idEmpty);
1565
+ if (field === F$4.product) {
1566
+ result.disabled = !isProductManuallyEditable(rowData);
1700
1567
  }
1701
1568
  return result;
1702
1569
  }
1703
1570
  calcFieldDataSource = (params) => {
1704
1571
  const { field } = params;
1705
- if (field === F3.productionContainer) return createProductionContainerLoader();
1706
- if (field === F3.mfgOrder) return createMfgOrderLoader();
1707
- if (field === F3.materialContainerNo) return createMaterialContainerLoader();
1572
+ if (field === F$4.productionContainer) return createProductionContainerLoader();
1573
+ if (field === F$4.mfgOrder) return createMfgOrderLoader();
1574
+ if (field === F$4.materialContainerNo) return createMaterialContainerLoader();
1708
1575
  };
1709
- handleChange = (params) => {
1576
+ handleChange(params) {
1577
+ super.handleChange(params);
1710
1578
  const { field, option, value, rowData } = params;
1711
- const writable = rowData;
1712
- const hasValue = value != null && value !== "";
1713
- if (field === F3.mfgOrder) {
1714
- if (option) {
1715
- applyFillFromMfgOrderOption(rowData, option._item ?? option);
1716
- }
1717
- if (hasValue) {
1718
- CLEAR_ON_MFG_ORDER_SELECT.forEach((key) => {
1719
- writable[key] = void 0;
1720
- });
1721
- } else {
1722
- CLEAR_ON_MFG_ORDER_EMPTY.forEach((key) => {
1723
- writable[key] = void 0;
1724
- });
1725
- }
1726
- return;
1727
- }
1728
- if (field === F3.productionContainer) {
1729
- if (option) {
1730
- applyFillFromOption(rowData, option._item ?? option);
1731
- }
1732
- if (hasValue) {
1733
- CLEAR_ON_PROD_CONTAINER_SELECT.forEach((key) => {
1734
- writable[key] = void 0;
1735
- });
1736
- } else {
1737
- CLEAR_ON_PROD_CONTAINER_EMPTY.forEach((key) => {
1738
- writable[key] = void 0;
1739
- });
1740
- }
1579
+ if (!option || isBlank(value)) return;
1580
+ const source = option._item ?? option;
1581
+ if (field === F$4.mfgOrder) {
1582
+ applyFillFromMfgOrderOption(rowData, source);
1741
1583
  return;
1742
1584
  }
1743
- if (field === F3.materialContainerNo) {
1744
- if (option) {
1745
- applyFillFromOption(rowData, option._item ?? option);
1746
- }
1747
- if (hasValue) {
1748
- CLEAR_ON_MATERIAL_CONTAINER_SELECT.forEach((key) => {
1749
- writable[key] = void 0;
1750
- });
1751
- } else {
1752
- CLEAR_ON_MATERIAL_CONTAINER_EMPTY.forEach((key) => {
1753
- writable[key] = void 0;
1754
- });
1755
- }
1585
+ if (field === F$4.productionContainer || field === F$4.materialContainerNo) {
1586
+ applyFillFromOption$1(rowData, source);
1756
1587
  return;
1757
1588
  }
1758
- if (field === F3.product) {
1759
- if (option) {
1760
- applyFillFromProductOption(rowData, option._item ?? option);
1761
- } else if (!hasValue) {
1762
- CLEAR_ON_PRODUCT_EMPTY.forEach((key) => {
1763
- writable[key] = void 0;
1764
- });
1765
- }
1589
+ if (field === F$4.product) {
1590
+ applyFillFromProductOption(rowData, source);
1766
1591
  }
1767
- };
1592
+ }
1768
1593
  async onScan({ str }) {
1769
1594
  if (!this.scanRuleInfo) {
1770
1595
  this.error({ content: $t("sys.edhr.mcTable.scanRuleNotFound") });
@@ -1789,7 +1614,7 @@ class PretreatmentListTableCore extends SubTableCore {
1789
1614
  }
1790
1615
  const merged = { ...data, ...containerInfo };
1791
1616
  const applyScanFill = (row) => {
1792
- applyFillFromOption(row, merged);
1617
+ applyFillFromOption$1(row, merged);
1793
1618
  CLEAR_ON_MATERIAL_CONTAINER_SELECT.forEach((key) => {
1794
1619
  row[key] = void 0;
1795
1620
  });
@@ -1808,7 +1633,21 @@ function getClassByType(type) {
1808
1633
  return SterilizeBatchTableCore;
1809
1634
  case SubTableType.PRETREATMENT_LIST:
1810
1635
  return PretreatmentListTableCore;
1811
- // 出入库 / 入库 / 出库:渲染端暂走通用 SubTableCore,设计态 Profile 单独演进后再迁
1636
+ case SubTableType.WAREHOUSE_IN:
1637
+ return WarehouseInTableCore;
1638
+ case SubTableType.WAREHOUSE_OUT:
1639
+ return WarehouseOutTableCore;
1640
+ case SubTableType.WAREHOUSE_INBOUND:
1641
+ return WarehouseInboundTableCore;
1642
+ case SubTableType.WAREHOUSE_OUTBOUND:
1643
+ return WarehouseOutboundTableCore;
1644
+ case SubTableType.PART_STOCKTAKE:
1645
+ return PartStocktakeTableCore;
1646
+ case SubTableType.DEVICE_PART_CONSUME:
1647
+ return DevicePartConsumeTableCore;
1648
+ case SubTableType.MATERIAL_REQUISITION:
1649
+ return MaterialRequisitionTableCore;
1650
+ // 出入库:渲染端暂走通用 SubTableCore,后续按 Profile 迁移
1812
1651
  default:
1813
1652
  return SubTableCore;
1814
1653
  }
@@ -2346,6 +2185,7 @@ function useRenderPageFactory(props, payload) {
2346
2185
  // 原mfgOrderCode后端给的不是 Id,但工单号字段绑的是id,所以导致数据回显会有问题,新加了mfgOrderId字段,这里做兼容处理
2347
2186
  mainMfgOrderId: paramsConfig?._gct_nocode_mfg_order_id_ || paramsConfig?.mfgOrderId || paramsConfig?.mfgOrderCode,
2348
2187
  mainWarehouseId: paramsConfig?.warehouseId,
2188
+ mainLotSnId: paramsConfig?.lotSnId,
2349
2189
  mainProductQty: paramsConfig?.productQty,
2350
2190
  mainSterilizationLot: paramsConfig?.sterilizationLot,
2351
2191
  mainSterilizationLotId: paramsConfig?.sterilizationLotId,
@@ -2534,9 +2374,9 @@ function useRenderPageFactory(props, payload) {
2534
2374
  const prevMap = info.validatorMessageMap ?? {};
2535
2375
  const sameLocations = prevLocations.length === nextLocations.length && nextLocations.every((k, i) => k === prevLocations[i]);
2536
2376
  const sameMessages = sameLocations && nextLocations.every((k) => {
2537
- const a6 = prevMap[k];
2538
- const b11 = map[k];
2539
- return JSON.stringify(a6) === JSON.stringify(b11);
2377
+ const a9 = prevMap[k];
2378
+ const b2 = map[k];
2379
+ return JSON.stringify(a9) === JSON.stringify(b2);
2540
2380
  });
2541
2381
  if (sameMessages) return;
2542
2382
  closeValidatorPopovers();
@@ -3594,43 +3434,44 @@ function useMaterialStocktake() {
3594
3434
  };
3595
3435
  }
3596
3436
  export {
3597
- aa as AITooltips,
3437
+ aq as AITooltips,
3598
3438
  AllocateTableCore,
3599
3439
  B3 as BaseFormModelFetcher,
3600
- ac as BinarizeMethodOptions,
3601
- am as BindCmpStyleEnum,
3602
- z as BooleanShowMode,
3440
+ as as BinarizeMethodOptions,
3441
+ aC as BindCmpStyleEnum,
3442
+ R as BooleanShowMode,
3603
3443
  B2 as BorderTD,
3604
3444
  BpmnNodeTypeEnum,
3605
- b0 as BpmnSignatureTypeEnum,
3606
- b1 as ButtonTypeEnum,
3445
+ bB as BpmnSignatureTypeEnum,
3446
+ bC as ButtonTypeEnum,
3607
3447
  B as BwipCodeType,
3608
- b2 as CHECK_TABLE_MEDPRO_PROTOCOL_KEY,
3609
- h as CellType,
3610
- J as CellWidgetViewState,
3448
+ bD as CHECK_TABLE_MEDPRO_PROTOCOL_KEY,
3449
+ t as CellType,
3450
+ a0 as CellWidgetViewState,
3611
3451
  CheckDsTypeEnum,
3612
- b3 as CodeRunner,
3452
+ bE as CodeRunner,
3613
3453
  ComponentTypeEnum,
3614
- b4 as Config_Fields,
3615
- b5 as ControlStatusEnum,
3616
- ak as DateFormat,
3617
- an as DecimalDisplayMode,
3618
- ab as DenoiseMethodOptions,
3454
+ bF as Config_Fields,
3455
+ bG as ControlStatusEnum,
3456
+ aA as DateFormat,
3457
+ aD as DecimalDisplayMode,
3458
+ ar as DenoiseMethodOptions,
3619
3459
  m as DeviceConnector,
3620
- a8 as DeviceLink,
3621
- D2 as DeviceLinkTmplUtil,
3622
- a9 as DeviceParamsTypeTitle,
3623
- K as DiagonalDirection,
3624
- N as DiagonalVertex,
3460
+ ao as DeviceLink,
3461
+ D as DeviceLinkTmplUtil,
3462
+ ap as DeviceParamsTypeTitle,
3463
+ DevicePartConsumeTableCore,
3464
+ a1 as DiagonalDirection,
3465
+ a5 as DiagonalVertex,
3625
3466
  _ as DocumentLayout,
3626
- n2 as DocumentLoading,
3467
+ n as DocumentLoading,
3627
3468
  c as DocumentPaper,
3628
- o2 as DynamicQuickFillModal,
3469
+ o as DynamicQuickFillModal,
3629
3470
  d as DynamicTableAction,
3630
- b6 as EBR_PROVIDE_ENUM,
3631
- ay as EFieldBizTypeEnum,
3632
- Z as EmptySymbol,
3633
- b7 as FieldSysVarDefaultValueEnum,
3471
+ bH as EBR_PROVIDE_ENUM,
3472
+ aO as EFieldBizTypeEnum,
3473
+ ae as EmptySymbol,
3474
+ bI as FieldSysVarDefaultValueEnum,
3634
3475
  FillingTypeEnum,
3635
3476
  F as FixedQuickFillModal,
3636
3477
  FormAnnotationController,
@@ -3638,122 +3479,130 @@ export {
3638
3479
  FormTmplBomController,
3639
3480
  p as FormTmplConfigController,
3640
3481
  FormTypeEnum,
3641
- a4 as ImageDisplayModeEnum,
3482
+ ak as ImageDisplayModeEnum,
3642
3483
  I as InstanceStatusValues,
3643
- ae as JoinModelTypeEum,
3644
- y as LabelPosition,
3645
- M as LineDirection,
3484
+ au as JoinModelTypeEum,
3485
+ Q as LabelPosition,
3486
+ a3 as LineDirection,
3646
3487
  L as LineType,
3647
- M2 as MBRender,
3488
+ M as MBRender,
3648
3489
  q as MCDataUtil,
3649
- a3 as MCRender,
3490
+ a7 as MCRender,
3650
3491
  MaterialConsumeTableController,
3651
3492
  MaterialConsumptionPatternEnum,
3493
+ MaterialRequisitionTableCore,
3652
3494
  MaterialStatusEnum,
3653
- b8 as MobileFillTypeEnum,
3495
+ bJ as MobileFillTypeEnum,
3654
3496
  NCB_PROVIDE,
3655
3497
  O2 as OCR_MODEL_PRECISION_ENUM_KEY,
3656
- b9 as OfficeTypeEnum,
3498
+ bK as OfficeTypeEnum,
3657
3499
  O as Orientation,
3658
- b as PageSizeEnum,
3500
+ j as PageSizeEnum,
3659
3501
  P as PaginationFormat,
3660
- a5 as PaperSizeMap,
3661
- a as PaperWidgeType,
3662
- n as PaperWidgeValueType,
3663
- ad as ParamModelTypeEnum,
3502
+ al as PaperSizeMap,
3503
+ h as PaperWidgeType,
3504
+ G as PaperWidgeValueType,
3505
+ at as ParamModelTypeEnum,
3506
+ PartStocktakeTableCore,
3664
3507
  PlatformEnum,
3665
- ba as PosEnum,
3508
+ bL as PosEnum,
3666
3509
  PretreatmentListTableCore,
3667
- bb as RangeCompareOp,
3668
- av as RangeValidateMode,
3510
+ ProfileDrivenSubTableCore,
3511
+ bM as RangeCompareOp,
3512
+ aL as RangeValidateMode,
3669
3513
  RenderModeEnum,
3670
- E as SignShowTypeEnum,
3671
- A as SignatureNumberTypeEnum,
3672
- D as SignatureTimeTypeEnum,
3673
- G as SignatureTypeEnum,
3514
+ W as SignShowTypeEnum,
3515
+ T as SignatureNumberTypeEnum,
3516
+ V as SignatureTimeTypeEnum,
3517
+ X as SignatureTypeEnum,
3674
3518
  SterilizeBatchTableCore,
3675
3519
  StocktakeTableCore,
3676
3520
  SubTableCore,
3677
3521
  SubTableCoreFactory,
3678
3522
  SubTableType,
3679
- bc as SummaryApproveHisTypeEnum,
3680
- T as TimeDiffFormat,
3681
- V as ViewTypeEnum,
3682
- W as WidgetImageSizeMode,
3683
- bd as applyCheckDsDataToRuntime,
3684
- be as applyMedProCheckDsDataToRuntime,
3523
+ bN as SummaryApproveHisTypeEnum,
3524
+ a4 as TimeDiffFormat,
3525
+ a8 as ViewTypeEnum,
3526
+ WarehouseInTableCore,
3527
+ WarehouseInboundTableCore,
3528
+ WarehouseOutTableCore,
3529
+ WarehouseOutboundTableCore,
3530
+ a2 as WidgetImageSizeMode,
3531
+ bO as applyCheckDsDataToRuntime,
3532
+ bP as applyMedProCheckDsDataToRuntime,
3685
3533
  baseDataUtils,
3686
- bf as buildFormChangeDisplayRows,
3687
- bg as buildStableFieldLocation,
3534
+ bQ as buildFormChangeDisplayRows,
3535
+ bR as buildStableFieldLocation,
3688
3536
  calcFillData,
3689
3537
  calcUtils,
3690
3538
  clearFormRules,
3691
3539
  collectAnnotationItemsByLocation,
3692
3540
  collectFormChangeFieldLocations,
3693
3541
  commonUtils,
3694
- bh as deleteSubtableRow,
3695
- bi as detailsHaveFormChangeRowOps,
3542
+ bS as deleteSubtableRow,
3543
+ bT as detailsHaveFormChangeRowOps,
3696
3544
  enrichFormChangeRowDetails,
3697
- bj as extractFormChangeRowDetails,
3545
+ bU as extractFormChangeRowDetails,
3698
3546
  extractKeywordFromQueryData,
3699
- bk as fetchCheckDsDataForTable,
3700
- bl as fetchCustomCheckDsData,
3547
+ bV as fetchCheckDsDataForTable,
3548
+ bW as fetchCustomCheckDsData,
3701
3549
  fetchHistoryConsume,
3702
- bm as fetchMedProCheckDsData,
3550
+ bX as fetchMedProCheckDsData,
3703
3551
  filterAnnotationItemsUpToCurrent,
3704
3552
  getAppInfo,
3705
- bn as getCheckTableSnapshotKey,
3706
- bo as getFormChangeRowKey,
3707
- bp as getFormChangeRowOp,
3708
- au as getLotLockedReason,
3709
- bq as getParseRuleConfig,
3553
+ bY as getCheckTableSnapshotKey,
3554
+ bZ as getFormChangeRowKey,
3555
+ b_ as getFormChangeRowOp,
3556
+ aK as getLotLockedReason,
3557
+ b$ as getParseRuleConfig,
3710
3558
  getParseRuleInfo,
3711
3559
  getParseRuleValue,
3712
- br as getSubTableQuickFillInfo,
3560
+ c0 as getSubTableQuickFillInfo,
3713
3561
  getSuiteKey,
3714
- bs as handleOldConfig,
3715
- bt as hasAnyCheckTableSnapshot,
3716
- bu as hasByTableCheckTableSnapshot,
3717
- bv as hasSharedCheckTableSnapshot,
3718
- bw as insertSubtableRows,
3719
- bx as isAnnLocationSelected,
3562
+ c1 as handleOldConfig,
3563
+ c2 as hasAnyCheckTableSnapshot,
3564
+ c3 as hasByTableCheckTableSnapshot,
3565
+ c4 as hasSharedCheckTableSnapshot,
3566
+ c5 as insertSubtableRows,
3567
+ c6 as isAnnLocationSelected,
3720
3568
  isBomGranted,
3721
3569
  isEdhrSuite,
3722
- by as isFormChangeGhostRow,
3723
- bz as isMedProSuite,
3724
- bA as isRowAddedInCurrentFormChange,
3725
- bB as jsonSchemaUtils,
3726
- bC as judgeUnique,
3727
- bD as materialCheck,
3728
- bE as migrateDiagonalDirectionToVertex,
3570
+ isEqmSuite,
3571
+ c7 as isFormChangeGhostRow,
3572
+ c8 as isMedProSuite,
3573
+ c9 as isRowAddedInCurrentFormChange,
3574
+ ca as jsonSchemaUtils,
3575
+ cb as judgeUnique,
3576
+ cc as materialCheck,
3577
+ cd as migrateDiagonalDirectionToVertex,
3729
3578
  nextFormChangeRowViewHistoryId,
3730
- ap as normalizeRefLoaderResult,
3731
- bF as parseFrontConfig,
3732
- bG as recordSubtableRowAdd,
3733
- bH as recordSubtableRowDelete,
3734
- aq as refUtils,
3579
+ aF as normalizeRefLoaderResult,
3580
+ ce as parseFrontConfig,
3581
+ cf as recordSubtableRowAdd,
3582
+ cg as recordSubtableRowDelete,
3583
+ aG as refUtils,
3735
3584
  registerValidationContext,
3736
- bI as relocateDeletedRowsToEnd,
3585
+ ch as relocateDeletedRowsToEnd,
3737
3586
  renderUtils,
3738
3587
  requestDisplayValidation,
3739
3588
  requestFullValidation,
3740
- bJ as requestMedProCheckDsData,
3741
- bK as requestNonMedProCheckDsData,
3742
- bL as resolveAnnotationFieldLocation,
3743
- Q as resolveDiagonalVertex,
3744
- bM as resolveFormChangeRowUi,
3745
- bN as resolveRowFormChangeMark,
3746
- ai as setSelectAnnotationId,
3747
- bO as setSelectMobileTdId,
3748
- ah as setSelectValidatorId,
3589
+ ci as requestMedProCheckDsData,
3590
+ cj as requestNonMedProCheckDsData,
3591
+ ck as resolveAnnotationFieldLocation,
3592
+ a6 as resolveDiagonalVertex,
3593
+ cl as resolveFormChangeRowUi,
3594
+ cm as resolveRowFormChangeMark,
3595
+ ay as setSelectAnnotationId,
3596
+ cn as setSelectMobileTdId,
3597
+ ax as setSelectValidatorId,
3749
3598
  settleAndValidateDisplay,
3750
- af as sqlUtils,
3751
- bP as stockCheck,
3599
+ av as sqlUtils,
3600
+ co as stockCheck,
3752
3601
  transformUtils,
3753
3602
  unregisterValidationContext,
3754
- o as useCalculateFormula,
3755
- at as useCurrentPageFormState,
3756
- ax as useDependency,
3603
+ H as useCalculateFormula,
3604
+ aJ as useCurrentPageFormState,
3605
+ aN as useDependency,
3757
3606
  useEbrWikiFactoryV2,
3758
3607
  u3 as useFormModel,
3759
3608
  u2 as useFormTmplConfig,
@@ -3761,12 +3610,12 @@ export {
3761
3610
  useMaterialBalance,
3762
3611
  useMaterialStocktake,
3763
3612
  useNocodeEmitter,
3764
- aj as useNocodeFormWidget,
3765
- bQ as useOnlineFormActionButton,
3613
+ az as useNocodeFormWidget,
3614
+ cp as useOnlineFormActionButton,
3766
3615
  u as useOnlineFormTransformField2Component,
3767
3616
  useRenderPageFactory,
3768
- a2 as useStyles,
3769
- b10 as useValidator,
3770
- ag as useWidgetStaticAttrs,
3617
+ a as useStyles,
3618
+ b as useValidator,
3619
+ aw as useWidgetStaticAttrs,
3771
3620
  validate
3772
3621
  };