diff --git a/src/main/java/com/ycwl/basic/model/mobile/goods/GoodsReqQuery.java b/src/main/java/com/ycwl/basic/model/mobile/goods/GoodsReqQuery.java index 7094490..d77b333 100644 --- a/src/main/java/com/ycwl/basic/model/mobile/goods/GoodsReqQuery.java +++ b/src/main/java/com/ycwl/basic/model/mobile/goods/GoodsReqQuery.java @@ -15,6 +15,8 @@ public class GoodsReqQuery { private Integer isBuy; private Long faceId; private Long goodsId; + @ApiModelProperty("景区id") + private Long scenicId; @ApiModelProperty("源素材商品类型 1视频 2图像") private Integer sourceType; } diff --git a/src/main/java/com/ycwl/basic/service/mobile/impl/GoodsServiceImpl.java b/src/main/java/com/ycwl/basic/service/mobile/impl/GoodsServiceImpl.java index 856cf18..be224dc 100644 --- a/src/main/java/com/ycwl/basic/service/mobile/impl/GoodsServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/mobile/impl/GoodsServiceImpl.java @@ -75,8 +75,6 @@ public class GoodsServiceImpl implements GoodsService { @Autowired private SourceMapper sourceMapper; @Autowired - private ScenicMapper scenicMapper; - @Autowired private FaceMapper faceMapper; @Autowired private TemplateRepository templateRepository; @@ -87,8 +85,6 @@ public class GoodsServiceImpl implements GoodsService { @Autowired private ScenicRepository scenicRepository; @Autowired - private OrderRepository orderRepository; - @Autowired private OrderBiz orderBiz; @Autowired private FaceRepository faceRepository; @@ -98,16 +94,20 @@ public class GoodsServiceImpl implements GoodsService { private DeviceRepository deviceRepository; public ApiResponse> goodsList(GoodsReqQuery query) { - FaceEntity face = faceRepository.getFace(query.getFaceId()); - if (face == null) { - return ApiResponse.success(Collections.emptyList()); + Long scenicId = query.getScenicId(); + if (query.getFaceId() != null) { + FaceEntity face = faceRepository.getFace(query.getFaceId()); + if (face == null) { + return ApiResponse.success(Collections.emptyList()); + } + scenicId = face.getScenicId(); } //查询原素材 List goodsList = new ArrayList<>(); VideoReqQuery videoReqQuery = new VideoReqQuery(); - videoReqQuery.setScenicId(face.getScenicId()); + videoReqQuery.setScenicId(scenicId); videoReqQuery.setIsBuy(query.getIsBuy()); - videoReqQuery.setFaceId(face.getId()); + videoReqQuery.setFaceId(query.getFaceId()); videoReqQuery.setMemberId(Long.valueOf(BaseContextHandler.getUserId())); //查询成片vlog List videoList = videoMapper.queryByRelation(videoReqQuery); @@ -125,25 +125,21 @@ public class GoodsServiceImpl implements GoodsService { }); SourceReqQuery sourceReqQuery = new SourceReqQuery(); - sourceReqQuery.setScenicId(face.getScenicId()); + sourceReqQuery.setScenicId(scenicId); sourceReqQuery.setIsBuy(query.getIsBuy()); - sourceReqQuery.setFaceId(face.getId()); + sourceReqQuery.setFaceId(query.getFaceId()); sourceReqQuery.setMemberId(Long.valueOf(BaseContextHandler.getUserId())); //查询源素材 List sourceList = sourceMapper.queryByRelation(sourceReqQuery); - ScenicConfigEntity scenicConfig = scenicRepository.getScenicConfig(face.getScenicId()); + ScenicConfigEntity scenicConfig = scenicRepository.getScenicConfig(scenicId); List sourceGoods = sourceList.stream().collect(Collectors.groupingBy(SourceRespVO::getFaceId)).entrySet().stream().flatMap((faceEntry) -> { Long faceId = faceEntry.getKey(); List goods = faceEntry.getValue(); return goods.stream().collect(Collectors.groupingBy(SourceRespVO::getType)).keySet().stream().filter(type -> { if (Integer.valueOf(1).equals(type)) { - if (Integer.valueOf(1).equals(scenicConfig.getDisableSourceVideo())) { - return false; - } + return !Integer.valueOf(1).equals(scenicConfig.getDisableSourceVideo()); } else if (Integer.valueOf(2).equals(type)) { - if (Integer.valueOf(1).equals(scenicConfig.getDisableSourceImage())) { - return false; - } + return !Integer.valueOf(1).equals(scenicConfig.getDisableSourceImage()); } return true; }).map(type -> { @@ -157,10 +153,10 @@ public class GoodsServiceImpl implements GoodsService { goodsPageVO.setGoodsName("照片集"); goodsPageVO.setGoodsType(2); } - goodsPageVO.setScenicId(face.getScenicId()); + goodsPageVO.setScenicId(query.getScenicId()); return goodsPageVO; }); - }).collect(Collectors.toList()); + }).toList(); if (!sourceGoods.isEmpty()) { if (goodsList.size() > 2) { goodsList.addAll(2, sourceGoods);