修改类型判断

pull/22/head
rays 2021-06-24 13:45:43 +08:00
parent d40af1f6d7
commit 25c393f0fd
2 changed files with 13 additions and 9 deletions

View File

@ -44,7 +44,7 @@ import java.util.*;
*/
public class ClassReflectUtil {
private static Map<String, String> runingMap = new HashMap<>(2);
private static Map<String, String> runMap = new HashMap<>(2);
/**
*
@ -62,7 +62,7 @@ public class ClassReflectUtil {
}
// 查询本类是否正在进行解析(防止死循环)
String runing = runingMap.get(clazz.getName());
String runing = runMap.get(clazz.getName());
// 返回null则标识这个类正在运行则不对该类再进行解析
if (ObjectUtil.isNotEmpty(runing)) {
@ -71,7 +71,7 @@ public class ClassReflectUtil {
// 获取该类和该类所有父类的属性
while (clazz != null) {
runingMap.put(clazz.getName(), clazz.getName());
runMap.put(clazz.getName(), clazz.getName());
// 获取类中的所有字段
Field[] declaredFields = ClassUtil.getDeclaredFields(clazz);
for (Field declaredField : declaredFields) {
@ -80,7 +80,7 @@ public class ClassReflectUtil {
fieldDescriptions.add(fieldDescription);
}
runingMap.remove(clazz.getName());
runMap.remove(clazz.getName());
// 获取本类的父类
clazz = clazz.getSuperclass();
}

View File

@ -415,14 +415,14 @@ public class ApiResourceServiceImpl extends ServiceImpl<ApiResourceMapper, ApiRe
item.setApiResourceId(apiResourceId);
item.setFieldCode(fieldMetadata.getFieldName());
item.setFieldName(fieldMetadata.getChineseName());
if ("cn.stylefeng.".contains(fieldMetadata.getFieldClassPath())) {
item.setFieldType("object");
} else if ("java.util".contains(fieldMetadata.getFieldClassPath())) {
if (fieldMetadata.getFieldClassPath().contains("java.util")) {
item.setFieldType("list");
} else if ("java.io".contains(fieldMetadata.getFieldClassPath())) {
} else if (fieldMetadata.getFieldClassPath().contains("java.io")) {
item.setFieldType("file");
} else {
} else if (fieldMetadata.getFieldClassPath().contains("java.")) {
item.setFieldType("string");
} else {
item.setFieldType("object");
}
// 是否必填
@ -437,6 +437,10 @@ public class ApiResourceServiceImpl extends ServiceImpl<ApiResourceMapper, ApiRe
Set<ApiResourceField> apiResourceFieldSet = new HashSet<>();
for (FieldMetadata genericFieldMetadatum : genericFieldMetadata) {
ApiResourceField conversion = this.conversion(sysResource, apiResourceId, genericFieldMetadatum);
// 如果是list设置嵌套类型里面的全是非必填
if ("list".equals(item.getFieldType())) {
conversion.setFieldRequired(YesOrNotEnum.N.getCode());
}
apiResourceFieldSet.add(conversion);
}
item.setFieldSubInfo(JSON.toJSONString(apiResourceFieldSet, SerializerFeature.WriteClassName));