From be943e6d3f70bc378fcf35eecf008381d5b98b7b Mon Sep 17 00:00:00 2001 From: Derran Date: Mon, 23 Mar 2026 14:04:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A7=94=E6=89=98=E6=9C=8D=E5=8A=A1=E8=B4=B9?= =?UTF-8?q?=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...arriageBountyOrderRefundApplicationVo.java | 3 ++ ...rderRefundApplicationQueryServiceImpl.java | 34 ++++++++++++++++++- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/ora/user/response/UserPageMarriageBountyOrderRefundApplicationVo.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/ora/user/response/UserPageMarriageBountyOrderRefundApplicationVo.java index 91c9b95..df0b3ff 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/ora/user/response/UserPageMarriageBountyOrderRefundApplicationVo.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/ora/user/response/UserPageMarriageBountyOrderRefundApplicationVo.java @@ -10,6 +10,7 @@ import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; +import java.util.List; @Data public class UserPageMarriageBountyOrderRefundApplicationVo { @@ -52,4 +53,6 @@ public class UserPageMarriageBountyOrderRefundApplicationVo { @ApiModelProperty("申请时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime applyTime; + + private List imageList; } diff --git a/dating-agency-mall-server/src/main/java/com/qniao/dam/query/ora/impl/OrderRefundApplicationQueryServiceImpl.java b/dating-agency-mall-server/src/main/java/com/qniao/dam/query/ora/impl/OrderRefundApplicationQueryServiceImpl.java index d577be0..17790dc 100644 --- a/dating-agency-mall-server/src/main/java/com/qniao/dam/query/ora/impl/OrderRefundApplicationQueryServiceImpl.java +++ b/dating-agency-mall-server/src/main/java/com/qniao/dam/query/ora/impl/OrderRefundApplicationQueryServiceImpl.java @@ -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 pageMarriageBountyOrder(UserPageMarriageBountyOrderRefundApplicationQueryParams queryParams, PageUtil pageUtil) { - return orderRefundApplicationDao.pageMarriageBountyOrder(pageUtil.toPageWithoutOrders(), queryParams); + IPage page = orderRefundApplicationDao.pageMarriageBountyOrder(pageUtil.toPageWithoutOrders(), queryParams); + if (page.getRecords().size() > 0) { + List idList = page.getRecords().stream().map(UserPageMarriageBountyOrderRefundApplicationVo::getId).collect(Collectors.toList()); + Map> allImageMap = mapAllImage(idList); + page.getRecords().forEach(vo -> { + List imageList = allImageMap.get(vo.getId()); + if (CollUtil.isNotEmpty(imageList)) { + vo.setImageList(imageList.stream().map(OrderRefundApplicationImage::getUrl).collect(Collectors.toList())); + } + }); + } + return page; + } + + private Map> mapAllImage(List idList) { + Map> map = new HashMap<>(); + if (CollUtil.isNotEmpty(idList)) { + List list = orderRefundApplicationImageDao.selectList(new LambdaQueryWrapper() + .in(OrderRefundApplicationImage::getApplicationId, idList)); + if (CollUtil.isNotEmpty(list)) { + map = list.stream().collect(Collectors.groupingBy(OrderRefundApplicationImage::getApplicationId)); + } + } + return map; } } \ No newline at end of file