diff --git a/stream-core/src/main/java/org/dromara/streamquery/stream/core/bean/BeanHelper.java b/stream-core/src/main/java/org/dromara/streamquery/stream/core/bean/BeanHelper.java index ea671c91552ce660533b81342d6ec8e1d2027237..5c6679c5c658fffbc5bb04e962fe03e9326167dd 100644 --- a/stream-core/src/main/java/org/dromara/streamquery/stream/core/bean/BeanHelper.java +++ b/stream-core/src/main/java/org/dromara/streamquery/stream/core/bean/BeanHelper.java @@ -145,26 +145,23 @@ public class BeanHelper { Map.Entry, SerBiCons> targetGetterSetter = targetPropertyGetterSetterMap.get(property); - if (targetGetterSetter == null) { - continue; - } + if (targetGetterSetter != null) { + SerFunc sourceGetter = sourceGetterSetter.getKey(); + SerFunc targetGetter = targetGetterSetter.getKey(); - SerFunc sourceGetter = sourceGetterSetter.getKey(); - SerFunc targetGetter = targetGetterSetter.getKey(); + LambdaExecutable sourceGetterLambda = LambdaHelper.resolve(sourceGetter); + LambdaExecutable targetGetterLambda = LambdaHelper.resolve(targetGetter); - LambdaExecutable sourceGetterLambda = LambdaHelper.resolve(sourceGetter); - LambdaExecutable targetGetterLambda = LambdaHelper.resolve(targetGetter); + if (!Opp.of(sourceGetterLambda.getReturnType()) + .map(Type::getTypeName) + .equals(Opp.of(targetGetterLambda.getReturnType()).map(Type::getTypeName))) { + continue; + } - if (!Opp.of(sourceGetterLambda.getReturnType()) - .map(Type::getTypeName) - .equals(Opp.of(targetGetterLambda.getReturnType()).map(Type::getTypeName))) { - continue; + Object value = sourceGetter.apply(source); + targetGetterSetter.getValue().accept(target, value); } - - Object value = sourceGetter.apply(source); - targetGetterSetter.getValue().accept(target, value); } - return target; }