|
|
|
@ -1,24 +1,33 @@ |
|
|
|
package com.qniao.dam.query.ora.impl; |
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.qniao.dam.api.query.ora.user.request.UserPageMarriageBountyOrderRefundApplicationQueryParams; |
|
|
|
import com.qniao.dam.api.query.ora.user.response.UserPageMarriageBountyOrderRefundApplicationVo; |
|
|
|
import com.qniao.dam.domain.aggregate.ora.entity.OrderRefundApplication; |
|
|
|
import com.qniao.dam.domain.aggregate.ora.vobj.OrderRefundApplicationImage; |
|
|
|
import com.qniao.dam.domian.aggregate.ora.constant.OrderRefundApplicationStatus; |
|
|
|
import com.qniao.dam.infrastructure.persistent.dao.ora.OrderRefundApplicationDao; |
|
|
|
import com.qniao.dam.infrastructure.persistent.dao.ora.OrderRefundApplicationImageDao; |
|
|
|
import com.qniao.dam.query.ora.OrderRefundApplicationQueryService; |
|
|
|
import com.qniao.framework.utils.PageUtil; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import javax.annotation.Resource; |
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
@Service |
|
|
|
public class OrderRefundApplicationQueryServiceImpl implements OrderRefundApplicationQueryService { |
|
|
|
|
|
|
|
@Resource |
|
|
|
private OrderRefundApplicationDao orderRefundApplicationDao; |
|
|
|
@Resource |
|
|
|
private OrderRefundApplicationImageDao orderRefundApplicationImageDao; |
|
|
|
|
|
|
|
@Override |
|
|
|
public boolean hasApplied(Long orderId) { |
|
|
|
@ -30,6 +39,29 @@ public class OrderRefundApplicationQueryServiceImpl implements OrderRefundApplic |
|
|
|
@Override |
|
|
|
public IPage<UserPageMarriageBountyOrderRefundApplicationVo> pageMarriageBountyOrder(UserPageMarriageBountyOrderRefundApplicationQueryParams queryParams, |
|
|
|
PageUtil pageUtil) { |
|
|
|
return orderRefundApplicationDao.pageMarriageBountyOrder(pageUtil.toPageWithoutOrders(), queryParams); |
|
|
|
IPage<UserPageMarriageBountyOrderRefundApplicationVo> page = orderRefundApplicationDao.pageMarriageBountyOrder(pageUtil.toPageWithoutOrders(), queryParams); |
|
|
|
if (page.getRecords().size() > 0) { |
|
|
|
List<Long> idList = page.getRecords().stream().map(UserPageMarriageBountyOrderRefundApplicationVo::getId).collect(Collectors.toList()); |
|
|
|
Map<Long, List<OrderRefundApplicationImage>> allImageMap = mapAllImage(idList); |
|
|
|
page.getRecords().forEach(vo -> { |
|
|
|
List<OrderRefundApplicationImage> imageList = allImageMap.get(vo.getId()); |
|
|
|
if (CollUtil.isNotEmpty(imageList)) { |
|
|
|
vo.setImageList(imageList.stream().map(OrderRefundApplicationImage::getUrl).collect(Collectors.toList())); |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
return page; |
|
|
|
} |
|
|
|
|
|
|
|
private Map<Long, List<OrderRefundApplicationImage>> mapAllImage(List<Long> idList) { |
|
|
|
Map<Long, List<OrderRefundApplicationImage>> map = new HashMap<>(); |
|
|
|
if (CollUtil.isNotEmpty(idList)) { |
|
|
|
List<OrderRefundApplicationImage> list = orderRefundApplicationImageDao.selectList(new LambdaQueryWrapper<OrderRefundApplicationImage>() |
|
|
|
.in(OrderRefundApplicationImage::getApplicationId, idList)); |
|
|
|
if (CollUtil.isNotEmpty(list)) { |
|
|
|
map = list.stream().collect(Collectors.groupingBy(OrderRefundApplicationImage::getApplicationId)); |
|
|
|
} |
|
|
|
} |
|
|
|
return map; |
|
|
|
} |
|
|
|
} |