Commit 9eef1739 authored by chenzhao's avatar chenzhao

登录问题修复

parent d6709bce
......@@ -103,6 +103,7 @@ public class ControllerAop {
urls.add("/hygf/unit-info/sendTelCode/.*");
urls.add("/hygf/unit-info/verifyTelCode/.*/.*");
urls.add("/hygf/peasant-household/mobile/login");
urls.add("/hygf/peasant-household/mobile/getRegisterPhone");
urls.add("/hygf/qiyuesuo/callback");
urls.add("/hygf/unit-info/unitRegister");
urls.add("/hygf/maintenance/getDealer");
......
......@@ -69,4 +69,56 @@ public class BeanDtoUtils {
}
}
}
public static <S, T> void copyPropertiesAllNonNull(S source, T target) {
if (source == null || target == null) {
throw new IllegalArgumentException("Source and target cannot be null");
}
Class<?> sourceClass = source.getClass();
// 遍历源对象的所有类(包括父类)
while (sourceClass != null && !sourceClass.equals(Object.class)) {
Field[] sourceFields = sourceClass.getDeclaredFields();
for (Field sourceField : sourceFields) {
//静态常量字段忽略 因为是类级别不是实例
if (sourceField.getName().equals("serialVersionUID")) {
continue;
}
sourceField.setAccessible(true);
try {
// 尝试在目标对象的类层次结构中查找对应的字段
Field targetField = findField(target.getClass(), sourceField.getName());
if (targetField != null) {
targetField.setAccessible(true);
// 获取源对象的属性值
Object sourceValue = sourceField.get(source);
// 如果源对象的属性值不是 null,则复制到目标对象
if (sourceValue != null) {
targetField.set(target, sourceValue);
}
}
} catch (IllegalAccessException e) {
// 如果访问属性时发生异常,则抛出运行时异常
throw new RuntimeException(e);
}
}
// 继续处理父类
sourceClass = sourceClass.getSuperclass();
}
}
// 辅助方法,用于在目标对象的类层次结构中查找字段
private static Field findField(Class<?> clazz, String name) {
for (Class<?> c = clazz; c != null; c = c.getSuperclass()) {
try {
return c.getDeclaredField(name);
} catch (NoSuchFieldException e) {
// 忽略并继续查找
}
}
return null; // 如果没有找到字段,则返回null
}
}
......@@ -138,7 +138,7 @@ public class PeasantHouseholdWxController extends BaseController {
log.info("微信农户注册, 入参 => {}", mobileLoginParam);
PeasantHouseholdDto model = mobileLoginParam.getPeasantHouseholdDto();
validatedPeasantHouseholdDto(model);
BeanDtoUtils.copyPropertiesNonNull(peasantHousehold,model);
BeanDtoUtils.copyPropertiesAllNonNull(peasantHousehold,model);
model.setPeasantHouseholdNo(peasantHouseholdServiceImpl.getPeasantHouseholdNo(model.getRegionalCompaniesSeq()));
model.setIsCertified(1);// 这里就实名认证
model.setSurveyOrNot(0);
......@@ -173,7 +173,7 @@ public class PeasantHouseholdWxController extends BaseController {
}
}
}
BeanDtoUtils.copyPropertiesNonNull(model,peasantHousehold);
BeanDtoUtils.copyPropertiesAllNonNull(model,peasantHousehold);
PeasantHouseholdDto result = peasantHouseholdServiceImpl.savePeasantHousehold(model, null);
peasantHouseholdWxDto.setPeasantHousehold(peasantHousehold);
return ResponseHelper.buildResponse(peasantHouseholdWxDto);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment