【8.3.0】【scanner】更新数组类型的数据填充处理

pull/62/head
stylefeng 2024-08-14 12:41:03 +08:00
parent e978fcde6e
commit 6f9a823828
2 changed files with 39 additions and 0 deletions

View File

@ -0,0 +1,27 @@
package cn.stylefeng.roses.kernel.scanner.api.factory;
import cn.stylefeng.roses.kernel.scanner.api.pojo.resource.FieldMetadata;
/**
*
*
* @author fengshuonan
* @since 2024/8/14 11:44
*/
public class ArrayMetadataFactory {
/**
* items
*
* @author fengshuonan
* @since 2024/8/14 11:41
*/
public static void fillArrayItemFieldMetaData(FieldMetadata fieldMetadata) {
if (fieldMetadata == null) {
return;
}
fieldMetadata.setChineseName("数组元素类型");
fieldMetadata.setFieldName("arrayItems");
}
}

View File

@ -140,6 +140,9 @@ public class ClassMetaFactory {
// 再将数组的类型进行解析,(递归调用)
FieldMetadata arrayFieldMetadata = ClassMetaFactory.beginCreateFieldMetadata(genericType, uuid);
// 【2024年8月14日新增】填充数组特殊处理
ArrayMetadataFactory.fillArrayItemFieldMetaData(arrayFieldMetadata);
arrayItemMetadata.setArrayFieldMetadata(arrayFieldMetadata);
return arrayItemMetadata;
@ -176,6 +179,9 @@ public class ClassMetaFactory {
SubFieldMetadataDTO typeSubInfo = ClassMetaFactory.getTypeSubInfo(uuid, genericType);
fieldInfo.setGenericFieldMetadata(typeSubInfo.getGenericFieldMetadata());
// 【2024年8月14日新增】填充数组特殊处理
ArrayMetadataFactory.fillArrayItemFieldMetaData(typeSubInfo.getArrayFieldMetadata());
fieldInfo.setArrayFieldMetadata(typeSubInfo.getArrayFieldMetadata());
fieldMetadata.add(fieldInfo);
@ -226,6 +232,9 @@ public class ClassMetaFactory {
subField.setFieldClassPath(realSubFieldMetadata.getFieldClassPath());
subField.setFieldType(realSubFieldMetadata.getFieldType());
subField.setGenericFieldMetadata(realSubFieldMetadata.getGenericFieldMetadata());
// 【2024年8月14日新增】填充数组特殊处理
ArrayMetadataFactory.fillArrayItemFieldMetaData(realSubFieldMetadata.getArrayFieldMetadata());
subField.setArrayFieldMetadata(realSubFieldMetadata.getArrayFieldMetadata());
}
@ -239,6 +248,9 @@ public class ClassMetaFactory {
ClassParseResult arrayRealGenericTypeResult = new ClassParseResult(FieldTypeEnum.ARRAY, arrayRealGenericType);
FieldMetadata fieldMetadata = ClassMetaFactory.beginCreateFieldMetadata(arrayRealGenericTypeResult, uuid);
subField.setFieldType(FieldTypeEnum.ARRAY.getCode());
// 【2024年8月14日新增】填充数组特殊处理
ArrayMetadataFactory.fillArrayItemFieldMetaData(fieldMetadata.getArrayFieldMetadata());
subField.setArrayFieldMetadata(fieldMetadata.getArrayFieldMetadata());
}