diff --git a/src/main/java/com/glxp/api/service/collect/RelCodeDetailService.java b/src/main/java/com/glxp/api/service/collect/RelCodeDetailService.java index 05e4b5b21..517904f3b 100644 --- a/src/main/java/com/glxp/api/service/collect/RelCodeDetailService.java +++ b/src/main/java/com/glxp/api/service/collect/RelCodeDetailService.java @@ -27,7 +27,6 @@ public class RelCodeDetailService extends ServiceImpl qw = new LambdaQueryWrapper() .eq(BasicProductsEntity::getNameCode, relCodeDetailRequest.getParentCode()) .last("limit 1"); - BasicProductsEntity basicProductsEntity = basicProductsDao.selectOne(qw); - if(basicProductsEntity == null){ - throw new JsonException(""); + BasicProductsEntity parent = basicProductsDao.selectOne(qw); + if(parent == null){ + throw new JsonException("产品信息不存在"); } - relCodeDetailResponse.setCurCode(basicProductsEntity.getNameCode()); - relCodeDetailResponse.setPackLayer(Integer.valueOf(basicProductsEntity.getPackLevel())); - relCodeDetailResponse.setParentCode(parentCode); - relCodeDetailResponse.setFlag(Integer.valueOf(basicProductsEntity.getMajorStatus())); + Integer packLevel = Integer.valueOf(parent.getPackLevel()); + if(packLevel == 1){ + throw new JsonException("产品信息不存在子包装"); + } + //todo 可能存在多个子集 如何处理 + LambdaQueryWrapper qw2 = new LambdaQueryWrapper() + .eq(BasicProductsEntity::getUuid, parent.getUuid()) + .eq(BasicProductsEntity::getPackLevel,packLevel - 1) + .last("limit 1"); + BasicProductsEntity subset = basicProductsDao.selectOne(qw2); + relCodeDetailResponse.setCurCode(subset.getNameCode()); + relCodeDetailResponse.setPackLayer(Integer.valueOf(subset.getPackLevel())); + relCodeDetailResponse.setParentCode(parent.getNameCode()); + relCodeDetailResponse.setFlag(Integer.valueOf(subset.getMajorStatus())); return relCodeDetailResponse; }