diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/order/StoreWishlistDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/order/StoreWishlistDAO.java index bfad9c133..15719133a 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/order/StoreWishlistDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/order/StoreWishlistDAO.java @@ -60,7 +60,7 @@ public class StoreWishlistDAO { return mapper.listByVersionList(versionNoList); } - public List getDistinctVersion(String mobile){ - return mapper.versionNoList(mobile); + public List getDistinctVersion(String keyword,Long storeTypeId){ + return mapper.versionNoList(keyword,storeTypeId); } } diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/order/StoreWishlistMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/order/StoreWishlistMapper.java index 8f0ab4736..cbbb0f4fe 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/order/StoreWishlistMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/order/StoreWishlistMapper.java @@ -27,5 +27,5 @@ public interface StoreWishlistMapper extends Mapper { List listByVersionList(@Param("versionNoList") List versionNoList); - List versionNoList(String mobile); + List versionNoList(@Param("keyword") String keyword, @Param("storeTypeId") Long storeTypeId); } diff --git a/coolstore-partner-dao/src/main/resources/mapper/order/StoreWishlistMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/order/StoreWishlistMapper.xml index cfdb93f79..3761b05d9 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/order/StoreWishlistMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/order/StoreWishlistMapper.xml @@ -86,13 +86,16 @@ diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/order/WishAllListRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/order/WishAllListRequest.java index 873b82251..78fd632e8 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/order/WishAllListRequest.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/order/WishAllListRequest.java @@ -11,7 +11,9 @@ import lombok.Data; @Data public class WishAllListRequest extends PageBasicInfo { - private String mobile; + private String keyword; + + private Long storeTypeId; } diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/order/MiniStoreWishlistDetailVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/order/MiniStoreWishlistDetailVO.java index 2037af200..5db346fdc 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/vo/order/MiniStoreWishlistDetailVO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/order/MiniStoreWishlistDetailVO.java @@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; +import java.util.Date; import java.util.List; @Data @@ -20,6 +21,12 @@ public class MiniStoreWishlistDetailVO { @ApiModelProperty("总金额") private BigDecimal totalAmount; + private Date createTime; + + private String partnerName; + + private String partnerMobile; + private FeeInfoVO feeInfoVO; @ApiModelProperty("配置项列表") diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/order/MiniStoreWishlistListVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/order/MiniStoreWishlistListVO.java index e54d1636c..a21dc8e81 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/vo/order/MiniStoreWishlistListVO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/order/MiniStoreWishlistListVO.java @@ -17,6 +17,10 @@ public class MiniStoreWishlistListVO { private Long lineId; + private String partnerName; + + private String partnerMobile; + @ApiModelProperty("品牌") private String brand; diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/order/MiniStoreOrderService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/order/MiniStoreOrderService.java index 4a23f39f3..9ac28943c 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/order/MiniStoreOrderService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/order/MiniStoreOrderService.java @@ -50,10 +50,10 @@ public interface MiniStoreOrderService { Boolean deleted(MiniStoreWishlistDelRequest miniStoreWishlistDelRequest,PartnerUserInfoVO userInfoVO); - MiniStoreWishlistDetailVO wishlistDetail(Long storeTypeId,String versionNo, PartnerUserInfoVO userInfoVO); + MiniStoreWishlistDetailVO wishlistDetail(Long storeTypeId,String versionNo, Long lineId); List wishlistList(PartnerUserInfoVO userInfoVO); - List wishAllList(WishAllListRequest request); + PageInfo wishAllList(WishAllListRequest request); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/order/impl/MiniStoreOrderServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/order/impl/MiniStoreOrderServiceImpl.java index 64749af45..8055904ce 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/order/impl/MiniStoreOrderServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/order/impl/MiniStoreOrderServiceImpl.java @@ -60,6 +60,7 @@ import com.cool.store.vo.order.MiniStoreWishlistDetailVO; import com.cool.store.vo.order.MiniStoreWishlistListVO; import com.cool.store.vo.order.PCStoreOrderListVO; import com.cool.store.vo.order.WalletPayVO; +import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import groovy.util.logging.Slf4j; @@ -1358,21 +1359,28 @@ public class MiniStoreOrderServiceImpl implements MiniStoreOrderService { } @Override - public MiniStoreWishlistDetailVO wishlistDetail(Long storeTypeId,String versionNo, PartnerUserInfoVO userInfoVO) { - if (userInfoVO == null || userInfoVO.getLineId() == null) { + public MiniStoreWishlistDetailVO wishlistDetail(Long storeTypeId,String versionNo, Long lineId) { + if (lineId == null) { throw new ServiceException(ErrorCodeEnum.PARAMS_VALIDATE_ERROR); } - List rows = storeWishlistDAO.listByLineIdAndStoreTypeAndVersion(userInfoVO.getLineId(), storeTypeId, versionNo); + List rows = storeWishlistDAO.listByLineIdAndStoreTypeAndVersion(lineId, storeTypeId, versionNo); if (CollectionUtils.isEmpty(rows)){ return null; } MiniStoreWishlistDetailVO vo = new MiniStoreWishlistDetailVO(); vo.setStoreTypeId(storeTypeId); vo.setVersionNo(versionNo); - vo.setTotalAmount(rows.get(0).getTotalAmount()); - - + StoreWishlistDO storeWishlistDO = rows.get(0); + if (storeWishlistDO!=null){ + vo.setTotalAmount(storeWishlistDO.getTotalAmount()); + vo.setCreateTime(storeWishlistDO.getCreateTime()); + LineInfoDO lineInfo = lineInfoDAO.getLineInfo(storeWishlistDO.getLineId()); + if (lineInfo!=null){ + vo.setPartnerMobile(lineInfo.getMobile()); + vo.setPartnerName(lineInfo.getUsername()); + } + } StoreTypeDO storeTypeDO = storeTypeDAO.getById(storeTypeId); MiniStoreWishlistDetailVO.FeeInfoVO feeInfo = new MiniStoreWishlistDetailVO.FeeInfoVO(); @@ -1486,11 +1494,24 @@ public class MiniStoreOrderServiceImpl implements MiniStoreOrderService { } @Override - public List wishAllList(WishAllListRequest request) { + public PageInfo wishAllList(WishAllListRequest request) { PageHelper.startPage(request.getPageNum(),request.getPageSize()); - List distinctVersion = storeWishlistDAO.getDistinctVersion(request.getMobile()); + List distinctVersion = storeWishlistDAO.getDistinctVersion(request.getKeyword(),request.getStoreTypeId()); + if (CollectionUtils.isEmpty(distinctVersion)){ + return new PageInfo<>(); + } + PageInfo result = new PageInfo<>(distinctVersion); List wishlist = storeWishlistDAO.listByVersionList(distinctVersion); + + List lineIdList = wishlist.stream().map(MiniStoreWishlistListVO::getLineId).collect(Collectors.toList()); + List lineList = lineInfoDAO.getByLineIds(lineIdList); + Map map = lineList.stream().collect(Collectors.toMap(LineInfoDO::getId, data -> data)); for (MiniStoreWishlistListVO item : wishlist) { + LineInfoDO lineInfoDO = map.get(item.getLineId()); + if (lineInfoDO!=null){ + item.setPartnerMobile(lineInfoDO.getMobile()); + item.setPartnerName(lineInfoDO.getUsername()); + } List rows = storeWishlistDAO.listByLineIdAndStoreTypeAndVersion(item.getLineId(), item.getStoreTypeId(), item.getVersionNo()); if (CollectionUtils.isEmpty(rows)) { item.setOptions(Collections.emptyList()); @@ -1519,7 +1540,8 @@ public class MiniStoreOrderServiceImpl implements MiniStoreOrderService { } item.setOptions(optionList); } - return wishlist; + result.setList(wishlist); + return result; } diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/StoreOrderController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/StoreOrderController.java index e3362b181..3c47d8ef7 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/StoreOrderController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/StoreOrderController.java @@ -79,13 +79,15 @@ public class StoreOrderController { @ApiOperation("心愿单详情") @GetMapping("/wishlist/detail") public ResponseResult wishlistDetail(@RequestParam("storeTypeId") Long storeTypeId, + @RequestParam("lineId") Long lineId, @RequestParam("versionNo") String versionNo) { - return ResponseResult.success(miniStoreOrderService.wishlistDetail(storeTypeId,versionNo, PartnerUserHolder.getUser())); + + return ResponseResult.success(miniStoreOrderService.wishlistDetail(storeTypeId,versionNo, lineId)); } @ApiOperation("PC心愿单列表") @PostMapping("/wishlist/queryPage") - public ResponseResult> wishAllList(@RequestBody @Valid WishAllListRequest request) { + public ResponseResult> wishAllList(@RequestBody @Valid WishAllListRequest request) { return ResponseResult.success(miniStoreOrderService.wishAllList( request)); } diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniStoreOrderController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniStoreOrderController.java index 005dccf29..3fcd4f727 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniStoreOrderController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniStoreOrderController.java @@ -105,7 +105,7 @@ public class MiniStoreOrderController { @GetMapping("/wishlist/detail") public ResponseResult wishlistDetail(@RequestParam("storeTypeId") Long storeTypeId, @RequestParam("versionNo") String versionNo) { - return ResponseResult.success(miniStoreOrderService.wishlistDetail(storeTypeId,versionNo, PartnerUserHolder.getUser())); + return ResponseResult.success(miniStoreOrderService.wishlistDetail(storeTypeId,versionNo, PartnerUserHolder.getUser().getLineId())); } @ApiOperation("心愿单列表")