Merge branch 'dev-sugx20250623' into 'dev'

表单个性化配置:问题修正

See merge request itc-framework/ma/2024/front!86
This commit is contained in:
890147
2025-06-23 07:09:24 +00:00
2 changed files with 22 additions and 10 deletions

View File

@ -11,12 +11,18 @@ const { t } = useI18n();
const { notification } = useMessage();
export function useFormConfig() {
async function mergeFormSchemas(formSchema: FormSchema[],formPath:String){
async function mergeFormSchemas(obj:{formSchema: FormSchema[],formId:String,formPath:String}){
try{
const formProps=await queryConfigByFormPath(formPath,'formProps');
let formProps;
if(obj.formId){
formProps=await queryConfig(obj.formId,'formProps');
}else{
formProps=await queryConfigByFormPath(obj.formPath,'formProps');
}
let fschemas=formProps?.schemas;
if(fschemas&&fschemas.length>0){
return deepMerge(formSchema,fschemas);
return deepMerge(obj.formSchema,fschemas);
}else{
return formSchema;
}
@ -25,10 +31,16 @@ export function useFormConfig() {
}
}
async function mergeFormEventConfigs(formEventConfigs,componentPath:String){
async function mergeFormEventConfigs(obj:{formEventConfigs,formId:String,formPath:String}){
try{
const fEConfigs=await queryConfigByFormPath(componentPath,'formEventConfigs');
return deepMerge(formEventConfigs,fEConfigs);
let fEConfigs;
if(obj.formId){
fEConfigs=await queryConfig(obj.formId,'formEventConfigs');
}else{
fEConfigs=await queryConfigByFormPath(obj.formPath,'formEventConfigs');
}
return deepMerge(obj.formEventConfigs,fEConfigs);
}catch(e){
return {};
}

View File

@ -1751,9 +1751,9 @@ export function buildSimpleFormCode(model: GeneratorConfig, _tableInfo: TableInf
if(props.fromPage !== FromPageType.FLOW){
let formPath=currentRoute.value.query.formPath;
//1.合并字段配置
cloneProps.schemas=await mergeFormSchemas(cloneProps.schemas!,formPath);
cloneProps.schemas=await mergeFormSchemas({formSchema:cloneProps.schemas!,formPath:formPath});
//2.合并表单事件配置
fEventConfigs=await mergeFormEventConfigs(fEventConfigs,formPath);
fEventConfigs=await mergeFormEventConfigs({formEventConfigs:fEventConfigs,formPath:formPath});
}
}
data.formDataProps=cloneProps;
@ -1842,8 +1842,8 @@ export function buildSimpleFormCode(model: GeneratorConfig, _tableInfo: TableInf
if (formConfig.useCustomConfig) {
const parts = obj.formConfigKey.split('_');
const formId=parts[1];
cloneProps.schemas=await mergeFormSchemas(cloneProps.schemas!,formId);
customFormEventConfigs=await mergeFormEventConfigs(customFormEventConfigs,formId);
cloneProps.schemas=await mergeFormSchemas({formSchema:cloneProps.schemas!,formId:formId});
customFormEventConfigs=await mergeFormEventConfigs({formEventConfigs:customFormEventConfigs,formId:formId});
}
let flowData = changeWorkFlowForm(cloneProps, obj);