mirror of
https://gitee.com/mybatis-flex/mybatis-flex.git
synced 2025-12-08 01:28:24 +08:00
fix: Relation annotations join error
This commit is contained in:
parent
d020fe26b4
commit
20f48eb23b
@ -67,16 +67,18 @@ class OneToMany<SelfEntity> extends AbstractRelation<SelfEntity> {
|
||||
return queryWrapper;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void join(List<SelfEntity> selfEntities, List<?> targetObjectList, BaseMapper<?> mapper) {
|
||||
selfEntities.forEach(selfEntity -> {
|
||||
Object selfValue = selfFieldWrapper.get(selfEntity);
|
||||
if (selfValue != null) {
|
||||
selfValue = selfValue.toString();
|
||||
Class<?> wrapType = MapperUtil.getWrapType(relationFieldWrapper.getFieldType());
|
||||
Collection<Object> collection = (Collection) ClassUtil.newInstance(wrapType);
|
||||
for (Object targetObject : targetObjectList) {
|
||||
Object targetValue = targetFieldWrapper.get(targetObject);
|
||||
if (selfValue.equals(targetValue)) {
|
||||
if (targetValue != null && selfValue.equals(targetValue.toString())) {
|
||||
collection.add(targetObject);
|
||||
}
|
||||
}
|
||||
|
||||
@ -53,9 +53,10 @@ class ToOneRelation<SelfEntity> extends AbstractRelation<SelfEntity> {
|
||||
selfEntities.forEach(selfEntity -> {
|
||||
Object selfValue = selfFieldWrapper.get(selfEntity);
|
||||
if (selfValue != null) {
|
||||
selfValue = selfValue.toString();
|
||||
for (Object targetObject : targetObjectList) {
|
||||
Object targetValue = targetFieldWrapper.get(targetObject);
|
||||
if (selfValue.equals(targetValue)) {
|
||||
if (targetValue != null && selfValue.equals(targetValue.toString())) {
|
||||
relationFieldWrapper.set(targetObject, selfEntity);
|
||||
break;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user