diff --git a/blade-service/logpm-supervise/src/main/java/com/logpm/supervise/service/impl/ClassifyServiceImpl.java b/blade-service/logpm-supervise/src/main/java/com/logpm/supervise/service/impl/ClassifyServiceImpl.java index cd5e41bb4..062227e79 100644 --- a/blade-service/logpm-supervise/src/main/java/com/logpm/supervise/service/impl/ClassifyServiceImpl.java +++ b/blade-service/logpm-supervise/src/main/java/com/logpm/supervise/service/impl/ClassifyServiceImpl.java @@ -36,6 +36,7 @@ import com.logpm.supervise.service.IPointsService; import com.logpm.supervise.vo.ClassifyVO; import com.logpm.supervise.vo.IndicatorsVO; import com.logpm.supervise.vo.api.ClassifyApiVO; +import com.logpm.supervise.wrapper.ClassifyWrapper; import com.logpm.supervise.wrapper.IndicatorsWrapper; import com.logpm.supervise.wrapper.PointsWrapper; import lombok.AllArgsConstructor; @@ -48,6 +49,7 @@ import org.springblade.core.tool.utils.Func; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Objects; @@ -198,13 +200,24 @@ public class ClassifyServiceImpl extends BaseServiceImpl classifyEntities = getClassifyList(pid); for (ClassifyApiVO classifyEntity : classifyEntities) { if (classifyEntity.getPId().equals(0L)){ - List classifyList = getClassifyList(classifyEntity.getId()); - List list = pointsService.list(Wrappers.query().lambda().eq(PointsEntity::getClassifyId, classifyEntity.getId())); + List classifyList = new ArrayList<>(); + List entityList = this.list(Wrappers.query().lambda() + .eq(ClassifyEntity::getPId, classifyEntity.getId()) + .ne(ClassifyEntity::getPId, 0L) + ); + for (ClassifyEntity entity : entityList) { + ClassifyVO classifyVO = ClassifyWrapper.build().entityVO(entity); + ClassifyApiVO classifyApiVO = Func.copy(classifyVO, ClassifyApiVO.class); + List list = pointsService.list(Wrappers.query().lambda() + .eq(PointsEntity::getClassifyId,entity.getId()) + ); + if(Func.isNotEmpty(list)){ + classifyApiVO.setPointsVOS(PointsWrapper.build().listVO(list)); + } + classifyList.add(classifyApiVO); + } if (!Objects.isNull(classifyList)){ classifyEntity.setChildren(classifyList); - if (Func.isNotEmpty(list)){ - classifyEntity.setPointsVOS(PointsWrapper.build().listVO(list)); - } } } }