@gct-paas/excel 0.1.40-beta.5 → 0.1.40-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BaseComponent-BlDgF4NL.js → BaseComponent-ByKSQlX5.js} +2 -2
- package/dist/{VueVideoPlayer-abpwAqu3.js → VueVideoPlayer-D9kpfmiz.js} +2 -2
- package/dist/{align-editor-BdF6r-Gs.js → align-editor-lWVPNKlR.js} +1 -1
- package/dist/{barcode-design-Dqzu8TED.js → barcode-design-zpWBlelw.js} +2 -2
- package/dist/base/index.es.js +352 -110
- package/dist/{diagonal-design-OOLJ1YWE.js → diagonal-design-CzRKVjcY.js} +2 -2
- package/dist/{dynamic-table-action-C__4AVW6.js → dynamic-table-action-DkHb1ST4.js} +150 -150
- package/dist/{dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-BAl7OidW.js → dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-CAg9oyuD.js} +578 -521
- package/dist/{edit.utils-CXmmCnxE-CaVD32MC.js → edit.utils-CXmmCnxE-DIhkrimt.js} +1 -1
- package/dist/excel.css +359 -256
- package/dist/{exceljs.min-C3uJ_Ieg.js → exceljs.min-DoNsTxQp.js} +2 -2
- package/dist/{font-editor-BZvGZaYO.js → font-editor-N7060zuX.js} +3 -3
- package/dist/{image-design-Dt_97Q--.js → image-design-fXKNGIm3.js} +2 -2
- package/dist/{index-BOehk-Mo.js → index-7J6OP2x9.js} +2 -2
- package/dist/{index-Bn4BqmG_.js → index-8A45IOjw.js} +2 -2
- package/dist/{index-DMVoiSyn.js → index-8BLKPnwH.js} +1 -1
- package/dist/{index-DzAPpHun.js → index-B5FuofNW.js} +2 -2
- package/dist/{index-DfAWRc7u.js → index-B6fCHnZl.js} +2 -2
- package/dist/{index-CKnArHCM.js → index-BA4zmgdk.js} +2 -2
- package/dist/{index-6_pgVPOb.js → index-BDRyjPGr.js} +651 -450
- package/dist/{index-D2bXGJMB.js → index-BEX6lJX9.js} +2 -2
- package/dist/{index-CwvVx_5V.js → index-BJA3YJns.js} +3 -3
- package/dist/{index-CD04dkRd.js → index-BXxzWXS4.js} +1 -1
- package/dist/{index-Lrse9db3.js → index-Bgh8yfAl.js} +2 -2
- package/dist/{index-C-wSYnoD.js → index-Bh-tmh-F.js} +2 -2
- package/dist/{index-Bxdq78c9.js → index-C4Mlck0_.js} +1 -1
- package/dist/{index-DLx-4gQ_.js → index-C5IwDker.js} +4 -4
- package/dist/{index-Cvj6_0dy.js → index-C6STl6m-.js} +1 -1
- package/dist/{index-DiZHDEas.js → index-CCw8gM1y.js} +1 -1
- package/dist/{index-DJqTfkOe.js → index-CZIuP6b-.js} +2 -2
- package/dist/{index-ZBaLDzvn.js → index-CaojJi0S.js} +1 -1
- package/dist/{index-BcSq5laa.js → index-CbeaPNDv.js} +2 -2
- package/dist/{index-DbN8jrOK.js → index-CfY2WTcN.js} +2 -2
- package/dist/{index-Cy3658Zd.js → index-CtHy6vBq.js} +3 -3
- package/dist/{index-CMzci3SX.js → index-CuHKZOUw.js} +2 -2
- package/dist/{index-Bes3atoZ.js → index-Cza077GN.js} +2 -2
- package/dist/{index-DgvOxMoA.js → index-DGyygsxH.js} +2 -2
- package/dist/{index-DhJQOZHh.js → index-DSUDSbPf.js} +1 -1
- package/dist/{index-Cy17m87b.js → index-DeEz6LI3.js} +2 -2
- package/dist/{index-B2xCe29Z.js → index-DgbgqO-w.js} +1 -1
- package/dist/{index-BGHQz2Uj.js → index-DnHsEIgl.js} +2 -2
- package/dist/{index-D4lTMizD.js → index-Xx36PP2U.js} +2 -2
- package/dist/{index-CVJadZzs.js → index-a0vY4sVG.js} +2 -2
- package/dist/{index--9zZnmyE.js → index-bRZUDA7R.js} +1 -1
- package/dist/{index-NiQurze3.js → index-gEI8m-b5.js} +1 -1
- package/dist/{index-DVFXRZRw.js → index-pSRRsoDQ.js} +4 -4
- package/dist/{index-BDvLu-0F.js → index-tjo9dn4X.js} +2 -2
- package/dist/{index-DF5OI_Xj.js → index-yf50oYV1.js} +3 -3
- package/dist/index.es.js +2 -2
- package/dist/{mb-render-CDFmykM_.js → mb-render-BCtvoXM-.js} +8 -2
- package/dist/{online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-Db5Hce6z.js → online-form-model-select.vue_vue_type_script_setup_true_name_online-form-model-select_lang-DbNfQIzD.js} +1 -1
- package/dist/{pagination-design-Dz7y8YKu.js → pagination-design-BLhJhoHb.js} +2 -2
- package/dist/paper-widget-design-B8gKgZep.js +4 -0
- package/dist/{print-runtime-instance-Bq1p758u.js → print-runtime-instance-v1jzD3oO.js} +1 -1
- package/dist/{print-snapshot-renderer-BWVZ-Lql.js → print-snapshot-renderer-BSf76qD7.js} +3 -3
- package/dist/{qrcode-design-Dq0tczvD.js → qrcode-design-D9f0hRKd.js} +1 -1
- package/dist/{revo-grid.entry-BKZT_dju.js → revo-grid.entry-NMojEZjd.js} +1 -1
- package/dist/{revogr-attribution_7.entry-CXdkYl1q.js → revogr-attribution_7.entry-jR0LwEie.js} +3 -3
- package/dist/{revogr-clipboard_3.entry-Dq9k6E4q.js → revogr-clipboard_3.entry-DMQ65QLh.js} +2 -2
- package/dist/{revogr-data_4.entry-CpBkj9S_.js → revogr-data_4.entry-Buvf7dRf.js} +2 -2
- package/dist/{revogr-filter-panel.entry-Bu5hYWK7.js → revogr-filter-panel.entry-TLjszdsH.js} +1 -1
- package/dist/seal-design-B80mv8SJ.js +4 -0
- package/dist/{serialnumber-design-DUqW6M9C.js → serialnumber-design-DsSZwN3t.js} +1 -1
- package/dist/shared/index.es.js +9 -9
- package/dist/{single-field-drop-MXmkrdjF.js → single-field-drop-DRMCsh_s.js} +2 -2
- package/dist/{size-editor-DCVa84rA.js → size-editor-m8uyQ1bU.js} +1 -1
- package/dist/src/domain/document-business/business/product-release/profile.d.ts +2 -0
- package/dist/src/domain/document-business/business/product-release/service.d.ts +2 -0
- package/dist/src/domain/document-business/index.d.ts +2 -0
- package/dist/src/domain/document-business/registry.d.ts +2 -0
- package/dist/src/domain/document-business/runtime/field-query-runtime.d.ts +4 -0
- package/dist/src/domain/document-business/types.d.ts +24 -0
- package/dist/src/domain/field/number/product-release-qty-manifest.d.ts +2 -0
- package/dist/src/domain/field/query-filter.d.ts +15 -0
- package/dist/src/domain/table/business/material/material-substitution/profile/field-keys.d.ts +13 -11
- package/dist/src/domain/table/business/material/material-substitution/runtime/select-loaders.d.ts +8 -0
- package/dist/src/nocode-base/src/core/sub-table/profile-driven-sub-table-core.d.ts +3 -3
- package/dist/src/nocode-base/src/hooks/form-model/form-model-controller.d.ts +2 -0
- package/dist/src/nocode-base/src/hooks/material-consume-object/initialize-autofill.d.ts +17 -0
- package/dist/src/nocode-base/src/hooks/material-consume-object/object-validation-controller.d.ts +24 -0
- package/dist/src/nocode-base/src/hooks/render-page/initialize-runtime.d.ts +1 -0
- package/dist/src/nocode-base/src/hooks/useRenderPageFactory.d.ts +3 -0
- package/dist/src/nocode-base/src/interface/ref-loader.d.ts +12 -1
- package/dist/src/nocode-base/src/interface/render.d.ts +3 -1
- package/dist/src/nocode-base/src/interface/transform.d.ts +9 -1
- package/dist/src/nocode-base/src/types/common/base.d.ts +2 -0
- package/dist/src/online-form/src/views/__cell_widgets__/cell-widget-design.vue.d.ts +1 -0
- package/dist/src/online-form/src/views/__cell_widgets__/fake-field/fake-option-select.vue.d.ts +1 -0
- package/dist/src/online-form/src/views/designer/constants/index.d.ts +1 -0
- package/dist/src/shared/enum/field-type.d.ts +7 -2
- package/dist/src/shared/utils/withRequestCache.d.ts +27 -0
- package/dist/{sub-table-factory-BBiAj7oz.js → sub-table-factory-BxxIXXCZ.js} +194 -85
- package/dist/{text-design-BfXr3TcH.js → text-design-DgOV0ZhV.js} +2 -2
- package/dist/{throttle-Cpk1LoGk-BtY6yO1U.js → throttle-Cpk1LoGk-Dj14U5ox.js} +1 -1
- package/dist/{timediff-design-BF-mVD2d.js → timediff-design-C0zYdIQI.js} +1 -1
- package/dist/{trace-like-wrapper-2AsEoSS7.js → trace-like-wrapper-XB73ltP9.js} +2 -2
- package/dist/{value-editor.vue_vue_type_style_index_0_lang-D8_zt9JM.js → value-editor.vue_vue_type_style_index_0_lang-CRFXw695.js} +2 -2
- package/dist/web-render/index.es.js +3 -3
- package/dist/{widget-barcode-BMnwSzpx.js → widget-barcode-BLKBY_Dh.js} +4 -4
- package/dist/{widget-diagonal-iuAFZn-R.js → widget-diagonal-LVxcpB3b.js} +3 -3
- package/dist/{widget-image-sZeIt4K6.js → widget-image-Cch0ImSI.js} +5 -5
- package/dist/{widget-line-izrJUAAT.js → widget-line-CUSNrxgG.js} +2 -2
- package/dist/{widget-pagination-CTANdU2l.js → widget-pagination-CM1S6Ytp.js} +5 -5
- package/dist/{widget-power-OZD7bTxW.js → widget-power-DQJ8F2R7.js} +3 -3
- package/dist/{widget-qrcode-xvyklot3.js → widget-qrcode-BmnaFfc4.js} +3 -3
- package/dist/{widget-rangelimit-BZhTuRkT.js → widget-rangelimit-Db0ZX6Fb.js} +3 -3
- package/dist/{widget-serialnumber-BwUHV475.js → widget-serialnumber-BEOWsFs1.js} +1 -1
- package/dist/{widget-text-B8MzTxa3.js → widget-text-DZFAhPxy.js} +5 -5
- package/dist/{widget-timediff-YAH8bbso.js → widget-timediff-C_Nh7uw-.js} +2 -2
- package/package.json +2 -2
- package/dist/paper-widget-design-BlIbv2tj.js +0 -4
- package/dist/seal-design-LHZWDjEb.js +0 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, computed, resolveComponent, openBlock, createElementBlock, createElementVNode, toDisplayString, createVNode } from "vue";
|
|
2
|
-
import { a9 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-
|
|
2
|
+
import { a9 as _export_sfc } from "./dynamic-table-action.vue_vue_type_style_index_0_scoped_53d7e66c_lang-CAg9oyuD.js";
|
|
3
3
|
const _hoisted_1 = { class: "row" };
|
|
4
4
|
const _hoisted_2 = { class: "row mt-6px" };
|
|
5
5
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { FieldQueryFilter } from '../../field/query-filter';
|
|
2
|
+
import { BusinessFieldQueryContext } from '../types';
|
|
3
|
+
/** 按业务场景与字段匹配规则;规则失败时保留原查询,失败结果不进入缓存。 */
|
|
4
|
+
export declare function resolveBusinessFieldFilters(context: BusinessFieldQueryContext): Promise<FieldQueryFilter[]>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { FIELD_TYPE } from '../../shared/enum';
|
|
2
|
+
import { FieldQueryFilter } from '../field/query-filter';
|
|
3
|
+
/** detail 业务类型、实例参数与当前查询字段;业务规则无需依赖组件。 */
|
|
4
|
+
export interface BusinessFieldQueryContext {
|
|
5
|
+
businessType?: string;
|
|
6
|
+
paramsConfig: Readonly<Record<string, unknown>>;
|
|
7
|
+
fieldType?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface BusinessFieldQueryRule {
|
|
10
|
+
id: string;
|
|
11
|
+
match: {
|
|
12
|
+
fieldType: FIELD_TYPE;
|
|
13
|
+
};
|
|
14
|
+
/** 声明结果缓存的依赖参数,由 Runtime 统一执行缓存和请求去重。 */
|
|
15
|
+
cache?: {
|
|
16
|
+
key: (context: BusinessFieldQueryContext) => unknown;
|
|
17
|
+
ttlMs?: number;
|
|
18
|
+
};
|
|
19
|
+
resolveFilters: (context: BusinessFieldQueryContext) => Promise<readonly FieldQueryFilter[]>;
|
|
20
|
+
}
|
|
21
|
+
export interface DocumentBusinessProfile {
|
|
22
|
+
businessType: string;
|
|
23
|
+
fieldQueries: readonly BusinessFieldQueryRule[];
|
|
24
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** 下拉接口使用的查询结构,与渲染组件解耦。 */
|
|
2
|
+
export interface FieldQuery {
|
|
3
|
+
queryData?: Record<string, unknown>;
|
|
4
|
+
exp?: string;
|
|
5
|
+
}
|
|
6
|
+
/** 空 values 明确表示无候选,空条件列表表示不追加过滤。 */
|
|
7
|
+
export interface FieldQueryFilter {
|
|
8
|
+
field: string;
|
|
9
|
+
operator: 'in';
|
|
10
|
+
values: readonly string[];
|
|
11
|
+
}
|
|
12
|
+
/** 空 in 可能被接口视为不筛选,使用占位值表达无候选。 */
|
|
13
|
+
export declare const EMPTY_QUERY_VALUE = "__excel_no_matching_query_value__";
|
|
14
|
+
/** 附加条件统一按 AND 合并;同字段 IN 条件取交集,保留已有搜索表达式。 */
|
|
15
|
+
export declare function mergeQueryFilters(query: FieldQuery, filters: readonly FieldQueryFilter[]): FieldQuery;
|
package/dist/src/domain/table/business/material/material-substitution/profile/field-keys.d.ts
CHANGED
|
@@ -30,6 +30,8 @@ export declare const F: {
|
|
|
30
30
|
readonly targetMaterialNoLb: "target_material_no__lb_";
|
|
31
31
|
/** 替换物料 */
|
|
32
32
|
readonly targetProduct: "target_product_id_";
|
|
33
|
+
/** 替换物料展示值 */
|
|
34
|
+
readonly targetProductLb: "target_product_id__lb_";
|
|
33
35
|
/** 替换物料名称 */
|
|
34
36
|
readonly targetProductName: "target_product_id_name_";
|
|
35
37
|
/** 替换物料编码 */
|
|
@@ -44,7 +46,7 @@ export type MaterialSubstitutionFieldKey = (typeof F)[keyof typeof F];
|
|
|
44
46
|
export declare const DISABLED_INPUT_FIELDS: readonly ["source_material_no_", "source_product_id_name_", "source_product_id_code_", "source_product_id_spec_", "source_qty_consumed_", "target_product_id_name_", "target_product_id_code_", "target_product_id_spec_"];
|
|
45
47
|
export declare const CLEAR_ON_SOURCE_PRODUCT_EMPTY: readonly ["source_material_no_", "source_material_no__lb_", "source_product_id__lb_", "source_product_id_name_", "source_product_id_code_", "source_product_id_spec_", "source_qty_consumed_"];
|
|
46
48
|
/** 替换物料批号清空 / 手输时需清空的物料字段 */
|
|
47
|
-
export declare const CLEAR_ON_TARGET_MATERIAL_NO_EMPTY: readonly ["target_product_id_name_", "target_product_id_code_", "target_product_id_spec_"];
|
|
49
|
+
export declare const CLEAR_ON_TARGET_MATERIAL_NO_EMPTY: readonly ["target_product_id_", "target_product_id__lb_", "target_product_id_name_", "target_product_id_code_", "target_product_id_spec_"];
|
|
48
50
|
/** 历史消耗选项 → 被替换物料行字段 */
|
|
49
51
|
export declare const FILL_FROM_SOURCE_PRODUCT_OPTION: readonly [{
|
|
50
52
|
readonly optionField: "material_name_";
|
|
@@ -69,6 +71,10 @@ export declare const FILL_FROM_SOURCE_PRODUCT_OPTION: readonly [{
|
|
|
69
71
|
}];
|
|
70
72
|
/** 替换物料批号选项 → 替换物料信息 */
|
|
71
73
|
export declare const FILL_FROM_TARGET_MATERIAL_NO_OPTION: readonly [{
|
|
74
|
+
readonly optionField: "product_id_";
|
|
75
|
+
readonly toField: "target_product_id_";
|
|
76
|
+
readonly name: "物料";
|
|
77
|
+
}, {
|
|
72
78
|
readonly optionField: "product_id_name_";
|
|
73
79
|
readonly toField: "target_product_id_name_";
|
|
74
80
|
readonly name: "物料名称";
|
|
@@ -83,27 +89,23 @@ export declare const FILL_FROM_TARGET_MATERIAL_NO_OPTION: readonly [{
|
|
|
83
89
|
}];
|
|
84
90
|
/** SN / 工序不影响扫码结果能否复用当前空行。 */
|
|
85
91
|
export declare const SCAN_ROW_CONTENT_FIELDS: readonly ["source_material_no_", "source_product_id_", "target_material_no_", "target_product_id_"];
|
|
86
|
-
/**
|
|
92
|
+
/** LOT/SN 选项 → 替换物料行字段;替换数量保留用户输入。 */
|
|
87
93
|
export declare const FILL_FROM_TARGET_PRODUCT_OPTION: readonly [{
|
|
88
|
-
readonly optionField: "
|
|
94
|
+
readonly optionField: "name_";
|
|
89
95
|
readonly toField: "target_material_no_";
|
|
90
96
|
readonly name: "物料批号";
|
|
91
97
|
}, {
|
|
92
|
-
readonly optionField: "
|
|
98
|
+
readonly optionField: "product_id_name_";
|
|
93
99
|
readonly toField: "target_product_id_name_";
|
|
94
100
|
readonly name: "物料名称";
|
|
95
101
|
}, {
|
|
96
|
-
readonly optionField: "
|
|
102
|
+
readonly optionField: "product_id_code_";
|
|
97
103
|
readonly toField: "target_product_id_code_";
|
|
98
104
|
readonly name: "物料编码";
|
|
99
105
|
}, {
|
|
100
|
-
readonly optionField: "
|
|
106
|
+
readonly optionField: "product_id_spec_";
|
|
101
107
|
readonly toField: "target_product_id_spec_";
|
|
102
108
|
readonly name: "物料规格";
|
|
103
|
-
}, {
|
|
104
|
-
readonly optionField: "qty_consumed_";
|
|
105
|
-
readonly toField: "target_qty_consumed_";
|
|
106
|
-
readonly name: "已消耗数量";
|
|
107
109
|
}];
|
|
108
110
|
/** 替换物料清空时同步清除批次、物料信息和数量。 */
|
|
109
|
-
export declare const CLEAR_ON_TARGET_PRODUCT_EMPTY: readonly ["target_material_no_", "target_material_no__id_", "target_material_no__lb_", "target_product_id_name_", "target_product_id_code_", "target_product_id_spec_", "target_qty_consumed_"];
|
|
111
|
+
export declare const CLEAR_ON_TARGET_PRODUCT_EMPTY: readonly ["target_product_id__lb_", "target_material_no_", "target_material_no__id_", "target_material_no__lb_", "target_product_id_name_", "target_product_id_code_", "target_product_id_spec_", "target_qty_consumed_"];
|
package/dist/src/domain/table/business/material/material-substitution/runtime/select-loaders.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { RefCustomLoader } from '../../../../../../nocode-base/src/interface/ref-loader';
|
|
2
|
+
export declare function flattenMaterialConsumeRecord(item: Record<string, any>): Record<string, any>;
|
|
3
|
+
/** 同一条选中记录的批次名称、ID 和展示名必须一起回填。 */
|
|
4
|
+
export declare function buildTargetMaterialSelectionPatch(record: Record<string, any>): Record<string, unknown>;
|
|
5
|
+
/** 历史消耗只使用当前行生产 SN,未选、LOT 或无法确认类型时阻断查询。 */
|
|
6
|
+
export declare function createMaterialConsumeHistoryLoader(rowData: Record<string, any>, fieldName?: string): RefCustomLoader;
|
|
7
|
+
/** 替换料从 LOT/SN 选择,保存产品 ID,批次身份由行内批号字段保存。 */
|
|
8
|
+
export declare function createTargetMaterialLoader(rowData: Record<string, any>): RefCustomLoader;
|
|
@@ -80,9 +80,9 @@ export declare class MaterialRequisitionTableCore extends ProfileDrivenSubTableC
|
|
|
80
80
|
}
|
|
81
81
|
/**
|
|
82
82
|
* 物料替换表 Core
|
|
83
|
-
* -
|
|
84
|
-
* -
|
|
85
|
-
* -
|
|
83
|
+
* - 被替换物料从当前行生产 SN 的历史消耗中选择,可按行内工序过滤
|
|
84
|
+
* - 替换物料从 LOT/SN 中选择,回填批次和物料信息,保留替换数量
|
|
85
|
+
* - 替换物料批号回填替换物料及其信息
|
|
86
86
|
* - 条码映射结果优先填充空行,否则追加新行
|
|
87
87
|
*/
|
|
88
88
|
export declare class MaterialSubstitutionTableCore extends ProfileDrivenSubTableCore {
|
|
@@ -53,6 +53,8 @@ export declare class FormModelController {
|
|
|
53
53
|
isPresetField(field: FieldMetaDTO): boolean;
|
|
54
54
|
/** 是否是系统字段 */
|
|
55
55
|
isSystemField(field: FieldMetaDTO): boolean;
|
|
56
|
+
/** 是否是对象字段类型 */
|
|
57
|
+
isObjectField(field: FieldMetaDTO): boolean;
|
|
56
58
|
/**
|
|
57
59
|
* 获取主模型里子表字段对应的子模型key
|
|
58
60
|
*
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface ObjectProductDefault {
|
|
2
|
+
value: unknown;
|
|
3
|
+
sourceData?: Record<string, any>;
|
|
4
|
+
}
|
|
5
|
+
/** 准备数据和生成默认值使用同一份字段列表,按字段对象隔离不同对象的默认值。 */
|
|
6
|
+
export type ObjectProductDefaultMap = WeakMap<object, ObjectProductDefault>;
|
|
7
|
+
interface Options {
|
|
8
|
+
enabled: boolean;
|
|
9
|
+
fields: readonly unknown[];
|
|
10
|
+
objectInitialValues?: readonly {
|
|
11
|
+
objectField: string;
|
|
12
|
+
values?: Record<string, any>;
|
|
13
|
+
}[];
|
|
14
|
+
}
|
|
15
|
+
/** 只解析对象物料默认值、查询对应详情;赋值和填充统一由默认值入口执行。 */
|
|
16
|
+
export declare function prepareObjectProductDefaults({ enabled, fields, objectInitialValues, }: Options): Promise<ObjectProductDefaultMap>;
|
|
17
|
+
export {};
|
package/dist/src/nocode-base/src/hooks/material-consume-object/object-validation-controller.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { IBasicInfoItem, ValidateFieldErrorMap } from '../../types';
|
|
2
|
+
import { RuntimeInstanceRecord } from '../../runtime';
|
|
3
|
+
type Options = {
|
|
4
|
+
record: RuntimeInstanceRecord;
|
|
5
|
+
getInfo(): IBasicInfoItem | undefined;
|
|
6
|
+
isCurrent(): boolean;
|
|
7
|
+
shouldSkip(): boolean;
|
|
8
|
+
applyComments(fields: ValidateFieldErrorMap): void;
|
|
9
|
+
};
|
|
10
|
+
type Result = {
|
|
11
|
+
isValid: boolean;
|
|
12
|
+
fields?: ValidateFieldErrorMap;
|
|
13
|
+
};
|
|
14
|
+
/** 实例级对象错误展示与刷新;数据变化由已有 Store 订阅传入。 */
|
|
15
|
+
export declare function createMaterialConsumeObjectValidation(options: Options): {
|
|
16
|
+
validate: (live?: boolean) => Promise<Result | undefined>;
|
|
17
|
+
requestLive: () => void;
|
|
18
|
+
replaceTableFields: (fields?: ValidateFieldErrorMap) => void;
|
|
19
|
+
clear: () => void;
|
|
20
|
+
beginSubmit(): void;
|
|
21
|
+
endSubmit(): void;
|
|
22
|
+
dispose(): void;
|
|
23
|
+
};
|
|
24
|
+
export {};
|
|
@@ -41,6 +41,7 @@ export declare function createRuntimeInstanceInitializer(props: IProps, payload:
|
|
|
41
41
|
productSearchFields: string;
|
|
42
42
|
showPrintFieldBg: any;
|
|
43
43
|
paramsConfig: Record<string, any> | undefined;
|
|
44
|
+
businessType: any;
|
|
44
45
|
instanceStatus: any;
|
|
45
46
|
};
|
|
46
47
|
selfInfo: RuntimeSelfInfo;
|
|
@@ -87,6 +87,7 @@ export declare function useRenderPageFactory(props: IProps, payload: IPayload):
|
|
|
87
87
|
renderPurpose?: "print" | "pdf" | undefined;
|
|
88
88
|
showPrintFieldBg?: boolean | undefined;
|
|
89
89
|
paramsConfig?: Record<string, any> | undefined;
|
|
90
|
+
businessType?: string | undefined;
|
|
90
91
|
instanceStatus?: string | undefined;
|
|
91
92
|
}[], IBasicInfoItem[] | {
|
|
92
93
|
key: string;
|
|
@@ -129,6 +130,7 @@ export declare function useRenderPageFactory(props: IProps, payload: IPayload):
|
|
|
129
130
|
renderPurpose?: "print" | "pdf" | undefined;
|
|
130
131
|
showPrintFieldBg?: boolean | undefined;
|
|
131
132
|
paramsConfig?: Record<string, any> | undefined;
|
|
133
|
+
businessType?: string | undefined;
|
|
132
134
|
instanceStatus?: string | undefined;
|
|
133
135
|
}[]>;
|
|
134
136
|
selfInfoList: import('vue').Ref<{
|
|
@@ -196,6 +198,7 @@ export declare function useRenderPageFactory(props: IProps, payload: IPayload):
|
|
|
196
198
|
renderPurpose?: "print" | "pdf" | undefined;
|
|
197
199
|
showPrintFieldBg?: boolean | undefined;
|
|
198
200
|
paramsConfig?: Record<string, any> | undefined;
|
|
201
|
+
businessType?: string | undefined;
|
|
199
202
|
instanceStatus?: string | undefined;
|
|
200
203
|
} | undefined;
|
|
201
204
|
updateRenderModeType: (uniqueId: string, mode: import('..').RenderModeEnum, updateButton?: boolean) => Promise<void>;
|
|
@@ -34,7 +34,18 @@ export type RefCustomLoaderRawResult = RefLoaderNormalizedResult | {
|
|
|
34
34
|
dict?: any;
|
|
35
35
|
pageSize?: number;
|
|
36
36
|
} | any[];
|
|
37
|
-
export type RefCustomLoader = (params: RefCustomLoaderParams) => Promise<RefCustomLoaderRawResult
|
|
37
|
+
export type RefCustomLoader = ((params: RefCustomLoaderParams) => Promise<RefCustomLoaderRawResult>) & {
|
|
38
|
+
/** 下拉展开前校验;未通过时由字段组件弹出 message 并阻止展开。 */
|
|
39
|
+
beforeOpen?: () => Promise<{
|
|
40
|
+
allowed: boolean;
|
|
41
|
+
message?: string;
|
|
42
|
+
}>;
|
|
43
|
+
/** 选项关联同一物料时,仍按批次等独立身份高亮。 */
|
|
44
|
+
getSelectedKey?: () => string | undefined;
|
|
45
|
+
getOptionKey?: (option: RefLoaderNormalizedResult['options'][number]) => string;
|
|
46
|
+
/** 选中后立即与主字段一起回填的关联数据。 */
|
|
47
|
+
getSelectionPatch?: (record: Record<string, any>) => Record<string, unknown>;
|
|
48
|
+
};
|
|
38
49
|
/** 从 queryData 中提取快捷搜索关键字 */
|
|
39
50
|
export declare function extractKeywordFromQueryData(queryData?: Record<string, any>): any;
|
|
40
51
|
/** 将自定义数据源返回值标准化为 ref 组件消费结构 */
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { FormTypeEnum } from '../constant';
|
|
2
2
|
import { FormTmplBomController } from '../hooks';
|
|
3
3
|
import { RuntimeFieldMetadata } from '../runtime/runtime-field-registry';
|
|
4
|
+
import { ObjectProductDefault } from '../hooks/material-consume-object/initialize-autofill';
|
|
4
5
|
/** 渲染端公共类 */
|
|
5
6
|
export declare const renderUtils: {
|
|
6
7
|
getValue: (modelValue: any, multiple: any) => any;
|
|
@@ -90,8 +91,9 @@ export declare const renderUtils: {
|
|
|
90
91
|
/** 提前设置值给widget */
|
|
91
92
|
setRequestInfo2DataCenter: (dataCenters: any, modelKeys: any, platformType: any, isMockReport: any, formType: FormTypeEnum, paramsConfig: any, useSignFields: any, useClsReasonDataLink: any, useClsGroupDataLink: any, tmplBomC: FormTmplBomController, modelQueries: any) => Promise<void>;
|
|
92
93
|
/** 获取默认值集合 */
|
|
93
|
-
getDefaultValueMapByField: ({ defaultValueFields, mainMaterialNo, mainRelatedLotNo, mainProductName, mainRoutingOperation, mainMfgOrderId, mainWarehouseId, mainLotSnId, mainProductQty, mainSterilizationLot, mainSterilizationLotId, defaultUserId, defaultOrgId, operationData, productData, mfgOrderData, sopList, ESOPData, materialNoData, relatedLotNoData, sterilizeLotData, warehouseData, }: {
|
|
94
|
+
getDefaultValueMapByField: ({ defaultValueFields, objectProductDefaults, mainMaterialNo, mainRelatedLotNo, mainProductName, mainRoutingOperation, mainMfgOrderId, mainWarehouseId, mainLotSnId, mainProductQty, mainSterilizationLot, mainSterilizationLotId, defaultUserId, defaultOrgId, operationData, productData, mfgOrderData, sopList, ESOPData, materialNoData, relatedLotNoData, sterilizeLotData, warehouseData, }: {
|
|
94
95
|
defaultValueFields: any;
|
|
96
|
+
objectProductDefaults?: WeakMap<object, ObjectProductDefault> | undefined;
|
|
95
97
|
mainMaterialNo?: undefined;
|
|
96
98
|
mainRelatedLotNo?: undefined;
|
|
97
99
|
mainProductName?: undefined;
|
|
@@ -90,6 +90,14 @@ export declare const transformUtils: {
|
|
|
90
90
|
viewMode: RenderModeEnum;
|
|
91
91
|
ofCtx: any;
|
|
92
92
|
}) => Promise<any>;
|
|
93
|
+
/** 数据加载完成事件;全部 Sheet 的数据合并后、创建 Store 和分页前只执行一次。 */
|
|
94
|
+
getEventInitDataLoaded: (payload: {
|
|
95
|
+
formConfig: Record<string, any>;
|
|
96
|
+
formState: any;
|
|
97
|
+
viewMode: RenderModeEnum;
|
|
98
|
+
dataStatus?: string;
|
|
99
|
+
ofCtx: any;
|
|
100
|
+
}) => Promise<void>;
|
|
93
101
|
/** 创建字段事件执行器;注册后由 RuntimeInstanceRecord 持有,全部 Sheet 共用。 */
|
|
94
102
|
createScriptRunner: (payload: {
|
|
95
103
|
formConfig: Record<string, any>;
|
|
@@ -143,6 +151,6 @@ export declare const transformUtils: {
|
|
|
143
151
|
checkTable2DList?: any[];
|
|
144
152
|
materialConsumeTableList?: any[];
|
|
145
153
|
}) => Partial<{}>;
|
|
146
|
-
getFormDataIdsMap: (formData: any, preserveKeys?: string[]) => any;
|
|
154
|
+
getFormDataIdsMap: (formData: any, preserveKeys?: string[], shouldPreserveField?: (path: string) => boolean) => any;
|
|
147
155
|
};
|
|
148
156
|
export {};
|
|
@@ -377,6 +377,8 @@ export interface IBasicInfoItem {
|
|
|
377
377
|
showPrintFieldBg?: boolean;
|
|
378
378
|
/** 填报入参(selfInfo.params + paramExtraProps) */
|
|
379
379
|
paramsConfig?: Record<string, any>;
|
|
380
|
+
/** detail 返回的单据业务类型,供业务字段查询匹配场景。 */
|
|
381
|
+
businessType?: string;
|
|
380
382
|
/** 实例状态 */
|
|
381
383
|
instanceStatus?: string;
|
|
382
384
|
}
|
|
@@ -3,6 +3,7 @@ import { IBindField } from '../../../../nocode-base/src';
|
|
|
3
3
|
type __VLS_Props = {
|
|
4
4
|
fieldWidget: CellWidget.BasicSchema;
|
|
5
5
|
fieldMeta: IBindField;
|
|
6
|
+
autoLineBreak?: boolean;
|
|
6
7
|
};
|
|
7
8
|
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
8
9
|
export default _default;
|
package/dist/src/online-form/src/views/__cell_widgets__/fake-field/fake-option-select.vue.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ type __VLS_Props = {
|
|
|
6
6
|
fieldMeta?: IBindField;
|
|
7
7
|
design?: FieldDesignComponent;
|
|
8
8
|
disabled?: boolean;
|
|
9
|
+
autoLineBreak?: boolean;
|
|
9
10
|
};
|
|
10
11
|
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
11
12
|
export default _default;
|
|
@@ -82,6 +82,7 @@ export declare const FieldTypeToCellWidgetMap: {
|
|
|
82
82
|
scrap_material_no: CellWidgetCategory;
|
|
83
83
|
destructive_test_qty: CellWidgetCategory;
|
|
84
84
|
product_check_qty: CellWidgetCategory;
|
|
85
|
+
product_release_qty: CellWidgetCategory;
|
|
85
86
|
material_check_qty: CellWidgetCategory;
|
|
86
87
|
inspection_qty: CellWidgetCategory;
|
|
87
88
|
inspection_module_qty: CellWidgetCategory;
|
|
@@ -327,16 +327,20 @@ export declare enum FIELD_TYPE {
|
|
|
327
327
|
* 产品检验数量
|
|
328
328
|
*/
|
|
329
329
|
PRODUCT_CHECK_QTY = "product_check_qty",
|
|
330
|
+
/**
|
|
331
|
+
* 放行数量
|
|
332
|
+
*/
|
|
333
|
+
PRODUCT_RELEASE_QTY = "product_release_qty",
|
|
330
334
|
/**
|
|
331
335
|
* 材料检验数量
|
|
332
336
|
*/
|
|
333
337
|
MATERIAL_CHECK_QTY = "material_check_qty",
|
|
334
338
|
/**
|
|
335
|
-
*
|
|
339
|
+
* 送检数量
|
|
336
340
|
*/
|
|
337
341
|
INSPECTION_QTY = "inspection_qty",
|
|
338
342
|
/**
|
|
339
|
-
*
|
|
343
|
+
* 检验数量
|
|
340
344
|
*/
|
|
341
345
|
INSPECTION_MODULE_QTY = "inspection_module_qty",
|
|
342
346
|
/**
|
|
@@ -568,6 +572,7 @@ export declare const FieldIconMap: {
|
|
|
568
572
|
scrap_material_no: string;
|
|
569
573
|
destructive_test_qty: string;
|
|
570
574
|
product_check_qty: string;
|
|
575
|
+
product_release_qty: string;
|
|
571
576
|
material_check_qty: string;
|
|
572
577
|
inspection_qty: string;
|
|
573
578
|
inspection_module_qty: string;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
type RequestFn<TParams, TResult> = (params: TParams) => Promise<TResult>;
|
|
2
|
+
interface CacheEntry<TResult> {
|
|
3
|
+
data: TResult;
|
|
4
|
+
expireAt: number;
|
|
5
|
+
}
|
|
6
|
+
export declare const withRequestCache: {
|
|
7
|
+
pendingMap: Map<string, Promise<any>>;
|
|
8
|
+
cacheMap: Map<string, CacheEntry<any>>;
|
|
9
|
+
defaultTTL: number;
|
|
10
|
+
/** 生成唯一 key */
|
|
11
|
+
getKey(url: string, params: any): string;
|
|
12
|
+
/**
|
|
13
|
+
* 处理带缓存与去重的请求
|
|
14
|
+
* @param url 唯一逻辑标识(非实际 API 地址)
|
|
15
|
+
* @param params 请求参数
|
|
16
|
+
* @param requestFn 实际请求函数
|
|
17
|
+
* @param ttl 可选,缓存有效期(毫秒)
|
|
18
|
+
*/
|
|
19
|
+
handleRequest<TParams, TResult>(url: string, params: TParams, requestFn: RequestFn<TParams, TResult>, ttl?: number): Promise<TResult>;
|
|
20
|
+
/** 清空全部缓存 */
|
|
21
|
+
clearCache(): void;
|
|
22
|
+
/** 清空 pending 状态 */
|
|
23
|
+
clearPending(): void;
|
|
24
|
+
/** 定期清理过期缓存 */
|
|
25
|
+
cleanupExpiredCache(): void;
|
|
26
|
+
};
|
|
27
|
+
export {};
|