Jelajahi Sumber

首次提交

Yangzw 2 bulan lalu
induk
melakukan
11f21519a1

+ 3 - 23
feifan-module-mall/feifan-module-trade-biz/src/main/java/cn/newfeifan/mall/module/trade/controller/admin/order/TradeOrderController.java

@@ -60,6 +60,7 @@ import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
+import java.util.stream.Collectors;
 
 import static cn.newfeifan.mall.framework.common.exception.util.ServiceExceptionUtil.exception;
 import static cn.newfeifan.mall.framework.common.pojo.CommonResult.success;
@@ -106,8 +107,7 @@ public class TradeOrderController {
         }
 
         // 查询用户信息
-        Set<Long> userIds = CollUtil.unionDistinct(convertList(pageResult.getList(), TradeOrderDO::getUserId),
-                convertList(pageResult.getList(), TradeOrderDO::getBrokerageUserId, Objects::nonNull));
+        Set<Long> userIds = pageResult.getList().stream().map(TradeOrderDO::getUserId).collect(Collectors.toSet());
         Map<Long, MemberUserRespDTO> userMap = memberUserApi.getUserMap(userIds);
         // 查询订单项
         List<TradeOrderItemDO> orderItems = tradeOrderQueryService.getOrderItemListByOrderId(
@@ -151,10 +151,8 @@ public class TradeOrderController {
 
         // 拼接数据
         MemberUserRespDTO user = memberUserApi.getUser(order.getUserId());
-        MemberUserRespDTO brokerageUser = order.getBrokerageUserId() != null ?
-                memberUserApi.getUser(order.getBrokerageUserId()) : null;
         List<TradeOrderLogDO> orderLogs = tradeOrderLogService.getOrderLogListByOrderId(id);
-        TradeOrderDetailRespVO convert = TradeOrderConvert.INSTANCE.convert(order, orderItems, orderLogs, user, brokerageUser);
+        TradeOrderDetailRespVO convert = TradeOrderConvert.INSTANCE.convert(order, orderItems, orderLogs, user, null);
         convert.setSpuType(tradeOrderQueryService.getSpuType(orderItems));
 
         if(convert.getRefundStatus().equals(TradeOrderRefundStatusEnum.ALL.getStatus())){
@@ -264,24 +262,6 @@ public class TradeOrderController {
         return success(true);
     }
 
-    @PutMapping("/pick-up-by-verify-code")
-    @Operation(summary = "订单核销")
-    @Parameter(name = "pickUpVerifyCode", description = "自提核销码")
-    @PreAuthorize("@ss.hasPermission('trade:order:pick-up')")
-    public CommonResult<Boolean> pickUpOrderByVerifyCode(@RequestParam("pickUpVerifyCode") String pickUpVerifyCode) {
-        tradeOrderUpdateService.pickUpOrderByAdmin(pickUpVerifyCode);
-        return success(true);
-    }
-
-    @GetMapping("/get-by-pick-up-verify-code")
-    @Operation(summary = "查询核销码对应的订单")
-    @Parameter(name = "pickUpVerifyCode", description = "自提核销码")
-    @PreAuthorize("@ss.hasPermission('trade:order:query')")
-    public CommonResult<TradeOrderDetailRespVO> getByPickUpVerifyCode(@RequestParam("pickUpVerifyCode") String pickUpVerifyCode) {
-        TradeOrderDO tradeOrder = tradeOrderUpdateService.getByPickUpVerifyCode(pickUpVerifyCode);
-        return success(TradeOrderConvert.INSTANCE.convert2(tradeOrder, null));
-    }
-
 
     @GetMapping("/get-count")
     @Operation(summary = "获得交易订单数量")

+ 2 - 5
feifan-module-mall/feifan-module-trade-biz/src/main/java/cn/newfeifan/mall/module/trade/controller/admin/order/TradeOrderDetailController.java

@@ -75,10 +75,8 @@ public class TradeOrderDetailController {
 
         // 拼接数据
         MemberUserRespDTO user = memberUserApi.getUser(order.getUserId());
-        MemberUserRespDTO brokerageUser = order.getBrokerageUserId() != null ?
-                memberUserApi.getUser(order.getBrokerageUserId()) : null;
         List<TradeOrderLogDO> orderLogs = tradeOrderLogService.getOrderLogListByOrderId(id);
-        return success(TradeOrderConvert.INSTANCE.convert(order, orderItems, orderLogs, user, brokerageUser));
+        return success(TradeOrderConvert.INSTANCE.convert(order, orderItems, orderLogs, user, null));
     }
 
     @GetMapping("/after_sale")
@@ -129,9 +127,8 @@ public class TradeOrderDetailController {
         PayOrderDO payOrderDO = payOrderService.getOrderByTradeOrderId(id);
         TradeOrderPayVo build = TradeOrderPayVo.builder()
                 .userRemark(order.getUserRemark())
-                .payChannelCode(order.getPayChannelCode())
                 .path("")
-                .payPrice(order.getPayPrice())
+                .payPrice(order.getPayIntegral().intValue())
                 .build();
         if (payOrderDO == null){
             build.setPayStatus("未支付");

+ 2 - 40
feifan-module-mall/feifan-module-trade-biz/src/main/java/cn/newfeifan/mall/module/trade/controller/admin/order/vo/TradeOrderBaseVO.java

@@ -58,44 +58,23 @@ public class TradeOrderBaseVO {
 
     // ========== 价格 + 支付基本信息 ==========
 
-    @Schema(description = "支付订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
-    private Long payOrderId;
-
     @Schema(description = "是否已支付", requiredMode = Schema.RequiredMode.REQUIRED, example = "true")
     private Boolean payStatus;
 
     @Schema(description = "付款时间")
     private LocalDateTime payTime;
 
-    @Schema(description = "支付渠道", requiredMode = Schema.RequiredMode.REQUIRED, example = "wx_lite")
-    private String payChannelCode;
-
     @Schema(description = "商品原价(总)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1000")
     private Integer totalPrice;
 
-    @Schema(description = "订单优惠(总)", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
-    private Integer discountPrice;
-
     @Schema(description = "运费金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
     private Integer deliveryPrice;
 
-    @Schema(description = "订单调价(总)", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
-    private Integer adjustPrice;
-
-    @Schema(description = "应付金额(总)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1000")
-    private Integer payPrice;
-
     // ========== 收件 + 物流基本信息 ==========
 
     @Schema(description = "配送方式", example = "10")
     private Integer deliveryType;
 
-    @Schema(description = "自提门店", example = "10")
-    private Long pickUpStoreId;
-
-    @Schema(description = "自提核销码", example = "10")
-    private Long pickUpVerifyCode;
-
     @Schema(description = "配送模板编号", example = "1024")
     private Long deliveryTemplateId;
 
@@ -128,23 +107,8 @@ public class TradeOrderBaseVO {
     @Schema(description = "售后状态", example = "1")
     private Integer afterSaleStatus;
 
-    @Schema(description = "退款金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
-    private Integer refundPrice;
-
     // ========== 营销基本信息 ==========
 
-    @Schema(description = "优惠劵编号", example = "1024")
-    private Long couponId;
-
-    @Schema(description = "优惠劵减免金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
-    private Integer couponPrice;
-
-    @Schema(description = "积分抵扣的金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
-    private Integer pointPrice;
-
-    @Schema(description = "VIP 减免金额", requiredMode = Schema.RequiredMode.REQUIRED, example = "888")
-    private Integer vipPrice;
-
     @Schema(description = "推广人编号", example = "1")
     private Long brokerageUserId;
 
@@ -160,9 +124,7 @@ public class TradeOrderBaseVO {
     @Schema(description = "支付积分")
     private Long payIntegral;
 
-    @Schema(description = "支付的消费分")
-    private Long payConsumptionPoints;
+    @Schema(description = "使用积分类型")
+    private Integer integralType;
 
-    @Schema(description = "退回的消费分")
-    private Long refundConsumption;
 }

+ 3 - 16
feifan-module-mall/feifan-module-trade-biz/src/main/java/cn/newfeifan/mall/module/trade/convert/order/TradeOrderConvert.java

@@ -63,16 +63,10 @@ public interface TradeOrderConvert {
     @Mappings({
             @Mapping(target = "id", ignore = true),
             @Mapping(source = "userId", target = "userId"),
-            @Mapping(source = "createReqVO.couponId", target = "couponId"),
             @Mapping(target = "remark", ignore = true),
             @Mapping(source = "createReqVO.remark", target = "userRemark"),
             @Mapping(source = "calculateRespBO.price.totalPrice", target = "totalPrice"),
-            @Mapping(source = "calculateRespBO.price.discountPrice", target = "discountPrice"),
             @Mapping(source = "calculateRespBO.price.deliveryPrice", target = "deliveryPrice"),
-            @Mapping(source = "calculateRespBO.price.couponPrice", target = "couponPrice"),
-            @Mapping(source = "calculateRespBO.price.pointPrice", target = "pointPrice"),
-            @Mapping(source = "calculateRespBO.price.vipPrice", target = "vipPrice"),
-            @Mapping(source = "calculateRespBO.price.payPrice", target = "payPrice")
     })
     TradeOrderDO convert(Long userId, AppTradeOrderCreateReqVO createReqVO, TradePriceCalculateRespBO calculateRespBO);
 
@@ -114,7 +108,7 @@ public interface TradeOrderConvert {
         createReqDTO.setSubject(subject);
         createReqDTO.setBody(subject); // TODO 非繁人:临时写死
         // 订单相关字段
-        createReqDTO.setPrice(order.getPayPrice()).setExpireTime(addTime(orderProperties.getPayExpireTime()));
+        createReqDTO.setPrice(order.getPayIntegral().intValue()).setExpireTime(addTime(orderProperties.getPayExpireTime()));
         return createReqDTO;
     }
 
@@ -130,8 +124,6 @@ public interface TradeOrderConvert {
             orderVO.setReceiverAreaName(AreaUtils.format(order.getReceiverAreaId()));
             // 增加用户信息
             orderVO.setUser(convertUser(memberUserMap.get(orderVO.getUserId())));
-            // 增加推广人信息
-            orderVO.setBrokerageUser(convertUser(memberUserMap.get(orderVO.getBrokerageUserId())));
             return orderVO;
         });
         return new PageResult<>(orderVOs, pageResult.getTotal());
@@ -147,6 +139,7 @@ public interface TradeOrderConvert {
                                            List<TradeOrderLogDO> orderLogs,
                                            MemberUserRespDTO user, MemberUserRespDTO brokerageUser) {
         TradeOrderDetailRespVO orderVO = convert2(order, orderItems);
+        orderVO.setIntegralType(order.getIntegralType());
         // 处理收货地址
         orderVO.setReceiverAreaName(AreaUtils.format(order.getReceiverAreaId()));
         // 处理用户信息
@@ -185,9 +178,6 @@ public interface TradeOrderConvert {
                                                 DeliveryExpressDO express) {
         AppTradeOrderDetailRespVO orderVO = convert3(order, orderItems);
         orderVO.setPayExpireTime(addTime(tradeOrderProperties.getPayExpireTime()));
-        if (StrUtil.isNotEmpty(order.getPayChannelCode())) {
-            orderVO.setPayChannelName(DictFrameworkUtils.getDictDataLabel(DictTypeConstants.CHANNEL_CODE, order.getPayChannelCode()));
-        }
         // 处理收货地址
         orderVO.setReceiverAreaName(AreaUtils.format(order.getReceiverAreaId()));
         if (express != null) {
@@ -269,7 +259,7 @@ public interface TradeOrderConvert {
     default BrokerageAddReqBO convert(MemberUserRespDTO user, TradeOrderItemDO item,
                                       ProductSpuRespDTO spu, ProductSkuRespDTO sku) {
         BrokerageAddReqBO bo = new BrokerageAddReqBO().setBizId(String.valueOf(item.getId())).setSourceUserId(item.getUserId())
-                .setBasePrice(item.getPayPrice() * item.getCount())
+                .setBasePrice(item.getPayIntegral().intValue() * item.getCount())
                 .setTitle(StrUtil.format("{}成功购买{}", user.getNickname(), item.getSpuName()))
                 .setFirstFixedPrice(0).setSecondFixedPrice(0);
         if (BooleanUtil.isTrue(spu.getSubCommissionType())) {
@@ -282,14 +272,11 @@ public interface TradeOrderConvert {
     List<TradeOrderRespDTO> convertList04(List<TradeOrderDO> list);
 
     @Mappings({
-            @Mapping(target = "activityId", source = "order.combinationActivityId"),
             @Mapping(target = "spuId", source = "item.spuId"),
             @Mapping(target = "skuId", source = "item.skuId"),
             @Mapping(target = "count", source = "item.count"),
             @Mapping(target = "orderId", source = "order.id"),
             @Mapping(target = "userId", source = "order.userId"),
-            @Mapping(target = "headId", source = "order.combinationHeadId"),
-            @Mapping(target = "combinationPrice", source = "item.payPrice"),
     })
     CombinationRecordCreateReqDTO convert(TradeOrderDO order, TradeOrderItemDO item);
 

+ 0 - 28
feifan-module-mall/feifan-module-trade-biz/src/main/java/cn/newfeifan/mall/module/trade/service/order/handler/TradeMemberPointOrderHandler.java

@@ -34,19 +34,10 @@ public class TradeMemberPointOrderHandler implements TradeOrderHandler {
 
     @Override
     public void afterOrderCreate(TradeOrderDO order, List<TradeOrderItemDO> orderItems) {
-        // 扣减用户积分(订单抵扣)。不在前置扣减的原因,是因为积分扣减时,需要记录关联业务
-        reducePoint(order.getUserId(), order.getUsePoint(), MemberPointBizTypeEnum.ORDER_USE, order.getId());
     }
 
     @Override
     public void afterPayOrder(TradeOrderDO order, List<TradeOrderItemDO> orderItems) {
-        // 增加用户积分(订单赠送)
-        addPoint(order.getUserId(), order.getGivePoint(), MemberPointBizTypeEnum.ORDER_GIVE,
-                order.getId());
-
-        // 增加用户经验
-        memberLevelApi.addExperience(order.getUserId(), order.getPayPrice(),
-                MemberExperienceBizTypeEnum.ORDER_GIVE.getType(), String.valueOf(order.getId()));
     }
 
     @Override
@@ -57,33 +48,14 @@ public class TradeMemberPointOrderHandler implements TradeOrderHandler {
             return;
         }
 
-        // 增加(回滚)用户积分(订单抵扣)
-        Integer usePoint = getSumValue(orderItems, TradeOrderItemDO::getUsePoint, Integer::sum);
-        addPoint(order.getUserId(), usePoint, MemberPointBizTypeEnum.ORDER_USE_CANCEL,
-                order.getId());
-
         // 如下的返还,需要经过支持,也就是经历 afterPayOrder 流程
         if (!order.getPayStatus()) {
             return;
         }
-        // 扣减(回滚)积分(订单赠送)
-        Integer givePoint = getSumValue(orderItems, TradeOrderItemDO::getGivePoint, Integer::sum);
-        reducePoint(order.getUserId(), givePoint, MemberPointBizTypeEnum.ORDER_GIVE_CANCEL,
-                order.getId());
-        // 扣减(回滚)用户经验
-        int payPrice = order.getPayPrice() - order.getRefundPrice();
-        memberLevelApi.addExperience(order.getUserId(), payPrice,
-                MemberExperienceBizTypeEnum.ORDER_GIVE_CANCEL.getType(), String.valueOf(order.getId()));
     }
 
     @Override
     public void afterCancelOrderItem(TradeOrderDO order, TradeOrderItemDO orderItem) {
-        // 扣减(回滚)积分(订单赠送)
-        reducePoint(order.getUserId(), orderItem.getGivePoint(), MemberPointBizTypeEnum.ORDER_GIVE_CANCEL_ITEM,
-                orderItem.getId());
-        // 增加(回滚)积分(订单抵扣)
-        addPoint(order.getUserId(), orderItem.getUsePoint(), MemberPointBizTypeEnum.ORDER_USE_CANCEL_ITEM,
-                orderItem.getId());
 
         // 扣减(回滚)用户经验
         AfterSaleDO afterSale = afterSaleService.getAfterSale(orderItem.getAfterSaleId());