mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-11-04 04:08:43 +08:00 
			
		
		
		
	trade:增加管理后台的订单分页接口
This commit is contained in:
		@@ -0,0 +1,4 @@
 | 
			
		||||
### 获得交易售后分页 => 成功
 | 
			
		||||
GET {{baseUrl}}/trade/after-sale/page?pageNo=1&pageSize=10
 | 
			
		||||
Authorization: Bearer {{token}}
 | 
			
		||||
tenant-id: {{adminTenentId}}
 | 
			
		||||
@@ -5,6 +5,8 @@ import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
 | 
			
		||||
import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
 | 
			
		||||
import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.property.ProductPropertyValueApi;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.property.dto.ProductPropertyValueDetailRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSaleDisagreeReqVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSalePageReqVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSaleRefuseReqVO;
 | 
			
		||||
@@ -22,6 +24,7 @@ import org.springframework.web.bind.annotation.*;
 | 
			
		||||
 | 
			
		||||
import javax.annotation.Resource;
 | 
			
		||||
import javax.validation.Valid;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
 | 
			
		||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
 | 
			
		||||
@@ -41,20 +44,26 @@ public class TradeAfterSaleController {
 | 
			
		||||
 | 
			
		||||
    @Resource
 | 
			
		||||
    private MemberUserApi memberUserApi;
 | 
			
		||||
    @Resource
 | 
			
		||||
    private ProductPropertyValueApi productPropertyValueApi;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/page")
 | 
			
		||||
    @ApiOperation("获得交易售后分页")
 | 
			
		||||
    @PreAuthorize("@ss.hasPermission('trade:after-sale:query')")
 | 
			
		||||
    public CommonResult<PageResult<TradeAfterSaleRespPageItemVO>> getAfterSalePage(@Valid TradeAfterSalePageReqVO pageVO) {
 | 
			
		||||
        // 查询售后
 | 
			
		||||
        PageResult<TradeAfterSaleDO> pageResult = afterSaleService.getAfterSalePage(pageVO);
 | 
			
		||||
        if (CollUtil.isEmpty(pageResult.getList())) {
 | 
			
		||||
            return success(PageResult.empty());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // 拼接数据
 | 
			
		||||
        // 查询商品属性
 | 
			
		||||
        List<ProductPropertyValueDetailRespDTO> propertyValueDetails = productPropertyValueApi
 | 
			
		||||
                .getPropertyValueDetailList(TradeAfterSaleConvert.INSTANCE.convertPropertyValueIds(pageResult.getList()));
 | 
			
		||||
        // 查询会员
 | 
			
		||||
        Map<Long, MemberUserRespDTO> memberUsers = memberUserApi.getUserMap(
 | 
			
		||||
                convertSet(pageResult.getList(), TradeAfterSaleDO::getUserId));
 | 
			
		||||
        return success(TradeAfterSaleConvert.INSTANCE.convertPage(pageResult, memberUsers));
 | 
			
		||||
        return success(TradeAfterSaleConvert.INSTANCE.convertPage(pageResult, memberUsers, propertyValueDetails));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PutMapping("/agree")
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,5 @@
 | 
			
		||||
package cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo;
 | 
			
		||||
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyValueDetailRespVO;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import org.springframework.format.annotation.DateTimeFormat;
 | 
			
		||||
@@ -72,9 +71,6 @@ public class TradeAfterSaleBaseVO {
 | 
			
		||||
    @NotNull(message = "商品 SKU 编号不能为空")
 | 
			
		||||
    private Long skuId;
 | 
			
		||||
 | 
			
		||||
    @ApiModelProperty(value = "商品属性数组")
 | 
			
		||||
    private List<ProductPropertyValueDetailRespVO> properties;
 | 
			
		||||
 | 
			
		||||
    @ApiModelProperty(value = "商品图片", example = "https://www.iocoder.cn/2.png")
 | 
			
		||||
    private String picUrl;
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,7 @@
 | 
			
		||||
package cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo;
 | 
			
		||||
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.base.member.user.MemberUserRespVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyValueDetailRespVO;
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
@@ -8,6 +9,7 @@ import lombok.EqualsAndHashCode;
 | 
			
		||||
import lombok.ToString;
 | 
			
		||||
 | 
			
		||||
import java.time.LocalDateTime;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@ApiModel("管理后台 - 交易售后分页的每一条记录 Response VO")
 | 
			
		||||
@Data
 | 
			
		||||
@@ -21,6 +23,11 @@ public class TradeAfterSaleRespPageItemVO extends TradeAfterSaleBaseVO {
 | 
			
		||||
    @ApiModelProperty(value = "创建时间", required = true)
 | 
			
		||||
    private LocalDateTime createTime;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 商品属性数组
 | 
			
		||||
     */
 | 
			
		||||
    private List<ProductPropertyValueDetailRespVO> properties;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 用户信息
 | 
			
		||||
     */
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,4 @@
 | 
			
		||||
### 获得交易订单分页 => 成功
 | 
			
		||||
GET {{baseUrl}}/trade/order/page?pageNo=1&pageSize=10
 | 
			
		||||
Authorization: Bearer {{token}}
 | 
			
		||||
tenant-id: {{adminTenentId}}
 | 
			
		||||
@@ -3,6 +3,8 @@ package cn.iocoder.yudao.module.trade.controller.admin.order;
 | 
			
		||||
import cn.hutool.core.collection.CollUtil;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.property.ProductPropertyValueApi;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.property.dto.ProductPropertyValueDetailRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderDeliveryReqVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageItemRespVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageReqVO;
 | 
			
		||||
@@ -19,7 +21,6 @@ import org.springframework.web.bind.annotation.*;
 | 
			
		||||
 | 
			
		||||
import javax.annotation.Resource;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Set;
 | 
			
		||||
 | 
			
		||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
 | 
			
		||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
 | 
			
		||||
@@ -35,6 +36,9 @@ public class TradeOrderController {
 | 
			
		||||
    @Resource
 | 
			
		||||
    private TradeOrderService tradeOrderService;
 | 
			
		||||
 | 
			
		||||
    @Resource
 | 
			
		||||
    private ProductPropertyValueApi productPropertyValueApi;
 | 
			
		||||
 | 
			
		||||
    @GetMapping("/page")
 | 
			
		||||
    @ApiOperation("获得交易订单分页")
 | 
			
		||||
    @PreAuthorize("@ss.hasPermission('trade:order:query')")
 | 
			
		||||
@@ -44,15 +48,14 @@ public class TradeOrderController {
 | 
			
		||||
        if (CollUtil.isEmpty(pageResult.getList())) {
 | 
			
		||||
            return success(PageResult.empty());
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // 查询订单项
 | 
			
		||||
        List<TradeOrderItemDO> orderItems = tradeOrderService.getOrderItems(
 | 
			
		||||
        List<TradeOrderItemDO> orderItems = tradeOrderService.getOrderItemListByOrderId(
 | 
			
		||||
                convertSet(pageResult.getList(), TradeOrderDO::getId));
 | 
			
		||||
        // 查询属性
 | 
			
		||||
        Set<Long> propertyValueIds = TradeOrderConvert.INSTANCE.convertPropertyValueIds(orderItems);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        return success(null);
 | 
			
		||||
        // 查询商品属性
 | 
			
		||||
        List<ProductPropertyValueDetailRespDTO> propertyValueDetails = productPropertyValueApi
 | 
			
		||||
                .getPropertyValueDetailList(TradeOrderConvert.INSTANCE.convertPropertyValueIds(orderItems));
 | 
			
		||||
        // 最终组合
 | 
			
		||||
        return success(TradeOrderConvert.INSTANCE.convertPage(pageResult, orderItems, propertyValueDetails));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @PostMapping("/delivery")
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ import java.util.List;
 | 
			
		||||
 | 
			
		||||
@ApiModel("管理后台 - 交易订单的分页项 Response VO")
 | 
			
		||||
@Data
 | 
			
		||||
public class TradeOrderPageItemRespVO {
 | 
			
		||||
public class TradeOrderPageItemRespVO extends TradeOrderBaseVO {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 订单项列表
 | 
			
		||||
 
 | 
			
		||||
@@ -1,10 +1,13 @@
 | 
			
		||||
package cn.iocoder.yudao.module.trade.convert.aftersale;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.collection.CollUtil;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
 | 
			
		||||
import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.pay.api.refund.dto.PayRefundCreateReqDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.property.dto.ProductPropertyValueDetailRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.TradeAfterSaleRespPageItemVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.base.member.user.MemberUserRespVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyValueDetailRespVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppTradeAfterSaleCreateReqVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.dal.dataobject.aftersale.TradeAfterSaleDO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderItemDO;
 | 
			
		||||
@@ -14,7 +17,10 @@ import org.mapstruct.Mapping;
 | 
			
		||||
import org.mapstruct.Mappings;
 | 
			
		||||
import org.mapstruct.factory.Mappers;
 | 
			
		||||
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
import java.util.*;
 | 
			
		||||
import java.util.stream.Collectors;
 | 
			
		||||
 | 
			
		||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap;
 | 
			
		||||
 | 
			
		||||
@Mapper
 | 
			
		||||
public interface TradeAfterSaleConvert {
 | 
			
		||||
@@ -43,10 +49,41 @@ public interface TradeAfterSaleConvert {
 | 
			
		||||
    PageResult<TradeAfterSaleRespPageItemVO> convertPage(PageResult<TradeAfterSaleDO> page);
 | 
			
		||||
 | 
			
		||||
    default PageResult<TradeAfterSaleRespPageItemVO> convertPage(PageResult<TradeAfterSaleDO> pageResult,
 | 
			
		||||
                                                                 Map<Long, MemberUserRespDTO> memberUsers) {
 | 
			
		||||
                                                                 Map<Long, MemberUserRespDTO> memberUsers, List<ProductPropertyValueDetailRespDTO> propertyValueDetails) {
 | 
			
		||||
        PageResult<TradeAfterSaleRespPageItemVO> pageVOResult = convertPage(pageResult);
 | 
			
		||||
        pageVOResult.getList().forEach(item -> item.setUser(convert(memberUsers.get(item.getUserId()))));
 | 
			
		||||
        // 处理会员 + 商品属性等关联信息
 | 
			
		||||
        Map<Long, ProductPropertyValueDetailRespDTO> propertyValueDetailMap = convertMap(propertyValueDetails, ProductPropertyValueDetailRespDTO::getValueId);
 | 
			
		||||
        for (int i = 0; i < pageResult.getList().size(); i++) {
 | 
			
		||||
            TradeAfterSaleRespPageItemVO afterSaleVO = pageVOResult.getList().get(i);
 | 
			
		||||
            TradeAfterSaleDO afterSaleDO = pageResult.getList().get(i);
 | 
			
		||||
            // 会员
 | 
			
		||||
            afterSaleVO.setUser(convert(memberUsers.get(afterSaleDO.getUserId())));
 | 
			
		||||
            // 商品属性
 | 
			
		||||
            if (CollUtil.isNotEmpty(afterSaleDO.getProperties())) {
 | 
			
		||||
                afterSaleVO.setProperties(new ArrayList<>(afterSaleDO.getProperties().size()));
 | 
			
		||||
                // 遍历每个 properties,设置到 TradeOrderPageItemRespVO.Item 中
 | 
			
		||||
                afterSaleDO.getProperties().forEach(property -> {
 | 
			
		||||
                    ProductPropertyValueDetailRespDTO propertyValueDetail = propertyValueDetailMap.get(property.getValueId());
 | 
			
		||||
                    if (propertyValueDetail == null) {
 | 
			
		||||
                        return;
 | 
			
		||||
                    }
 | 
			
		||||
                    afterSaleVO.getProperties().add(convert(propertyValueDetail));
 | 
			
		||||
                });
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return pageVOResult;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    ProductPropertyValueDetailRespVO convert(ProductPropertyValueDetailRespDTO bean);
 | 
			
		||||
 | 
			
		||||
    default Set<Long> convertPropertyValueIds(List<TradeAfterSaleDO> list) {
 | 
			
		||||
        if (CollUtil.isEmpty(list)) {
 | 
			
		||||
            return new HashSet<>();
 | 
			
		||||
        }
 | 
			
		||||
        return list.stream().filter(item -> item.getProperties() != null)
 | 
			
		||||
                .flatMap(p -> p.getProperties().stream()) // 遍历多个 Property 属性
 | 
			
		||||
                .map(TradeOrderItemDO.Property::getValueId) // 将每个 Property 转换成对应的 propertyId,最后形成集合
 | 
			
		||||
                .collect(Collectors.toSet());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,14 +1,18 @@
 | 
			
		||||
package cn.iocoder.yudao.module.trade.convert.order;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.collection.CollUtil;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
 | 
			
		||||
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
 | 
			
		||||
import cn.iocoder.yudao.module.member.api.address.dto.AddressRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.pay.api.order.dto.PayOrderCreateReqDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.property.dto.ProductPropertyValueDetailRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.sku.dto.ProductSkuRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.sku.dto.ProductSkuUpdateStockReqDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.product.api.spu.dto.ProductSpuRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.promotion.api.price.dto.PriceCalculateReqDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.promotion.api.price.dto.PriceCalculateRespDTO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyValueDetailRespVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageItemRespVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderCreateReqVO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO;
 | 
			
		||||
import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderItemDO;
 | 
			
		||||
@@ -19,13 +23,11 @@ import org.mapstruct.Mapping;
 | 
			
		||||
import org.mapstruct.Mappings;
 | 
			
		||||
import org.mapstruct.factory.Mappers;
 | 
			
		||||
 | 
			
		||||
import java.util.HashSet;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
import java.util.Set;
 | 
			
		||||
import java.util.*;
 | 
			
		||||
import java.util.stream.Collectors;
 | 
			
		||||
 | 
			
		||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap;
 | 
			
		||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMultiMap;
 | 
			
		||||
import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.addTime;
 | 
			
		||||
 | 
			
		||||
@Mapper
 | 
			
		||||
@@ -92,14 +94,50 @@ public interface TradeOrderConvert {
 | 
			
		||||
        return createReqDTO;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    default Set<Long> convertPropertyValueIds(List<TradeOrderItemDO> orderItems) {
 | 
			
		||||
        if (CollUtil.isEmpty(orderItems)) {
 | 
			
		||||
    default Set<Long> convertPropertyValueIds(List<TradeOrderItemDO> list) {
 | 
			
		||||
        if (CollUtil.isEmpty(list)) {
 | 
			
		||||
            return new HashSet<>();
 | 
			
		||||
        }
 | 
			
		||||
        return orderItems.stream().filter(item -> item.getProperties() != null)
 | 
			
		||||
        return list.stream().filter(item -> item.getProperties() != null)
 | 
			
		||||
                .flatMap(p -> p.getProperties().stream()) // 遍历多个 Property 属性
 | 
			
		||||
                .map(TradeOrderItemDO.Property::getValueId) // 将每个 Property 转换成对应的 propertyId,最后形成集合
 | 
			
		||||
                .collect(Collectors.toSet());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    default PageResult<TradeOrderPageItemRespVO> convertPage(PageResult<TradeOrderDO> pageResult, List<TradeOrderItemDO> orderItems,
 | 
			
		||||
                                                             List<ProductPropertyValueDetailRespDTO> propertyValueDetails) {
 | 
			
		||||
        Map<Long, List<TradeOrderItemDO>> orderItemMap = convertMultiMap(orderItems, TradeOrderItemDO::getOrderId);
 | 
			
		||||
        Map<Long, ProductPropertyValueDetailRespDTO> propertyValueDetailMap = convertMap(propertyValueDetails, ProductPropertyValueDetailRespDTO::getValueId);
 | 
			
		||||
        // 转化 List
 | 
			
		||||
        List<TradeOrderPageItemRespVO> orderVOs = CollectionUtils.convertList(pageResult.getList(), order -> {
 | 
			
		||||
            List<TradeOrderItemDO> xOrderItems = orderItemMap.get(order.getId());
 | 
			
		||||
            TradeOrderPageItemRespVO orderVO = convert(order, xOrderItems);
 | 
			
		||||
            if (CollUtil.isNotEmpty(xOrderItems)) {
 | 
			
		||||
                // 处理商品属性
 | 
			
		||||
                for (int i = 0; i < xOrderItems.size(); i++) {
 | 
			
		||||
                    List<TradeOrderItemDO.Property> properties = xOrderItems.get(i).getProperties();
 | 
			
		||||
                    if (CollUtil.isEmpty(properties)) {
 | 
			
		||||
                        continue;
 | 
			
		||||
                    }
 | 
			
		||||
                    TradeOrderPageItemRespVO.Item item = orderVO.getItems().get(i);
 | 
			
		||||
                    item.setProperties(new ArrayList<>(properties.size()));
 | 
			
		||||
                    // 遍历每个 properties,设置到 TradeOrderPageItemRespVO.Item 中
 | 
			
		||||
                    properties.forEach(property -> {
 | 
			
		||||
                        ProductPropertyValueDetailRespDTO propertyValueDetail = propertyValueDetailMap.get(property.getValueId());
 | 
			
		||||
                        if (propertyValueDetail == null) {
 | 
			
		||||
                           return;
 | 
			
		||||
                        }
 | 
			
		||||
                        item.getProperties().add(convert(propertyValueDetail));
 | 
			
		||||
                    });
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            return orderVO;
 | 
			
		||||
        });
 | 
			
		||||
        return new PageResult<>(orderVOs, pageResult.getTotal());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    TradeOrderPageItemRespVO convert(TradeOrderDO order, List<TradeOrderItemDO> items);
 | 
			
		||||
 | 
			
		||||
    ProductPropertyValueDetailRespVO convert(ProductPropertyValueDetailRespDTO bean);
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -5,6 +5,7 @@ import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderItemDO;
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 | 
			
		||||
import org.apache.ibatis.annotations.Mapper;
 | 
			
		||||
 | 
			
		||||
import java.util.Collection;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
 | 
			
		||||
@Mapper
 | 
			
		||||
@@ -19,4 +20,8 @@ public interface TradeOrderItemMapper extends BaseMapperX<TradeOrderItemDO> {
 | 
			
		||||
        return selectList(TradeOrderItemDO::getOrderId, orderId);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    default List<TradeOrderItemDO> selectListByOrderId(Collection<Long> orderIds) {
 | 
			
		||||
        return selectList(TradeOrderItemDO::getOrderId, orderIds);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -9,9 +9,6 @@ import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderItemDO;
 | 
			
		||||
 | 
			
		||||
import java.util.Collection;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
 | 
			
		||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMultiMap;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 交易订单 Service 接口
 | 
			
		||||
@@ -97,22 +94,19 @@ public interface TradeOrderService {
 | 
			
		||||
                                        Integer newAfterSaleStatus, Integer refundPrice);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 查询交易订单项
 | 
			
		||||
     * 根据交易订单项编号数组,查询交易订单项
 | 
			
		||||
     *
 | 
			
		||||
     * @param ids 交易订单项编号数组
 | 
			
		||||
     * @return 交易订单项数组
 | 
			
		||||
     */
 | 
			
		||||
    List<TradeOrderItemDO> getOrderItems(Collection<Long> ids);
 | 
			
		||||
    List<TradeOrderItemDO> getOrderItemList(Collection<Long> ids);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 查询交易订单项 Map
 | 
			
		||||
     * 根据交易订单编号数组,查询交易订单项
 | 
			
		||||
     *
 | 
			
		||||
     * @param ids 交易订单项编号数组
 | 
			
		||||
     * @return 交易订单项 Map
 | 
			
		||||
     * @param orderIds 交易订单编号数组
 | 
			
		||||
     * @return 交易订单项数组
 | 
			
		||||
     */
 | 
			
		||||
    default Map<Long, List<TradeOrderItemDO>> getOrderItemMap(Collection<Long> ids) {
 | 
			
		||||
        List<TradeOrderItemDO> orderItems = getOrderItems(ids);
 | 
			
		||||
        return convertMultiMap(orderItems, TradeOrderItemDO::getOrderId);
 | 
			
		||||
    }
 | 
			
		||||
    List<TradeOrderItemDO> getOrderItemListByOrderId(Collection<Long> orderIds);
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -473,10 +473,15 @@ public class TradeOrderServiceImpl implements TradeOrderService {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public List<TradeOrderItemDO> getOrderItems(Collection<Long> ids) {
 | 
			
		||||
    public List<TradeOrderItemDO> getOrderItemList(Collection<Long> ids) {
 | 
			
		||||
        return tradeOrderItemMapper.selectBatchIds(ids);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public List<TradeOrderItemDO> getOrderItemListByOrderId(Collection<Long> orderIds) {
 | 
			
		||||
        return tradeOrderItemMapper.selectListByOrderId(orderIds);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 判断指定订单的所有订单项,是不是都售后成功
 | 
			
		||||
     *
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user