Commit b92ed60136a2b925a4c066545e2845cca9573ea0
Committed by
Gitee
!519 订单详情后端修改
Merge pull request !519 from 矿泉水/feature/mall_product
Showing
6 changed files
with
34 additions
and
3 deletions
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/TradeOrderController.java
| @@ -25,6 +25,7 @@ import org.springframework.web.bind.annotation.*; | @@ -25,6 +25,7 @@ import org.springframework.web.bind.annotation.*; | ||
| 25 | 25 | ||
| 26 | import javax.annotation.Resource; | 26 | import javax.annotation.Resource; |
| 27 | import java.util.List; | 27 | import java.util.List; |
| 28 | +import java.util.Map; | ||
| 28 | 29 | ||
| 29 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; | 30 | import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; |
| 30 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; | 31 | import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; |
| @@ -54,6 +55,10 @@ public class TradeOrderController { | @@ -54,6 +55,10 @@ public class TradeOrderController { | ||
| 54 | if (CollUtil.isEmpty(pageResult.getList())) { | 55 | if (CollUtil.isEmpty(pageResult.getList())) { |
| 55 | return success(PageResult.empty()); | 56 | return success(PageResult.empty()); |
| 56 | } | 57 | } |
| 58 | + | ||
| 59 | + //查询用户信息 mod by 矿泉水 20230614 begin | ||
| 60 | + Map<Long, MemberUserRespDTO> userRespVOMap = memberUserApi.getUserMap(convertSet(pageResult.getList(),TradeOrderDO::getUserId));; | ||
| 61 | + // end | ||
| 57 | // 查询订单项 | 62 | // 查询订单项 |
| 58 | List<TradeOrderItemDO> orderItems = tradeOrderService.getOrderItemListByOrderId( | 63 | List<TradeOrderItemDO> orderItems = tradeOrderService.getOrderItemListByOrderId( |
| 59 | convertSet(pageResult.getList(), TradeOrderDO::getId)); | 64 | convertSet(pageResult.getList(), TradeOrderDO::getId)); |
| @@ -61,7 +66,7 @@ public class TradeOrderController { | @@ -61,7 +66,7 @@ public class TradeOrderController { | ||
| 61 | List<ProductPropertyValueDetailRespDTO> propertyValueDetails = productPropertyValueApi | 66 | List<ProductPropertyValueDetailRespDTO> propertyValueDetails = productPropertyValueApi |
| 62 | .getPropertyValueDetailList(TradeOrderConvert.INSTANCE.convertPropertyValueIds(orderItems)); | 67 | .getPropertyValueDetailList(TradeOrderConvert.INSTANCE.convertPropertyValueIds(orderItems)); |
| 63 | // 最终组合 | 68 | // 最终组合 |
| 64 | - return success(TradeOrderConvert.INSTANCE.convertPage(pageResult, orderItems, propertyValueDetails)); | 69 | + return success(TradeOrderConvert.INSTANCE.convertPage(pageResult, orderItems, propertyValueDetails, userRespVOMap)); |
| 65 | } | 70 | } |
| 66 | 71 | ||
| 67 | @GetMapping("/get-detail") | 72 | @GetMapping("/get-detail") |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderBaseVO.java
| @@ -71,7 +71,7 @@ public class TradeOrderBaseVO { | @@ -71,7 +71,7 @@ public class TradeOrderBaseVO { | ||
| 71 | private String payChannelCode; | 71 | private String payChannelCode; |
| 72 | 72 | ||
| 73 | @Schema(description = "商品原价(总)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1000") | 73 | @Schema(description = "商品原价(总)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1000") |
| 74 | - private Integer originalPrice; | 74 | + private Integer totalPrice; |
| 75 | 75 | ||
| 76 | @Schema(description = "订单优惠(总)", requiredMode = Schema.RequiredMode.REQUIRED, example = "100") | 76 | @Schema(description = "订单优惠(总)", requiredMode = Schema.RequiredMode.REQUIRED, example = "100") |
| 77 | private Integer discountPrice; | 77 | private Integer discountPrice; |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderPageItemRespVO.java
| 1 | package cn.iocoder.yudao.module.trade.controller.admin.order.vo; | 1 | package cn.iocoder.yudao.module.trade.controller.admin.order.vo; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO; | ||
| 3 | import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyValueDetailRespVO; | 4 | import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyValueDetailRespVO; |
| 4 | import io.swagger.v3.oas.annotations.media.Schema; | 5 | import io.swagger.v3.oas.annotations.media.Schema; |
| 5 | import lombok.Data; | 6 | import lombok.Data; |
| @@ -18,6 +19,11 @@ public class TradeOrderPageItemRespVO extends TradeOrderBaseVO { | @@ -18,6 +19,11 @@ public class TradeOrderPageItemRespVO extends TradeOrderBaseVO { | ||
| 18 | */ | 19 | */ |
| 19 | private List<Item> items; | 20 | private List<Item> items; |
| 20 | 21 | ||
| 22 | + /** | ||
| 23 | + * 用户信息 | ||
| 24 | + */ | ||
| 25 | + private MemberUserRespDTO user; | ||
| 26 | + | ||
| 21 | @Schema(description = "管理后台 - 交易订单的分页项的订单项目") | 27 | @Schema(description = "管理后台 - 交易订单的分页项的订单项目") |
| 22 | @Data | 28 | @Data |
| 23 | public static class Item extends TradeOrderItemBaseVO { | 29 | public static class Item extends TradeOrderItemBaseVO { |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderPageReqVO.java
| 1 | package cn.iocoder.yudao.module.trade.controller.admin.order.vo; | 1 | package cn.iocoder.yudao.module.trade.controller.admin.order.vo; |
| 2 | 2 | ||
| 3 | +import cn.iocoder.yudao.framework.common.enums.TerminalEnum; | ||
| 3 | import cn.iocoder.yudao.framework.common.pojo.PageParam; | 4 | import cn.iocoder.yudao.framework.common.pojo.PageParam; |
| 4 | import cn.iocoder.yudao.framework.common.validation.InEnum; | 5 | import cn.iocoder.yudao.framework.common.validation.InEnum; |
| 5 | import cn.iocoder.yudao.framework.common.validation.Mobile; | 6 | import cn.iocoder.yudao.framework.common.validation.Mobile; |
| @@ -50,4 +51,8 @@ public class TradeOrderPageReqVO extends PageParam { | @@ -50,4 +51,8 @@ public class TradeOrderPageReqVO extends PageParam { | ||
| 50 | @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) | 51 | @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) |
| 51 | private LocalDateTime[] createTime; | 52 | private LocalDateTime[] createTime; |
| 52 | 53 | ||
| 54 | + @Schema(description = "订单来源", example = "10") | ||
| 55 | + @InEnum(value = TerminalEnum.class, message = "订单来源 {value}") | ||
| 56 | + private Integer terminal; | ||
| 57 | + | ||
| 53 | } | 58 | } |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/convert/order/TradeOrderConvert.java
| @@ -119,8 +119,18 @@ public interface TradeOrderConvert { | @@ -119,8 +119,18 @@ public interface TradeOrderConvert { | ||
| 119 | } | 119 | } |
| 120 | 120 | ||
| 121 | // TODO 芋艿:可简化 | 121 | // TODO 芋艿:可简化 |
| 122 | + | ||
| 123 | + /** | ||
| 124 | + * | ||
| 125 | + * @param pageResult | ||
| 126 | + * @param orderItems | ||
| 127 | + * @param propertyValueDetails | ||
| 128 | + * @param memberUserRespDTOMap 新增参数会员DTO | ||
| 129 | + * @return | ||
| 130 | + */ | ||
| 122 | default PageResult<TradeOrderPageItemRespVO> convertPage(PageResult<TradeOrderDO> pageResult, List<TradeOrderItemDO> orderItems, | 131 | default PageResult<TradeOrderPageItemRespVO> convertPage(PageResult<TradeOrderDO> pageResult, List<TradeOrderItemDO> orderItems, |
| 123 | - List<ProductPropertyValueDetailRespDTO> propertyValueDetails) { | 132 | + List<ProductPropertyValueDetailRespDTO> propertyValueDetails, |
| 133 | + Map<Long,MemberUserRespDTO> memberUserRespDTOMap) { | ||
| 124 | Map<Long, List<TradeOrderItemDO>> orderItemMap = convertMultiMap(orderItems, TradeOrderItemDO::getOrderId); | 134 | Map<Long, List<TradeOrderItemDO>> orderItemMap = convertMultiMap(orderItems, TradeOrderItemDO::getOrderId); |
| 125 | Map<Long, ProductPropertyValueDetailRespDTO> propertyValueDetailMap = convertMap(propertyValueDetails, ProductPropertyValueDetailRespDTO::getValueId); | 135 | Map<Long, ProductPropertyValueDetailRespDTO> propertyValueDetailMap = convertMap(propertyValueDetails, ProductPropertyValueDetailRespDTO::getValueId); |
| 126 | // 转化 List | 136 | // 转化 List |
| @@ -148,6 +158,10 @@ public interface TradeOrderConvert { | @@ -148,6 +158,10 @@ public interface TradeOrderConvert { | ||
| 148 | } | 158 | } |
| 149 | // 处理收货地址 | 159 | // 处理收货地址 |
| 150 | orderVO.setReceiverAreaName(AreaUtils.format(order.getReceiverAreaId())); | 160 | orderVO.setReceiverAreaName(AreaUtils.format(order.getReceiverAreaId())); |
| 161 | + | ||
| 162 | + // 增加用户昵称 | ||
| 163 | + orderVO.setUser(memberUserRespDTOMap.get(orderVO.getUserId())); | ||
| 164 | + | ||
| 151 | return orderVO; | 165 | return orderVO; |
| 152 | }); | 166 | }); |
| 153 | return new PageResult<>(orderVOs, pageResult.getTotal()); | 167 | return new PageResult<>(orderVOs, pageResult.getTotal()); |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/mysql/order/TradeOrderMapper.java
| @@ -33,6 +33,7 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> { | @@ -33,6 +33,7 @@ public interface TradeOrderMapper extends BaseMapperX<TradeOrderDO> { | ||
| 33 | .eqIfPresent(TradeOrderDO::getType, reqVO.getType()) | 33 | .eqIfPresent(TradeOrderDO::getType, reqVO.getType()) |
| 34 | .eqIfPresent(TradeOrderDO::getStatus, reqVO.getStatus()) | 34 | .eqIfPresent(TradeOrderDO::getStatus, reqVO.getStatus()) |
| 35 | .eqIfPresent(TradeOrderDO::getPayChannelCode, reqVO.getPayChannelCode()) | 35 | .eqIfPresent(TradeOrderDO::getPayChannelCode, reqVO.getPayChannelCode()) |
| 36 | + .eqIfPresent(TradeOrderDO::getTerminal,reqVO.getTerminal()) //add by 矿泉水 20230615 | ||
| 36 | .betweenIfPresent(TradeOrderDO::getCreateTime, reqVO.getCreateTime())); | 37 | .betweenIfPresent(TradeOrderDO::getCreateTime, reqVO.getCreateTime())); |
| 37 | } | 38 | } |
| 38 | 39 |