Commit 1b8f43e793aa26f9a356547a0fce2eed6955f0d9

Authored by dengwei
1 parent 0e68a92c

2025 last commit happy new year

cashier-mall/src/main/java/com/diligrp/cashier/mall/api/RtMallOrderApi.java
@@ -9,6 +9,7 @@ import com.diligrp.cashier.mall.domain.rtmall.vo.OrderStatusCallbackVO; @@ -9,6 +9,7 @@ import com.diligrp.cashier.mall.domain.rtmall.vo.OrderStatusCallbackVO;
9 import com.diligrp.cashier.mall.domain.rtmall.vo.OrderSuccessVO; 9 import com.diligrp.cashier.mall.domain.rtmall.vo.OrderSuccessVO;
10 import com.diligrp.cashier.mall.service.biz.MallBizOrderService; 10 import com.diligrp.cashier.mall.service.biz.MallBizOrderService;
11 import com.diligrp.cashier.mall.sign.RtMallSign; 11 import com.diligrp.cashier.mall.sign.RtMallSign;
  12 +import com.diligrp.cashier.mall.type.OrderType;
12 import com.diligrp.cashier.mall.util.RtMallValidateUtils; 13 import com.diligrp.cashier.mall.util.RtMallValidateUtils;
13 import com.diligrp.cashier.shared.annotation.ParamLogPrint; 14 import com.diligrp.cashier.shared.annotation.ParamLogPrint;
14 import com.diligrp.cashier.shared.annotation.RepeatSubmit; 15 import com.diligrp.cashier.shared.annotation.RepeatSubmit;
@@ -16,7 +17,6 @@ import com.diligrp.cashier.shared.annotation.Sign; @@ -16,7 +17,6 @@ import com.diligrp.cashier.shared.annotation.Sign;
16 import com.diligrp.cashier.shared.handler.duplication.SpelDuplicationSubmit; 17 import com.diligrp.cashier.shared.handler.duplication.SpelDuplicationSubmit;
17 import com.diligrp.cashier.shared.util.JsonUtils; 18 import com.diligrp.cashier.shared.util.JsonUtils;
18 import jakarta.annotation.Resource; 19 import jakarta.annotation.Resource;
19 -import jakarta.validation.Valid;  
20 import org.springframework.validation.annotation.Validated; 20 import org.springframework.validation.annotation.Validated;
21 import org.springframework.web.bind.annotation.PostMapping; 21 import org.springframework.web.bind.annotation.PostMapping;
22 import org.springframework.web.bind.annotation.RequestBody; 22 import org.springframework.web.bind.annotation.RequestBody;
@@ -48,8 +48,9 @@ public class RtMallOrderApi { @@ -48,8 +48,9 @@ public class RtMallOrderApi {
48 @ParamLogPrint(outPrint = true) 48 @ParamLogPrint(outPrint = true)
49 @Sign(sign = RtMallSign.class) 49 @Sign(sign = RtMallSign.class)
50 @RepeatSubmit(prefix = "order_sync:", value = "#req['order_id']", duplicationSubmit = SpelDuplicationSubmit.class) 50 @RepeatSubmit(prefix = "order_sync:", value = "#req['order_id']", duplicationSubmit = SpelDuplicationSubmit.class)
51 - public RtMarkMessage<OrderSuccessVO> createOrder(@Valid @RequestBody Object req) { 51 + public RtMarkMessage<OrderSuccessVO> createOrder(@RequestBody Object req) {
52 OrderCO orderCo = JsonUtils.convertValue(req, OrderCO.class); 52 OrderCO orderCo = JsonUtils.convertValue(req, OrderCO.class);
  53 + orderCo.setOrderType(OrderType.MINI_PROGRAM.code);
53 RtMallValidateUtils.valid(orderCo); 54 RtMallValidateUtils.valid(orderCo);
54 return RtMarkMessage.success(mallBizOrderService.createOrder(List.of(orderCo))); 55 return RtMarkMessage.success(mallBizOrderService.createOrder(List.of(orderCo)));
55 } 56 }
@@ -62,7 +63,7 @@ public class RtMallOrderApi { @@ -62,7 +63,7 @@ public class RtMallOrderApi {
62 @PostMapping("/order/v1/info") 63 @PostMapping("/order/v1/info")
63 @ParamLogPrint(outPrint = true) 64 @ParamLogPrint(outPrint = true)
64 @Sign(sign = RtMallSign.class) 65 @Sign(sign = RtMallSign.class)
65 - public RtMarkMessage<OrderPaymentVO> info(@Valid @RequestBody Object req) { 66 + public RtMarkMessage<OrderPaymentVO> info(@RequestBody Object req) {
66 OrderInfoCO orderInfoCo = JsonUtils.convertValue(req, OrderInfoCO.class); 67 OrderInfoCO orderInfoCo = JsonUtils.convertValue(req, OrderInfoCO.class);
67 RtMallValidateUtils.valid(orderInfoCo); 68 RtMallValidateUtils.valid(orderInfoCo);
68 return RtMarkMessage.success(mallBizOrderService.info(orderInfoCo)); 69 return RtMarkMessage.success(mallBizOrderService.info(orderInfoCo));
@@ -77,7 +78,7 @@ public class RtMallOrderApi { @@ -77,7 +78,7 @@ public class RtMallOrderApi {
77 @ParamLogPrint(outPrint = true) 78 @ParamLogPrint(outPrint = true)
78 @Sign(sign = RtMallSign.class) 79 @Sign(sign = RtMallSign.class)
79 @RepeatSubmit(prefix = "status_callback:", value = "#req['order_id']", duplicationSubmit = SpelDuplicationSubmit.class) 80 @RepeatSubmit(prefix = "status_callback:", value = "#req['order_id']", duplicationSubmit = SpelDuplicationSubmit.class)
80 - public RtMarkMessage<OrderStatusCallbackVO> statusCallback(@Valid @RequestBody Object req) { 81 + public RtMarkMessage<OrderStatusCallbackVO> statusCallback(@RequestBody Object req) {
81 OrderStatusCallbackCO orderStatusCallback = JsonUtils.convertValue(req, OrderStatusCallbackCO.class); 82 OrderStatusCallbackCO orderStatusCallback = JsonUtils.convertValue(req, OrderStatusCallbackCO.class);
82 RtMallValidateUtils.valid(orderStatusCallback); 83 RtMallValidateUtils.valid(orderStatusCallback);
83 return RtMarkMessage.success(mallBizOrderService.statusCallback(orderStatusCallback)); 84 return RtMarkMessage.success(mallBizOrderService.statusCallback(orderStatusCallback));
cashier-mall/src/main/java/com/diligrp/cashier/mall/api/RtMallOrderRefundApi.java
@@ -3,8 +3,8 @@ package com.diligrp.cashier.mall.api; @@ -3,8 +3,8 @@ package com.diligrp.cashier.mall.api;
3 import com.diligrp.cashier.mall.domain.rtmall.RtMarkMessage; 3 import com.diligrp.cashier.mall.domain.rtmall.RtMarkMessage;
4 import com.diligrp.cashier.mall.domain.rtmall.co.RefundCO; 4 import com.diligrp.cashier.mall.domain.rtmall.co.RefundCO;
5 import com.diligrp.cashier.mall.domain.rtmall.co.RefundStatusCO; 5 import com.diligrp.cashier.mall.domain.rtmall.co.RefundStatusCO;
6 -import com.diligrp.cashier.mall.domain.rtmall.vo.RefundVO;  
7 import com.diligrp.cashier.mall.domain.rtmall.vo.RefundSuccessVO; 6 import com.diligrp.cashier.mall.domain.rtmall.vo.RefundSuccessVO;
  7 +import com.diligrp.cashier.mall.domain.rtmall.vo.RefundVO;
8 import com.diligrp.cashier.mall.service.biz.MallBizRefundService; 8 import com.diligrp.cashier.mall.service.biz.MallBizRefundService;
9 import com.diligrp.cashier.mall.sign.RtMallSign; 9 import com.diligrp.cashier.mall.sign.RtMallSign;
10 import com.diligrp.cashier.mall.util.RtMallValidateUtils; 10 import com.diligrp.cashier.mall.util.RtMallValidateUtils;
@@ -14,7 +14,6 @@ import com.diligrp.cashier.shared.annotation.Sign; @@ -14,7 +14,6 @@ import com.diligrp.cashier.shared.annotation.Sign;
14 import com.diligrp.cashier.shared.handler.duplication.SpelDuplicationSubmit; 14 import com.diligrp.cashier.shared.handler.duplication.SpelDuplicationSubmit;
15 import com.diligrp.cashier.shared.util.JsonUtils; 15 import com.diligrp.cashier.shared.util.JsonUtils;
16 import jakarta.annotation.Resource; 16 import jakarta.annotation.Resource;
17 -import jakarta.validation.Valid;  
18 import org.springframework.validation.annotation.Validated; 17 import org.springframework.validation.annotation.Validated;
19 import org.springframework.web.bind.annotation.PostMapping; 18 import org.springframework.web.bind.annotation.PostMapping;
20 import org.springframework.web.bind.annotation.RequestBody; 19 import org.springframework.web.bind.annotation.RequestBody;
@@ -43,7 +42,7 @@ public class RtMallOrderRefundApi { @@ -43,7 +42,7 @@ public class RtMallOrderRefundApi {
43 @ParamLogPrint(outPrint = true) 42 @ParamLogPrint(outPrint = true)
44 @Sign(sign = RtMallSign.class) 43 @Sign(sign = RtMallSign.class)
45 @RepeatSubmit(prefix = "refund:", value = "#req['order_id']", duplicationSubmit = SpelDuplicationSubmit.class) 44 @RepeatSubmit(prefix = "refund:", value = "#req['order_id']", duplicationSubmit = SpelDuplicationSubmit.class)
46 - public RtMarkMessage<RefundSuccessVO> refund(@Valid @RequestBody Object req) { 45 + public RtMarkMessage<RefundSuccessVO> refund(@RequestBody Object req) {
47 RefundCO refundCo = JsonUtils.convertValue(req, RefundCO.class); 46 RefundCO refundCo = JsonUtils.convertValue(req, RefundCO.class);
48 RtMallValidateUtils.valid(refundCo); 47 RtMallValidateUtils.valid(refundCo);
49 return RtMarkMessage.success(mallBizRefundService.refund(refundCo)); 48 return RtMarkMessage.success(mallBizRefundService.refund(refundCo));
@@ -57,7 +56,7 @@ public class RtMallOrderRefundApi { @@ -57,7 +56,7 @@ public class RtMallOrderRefundApi {
57 @PostMapping("/refund/v1/info") 56 @PostMapping("/refund/v1/info")
58 @ParamLogPrint(outPrint = true) 57 @ParamLogPrint(outPrint = true)
59 @Sign(sign = RtMallSign.class) 58 @Sign(sign = RtMallSign.class)
60 - public RtMarkMessage<RefundVO> info(@Valid @RequestBody Object req) { 59 + public RtMarkMessage<RefundVO> info(@RequestBody Object req) {
61 RefundStatusCO refundStatusCo = JsonUtils.convertValue(req, RefundStatusCO.class); 60 RefundStatusCO refundStatusCo = JsonUtils.convertValue(req, RefundStatusCO.class);
62 RtMallValidateUtils.valid(refundStatusCo); 61 RtMallValidateUtils.valid(refundStatusCo);
63 return RtMarkMessage.success(mallBizRefundService.info(refundStatusCo)); 62 return RtMarkMessage.success(mallBizRefundService.info(refundStatusCo));
cashier-mall/src/main/java/com/diligrp/cashier/mall/domain/rtmall/co/OrderCO.java
@@ -42,6 +42,8 @@ public class OrderCO extends RtMarkBaseCO { @@ -42,6 +42,8 @@ public class OrderCO extends RtMarkBaseCO {
42 @NotNull(message = "freight_fee is required") 42 @NotNull(message = "freight_fee is required")
43 private Long freightFee; 43 private Long freightFee;
44 44
  45 + private Long discountFee;
  46 +
45 @NotBlank(message = "shop_code is required") 47 @NotBlank(message = "shop_code is required")
46 private String shopCode; 48 private String shopCode;
47 49
@@ -53,6 +55,12 @@ public class OrderCO extends RtMarkBaseCO { @@ -53,6 +55,12 @@ public class OrderCO extends RtMarkBaseCO {
53 55
54 private ReceiverInfoCO receiverInfo; 56 private ReceiverInfoCO receiverInfo;
55 57
  58 + /**
  59 + * ่ฎขๅ•็ฑปๅž‹
  60 + * @see com.diligrp.cashier.mall.type.OrderType
  61 + */
  62 + private Integer orderType;
  63 +
56 public String getOrderId() { 64 public String getOrderId() {
57 return orderId; 65 return orderId;
58 } 66 }
@@ -117,6 +125,14 @@ public class OrderCO extends RtMarkBaseCO { @@ -117,6 +125,14 @@ public class OrderCO extends RtMarkBaseCO {
117 this.freightFee = freightFee; 125 this.freightFee = freightFee;
118 } 126 }
119 127
  128 + public Long getDiscountFee() {
  129 + return discountFee;
  130 + }
  131 +
  132 + public void setDiscountFee(Long discountFee) {
  133 + this.discountFee = discountFee;
  134 + }
  135 +
120 public String getShopCode() { 136 public String getShopCode() {
121 return shopCode; 137 return shopCode;
122 } 138 }
@@ -148,4 +164,12 @@ public class OrderCO extends RtMarkBaseCO { @@ -148,4 +164,12 @@ public class OrderCO extends RtMarkBaseCO {
148 public void setReceiverInfo(ReceiverInfoCO receiverInfo) { 164 public void setReceiverInfo(ReceiverInfoCO receiverInfo) {
149 this.receiverInfo = receiverInfo; 165 this.receiverInfo = receiverInfo;
150 } 166 }
  167 +
  168 + public Integer getOrderType() {
  169 + return orderType;
  170 + }
  171 +
  172 + public void setOrderType(Integer orderType) {
  173 + this.orderType = orderType;
  174 + }
151 } 175 }
cashier-mall/src/main/java/com/diligrp/cashier/mall/domain/rtmall/co/OrderItemCO.java
@@ -25,6 +25,8 @@ public class OrderItemCO { @@ -25,6 +25,8 @@ public class OrderItemCO {
25 @NotNull(message = "amount is required") 25 @NotNull(message = "amount is required")
26 private Long amount; 26 private Long amount;
27 27
  28 + private Long discountFee;
  29 +
28 @NotBlank(message = "item_bn is required") 30 @NotBlank(message = "item_bn is required")
29 private String itemBn; 31 private String itemBn;
30 32
@@ -72,6 +74,14 @@ public class OrderItemCO { @@ -72,6 +74,14 @@ public class OrderItemCO {
72 this.amount = amount; 74 this.amount = amount;
73 } 75 }
74 76
  77 + public Long getDiscountFee() {
  78 + return discountFee;
  79 + }
  80 +
  81 + public void setDiscountFee(Long discountFee) {
  82 + this.discountFee = discountFee;
  83 + }
  84 +
75 public String getItemBn() { 85 public String getItemBn() {
76 return itemBn; 86 return itemBn;
77 } 87 }
cashier-mall/src/main/java/com/diligrp/cashier/mall/model/MallBizOrder.java
@@ -101,6 +101,11 @@ public class MallBizOrder extends BaseDO { @@ -101,6 +101,11 @@ public class MallBizOrder extends BaseDO {
101 private Long freightFee; 101 private Long freightFee;
102 102
103 /** 103 /**
  104 + * ไผ˜ๆƒ ้‡‘้ข(ๅˆ†)
  105 + */
  106 + private Long discountFee;
  107 +
  108 + /**
104 * ่ฎขๅ•็Šถๆ€(0-notpay-ๆœชๆ”ฏไป˜-1-payed-ๅทฒๆ”ฏไป˜ 2-notpaycancel-ๆœชๆ”ฏไป˜ๅ–ๆถˆ 3-payedcancel-ๅทฒๆ”ฏไป˜ๅ–ๆถˆ 4-done-่ฎขๅ•ๅฎŒๆˆ 5-buyer_confirm-ๅพ…็”จๆˆทๆ”ถ่ดง) 109 * ่ฎขๅ•็Šถๆ€(0-notpay-ๆœชๆ”ฏไป˜-1-payed-ๅทฒๆ”ฏไป˜ 2-notpaycancel-ๆœชๆ”ฏไป˜ๅ–ๆถˆ 3-payedcancel-ๅทฒๆ”ฏไป˜ๅ–ๆถˆ 4-done-่ฎขๅ•ๅฎŒๆˆ 5-buyer_confirm-ๅพ…็”จๆˆทๆ”ถ่ดง)
105 * @see OrderState 110 * @see OrderState
106 */ 111 */
@@ -254,6 +259,14 @@ public class MallBizOrder extends BaseDO { @@ -254,6 +259,14 @@ public class MallBizOrder extends BaseDO {
254 this.freightFee = freightFee; 259 this.freightFee = freightFee;
255 } 260 }
256 261
  262 + public Long getDiscountFee() {
  263 + return discountFee;
  264 + }
  265 +
  266 + public void setDiscountFee(Long discountFee) {
  267 + this.discountFee = discountFee;
  268 + }
  269 +
257 public Integer getState() { 270 public Integer getState() {
258 return state; 271 return state;
259 } 272 }
cashier-mall/src/main/java/com/diligrp/cashier/mall/model/MallBizOrderItem.java
@@ -59,6 +59,11 @@ public class MallBizOrderItem extends BaseDO { @@ -59,6 +59,11 @@ public class MallBizOrderItem extends BaseDO {
59 private Long amount; 59 private Long amount;
60 60
61 /** 61 /**
  62 + * ไผ˜ๆƒ ้‡‘้ข(ๅˆ†)
  63 + */
  64 + private Long discountFee;
  65 +
  66 + /**
62 * ๅ•†ๅ“ๅ›พ็‰‡ 67 * ๅ•†ๅ“ๅ›พ็‰‡
63 */ 68 */
64 private String pic; 69 private String pic;
@@ -158,6 +163,14 @@ public class MallBizOrderItem extends BaseDO { @@ -158,6 +163,14 @@ public class MallBizOrderItem extends BaseDO {
158 this.amount = amount; 163 this.amount = amount;
159 } 164 }
160 165
  166 + public Long getDiscountFee() {
  167 + return discountFee;
  168 + }
  169 +
  170 + public void setDiscountFee(Long discountFee) {
  171 + this.discountFee = discountFee;
  172 + }
  173 +
161 public String getPic() { 174 public String getPic() {
162 return pic; 175 return pic;
163 } 176 }
cashier-mall/src/main/java/com/diligrp/cashier/mall/service/biz/impl/MallBizOrderServiceImpl.java
@@ -17,6 +17,7 @@ import com.diligrp.cashier.mall.exception.RtMartMallException; @@ -17,6 +17,7 @@ import com.diligrp.cashier.mall.exception.RtMartMallException;
17 import com.diligrp.cashier.mall.model.*; 17 import com.diligrp.cashier.mall.model.*;
18 import com.diligrp.cashier.mall.service.biz.MallBizOrderService; 18 import com.diligrp.cashier.mall.service.biz.MallBizOrderService;
19 import com.diligrp.cashier.mall.service.biz.MallBizPaymentService; 19 import com.diligrp.cashier.mall.service.biz.MallBizPaymentService;
  20 +import com.diligrp.cashier.mall.type.OrderState;
20 import com.diligrp.cashier.mall.type.RtMarkErrorCode; 21 import com.diligrp.cashier.mall.type.RtMarkErrorCode;
21 import com.diligrp.cashier.shared.util.JsonUtils; 22 import com.diligrp.cashier.shared.util.JsonUtils;
22 import jakarta.annotation.Resource; 23 import jakarta.annotation.Resource;
@@ -62,7 +63,7 @@ public class MallBizOrderServiceImpl implements MallBizOrderService { @@ -62,7 +63,7 @@ public class MallBizOrderServiceImpl implements MallBizOrderService {
62 @Override 63 @Override
63 @Transactional(rollbackFor = {Exception.class}) 64 @Transactional(rollbackFor = {Exception.class})
64 public OrderSuccessVO createOrder(List<OrderCO> orderCos) { 65 public OrderSuccessVO createOrder(List<OrderCO> orderCos) {
65 - AuthLoginCO authLogin = getAuthLogin(orderCos.getFirst().getUserCode()); 66 + AuthLoginCO authLogin = getAuthLogin(orderCos.getFirst().getUserCode(), orderCos.getFirst().getOrderType());
66 67
67 // order 68 // order
68 List<MallBizOrder> mallBizOrders = MallBizOrder.of(orderCos, authLogin); 69 List<MallBizOrder> mallBizOrders = MallBizOrder.of(orderCos, authLogin);
@@ -97,9 +98,9 @@ public class MallBizOrderServiceImpl implements MallBizOrderService { @@ -97,9 +98,9 @@ public class MallBizOrderServiceImpl implements MallBizOrderService {
97 @Override 98 @Override
98 @Transactional(rollbackFor = {Exception.class}) 99 @Transactional(rollbackFor = {Exception.class})
99 public OrderStatusCallbackVO statusCallback(OrderStatusCallbackCO orderStatusCallback) { 100 public OrderStatusCallbackVO statusCallback(OrderStatusCallbackCO orderStatusCallback) {
100 - // update order status  
101 MallBizOrder mallBizOrder = getByOrderId(orderStatusCallback.getOrderId()); 101 MallBizOrder mallBizOrder = getByOrderId(orderStatusCallback.getOrderId());
102 102
  103 + // update order status
103 MallBizOrder update = mallBizOrder.ofUpdateState(orderStatusCallback); 104 MallBizOrder update = mallBizOrder.ofUpdateState(orderStatusCallback);
104 int num = mallBizOrderDao.updateByPrimaryKeySelective(update); 105 int num = mallBizOrderDao.updateByPrimaryKeySelective(update);
105 if (num < 1) { 106 if (num < 1) {
@@ -109,14 +110,21 @@ public class MallBizOrderServiceImpl implements MallBizOrderService { @@ -109,14 +110,21 @@ public class MallBizOrderServiceImpl implements MallBizOrderService {
109 MallBizPaymentOrder mallBizPaymentOrder = new MallBizPaymentOrder(); 110 MallBizPaymentOrder mallBizPaymentOrder = new MallBizPaymentOrder();
110 BeanUtils.copyProperties(orderStatusCallback, mallBizPaymentOrder); 111 BeanUtils.copyProperties(orderStatusCallback, mallBizPaymentOrder);
111 mallBizPaymentOrder = mallBizPaymentService.paymentOrderInfo(mallBizPaymentOrder); 112 mallBizPaymentOrder = mallBizPaymentService.paymentOrderInfo(mallBizPaymentOrder);
  113 +
  114 + // ๅทฒๆ”ฏไป˜ๅ–ๆถˆ้€€ๆฌพ ๅทฒๆ”ฏไป˜ๅ–ๆถˆ ้œ€่ฆ้€€ๆฌพ
  115 + if (Objects.equals(mallBizOrder.getState(), OrderState.PAYED.getCode())
  116 + && Objects.equals(orderStatusCallback.getOrderStatus(), OrderState.PAYED_CANCEL.getKey())) {
  117 + // 2025/12/31: ้€€ๆฌพ ๆš‚ๆ—ถไธ้œ€่ฆ ้œ€่ฆ้€€ๆฌพ็”ณ่ฏท
  118 + }
112 return new OrderStatusCallbackVO(mallBizPaymentOrder.getPayTradeNo()); 119 return new OrderStatusCallbackVO(mallBizPaymentOrder.getPayTradeNo());
113 } 120 }
114 121
115 /** 122 /**
116 * getAuthLogin 123 * getAuthLogin
  124 + * userCode = userCode + "_" + channel
117 */ 125 */
118 - private AuthLoginCO getAuthLogin(String userCode) {  
119 - Object cache = redisTemplate.opsForValue().get(MallConstants.MALL_USER_INFO + userCode); 126 + private AuthLoginCO getAuthLogin(String userCode, Integer orderType) {
  127 + Object cache = redisTemplate.opsForValue().get(MallConstants.MALL_USER_INFO + userCode + "_" + orderType);
120 if (Objects.isNull(cache)) { 128 if (Objects.isNull(cache)) {
121 throw new RtMartMallException(RtMarkErrorCode.E5001); 129 throw new RtMartMallException(RtMarkErrorCode.E5001);
122 } 130 }
cashier-mall/src/main/java/com/diligrp/cashier/mall/service/biz/impl/MallBizRefundServiceImpl.java
@@ -5,11 +5,10 @@ import com.diligrp.cashier.mall.dao.MallBizOrderDao; @@ -5,11 +5,10 @@ import com.diligrp.cashier.mall.dao.MallBizOrderDao;
5 import com.diligrp.cashier.mall.dao.MallBizRefundDao; 5 import com.diligrp.cashier.mall.dao.MallBizRefundDao;
6 import com.diligrp.cashier.mall.domain.rtmall.co.RefundCO; 6 import com.diligrp.cashier.mall.domain.rtmall.co.RefundCO;
7 import com.diligrp.cashier.mall.domain.rtmall.co.RefundStatusCO; 7 import com.diligrp.cashier.mall.domain.rtmall.co.RefundStatusCO;
8 -import com.diligrp.cashier.mall.domain.rtmall.vo.RefundVO;  
9 import com.diligrp.cashier.mall.domain.rtmall.vo.RefundSuccessVO; 8 import com.diligrp.cashier.mall.domain.rtmall.vo.RefundSuccessVO;
  9 +import com.diligrp.cashier.mall.domain.rtmall.vo.RefundVO;
10 import com.diligrp.cashier.mall.exception.RtMartMallException; 10 import com.diligrp.cashier.mall.exception.RtMartMallException;
11 import com.diligrp.cashier.mall.model.MallBizOrder; 11 import com.diligrp.cashier.mall.model.MallBizOrder;
12 -import com.diligrp.cashier.mall.model.MallBizPayment;  
13 import com.diligrp.cashier.mall.model.MallBizPaymentOrder; 12 import com.diligrp.cashier.mall.model.MallBizPaymentOrder;
14 import com.diligrp.cashier.mall.model.MallBizRefund; 13 import com.diligrp.cashier.mall.model.MallBizRefund;
15 import com.diligrp.cashier.mall.service.biz.MallBizPaymentService; 14 import com.diligrp.cashier.mall.service.biz.MallBizPaymentService;
@@ -43,7 +42,7 @@ public class MallBizRefundServiceImpl implements MallBizRefundService { @@ -43,7 +42,7 @@ public class MallBizRefundServiceImpl implements MallBizRefundService {
43 42
44 /** 43 /**
45 * refund 44 * refund
46 - * ้€€ๆฌพๆˆๅŠŸๅ›ž่ฐƒ 45 + * ็”ณ่ฏท้€€ๆฌพๆŽฅๅฃ
47 */ 46 */
48 @Override 47 @Override
49 @Transactional(rollbackFor = {Exception.class}) 48 @Transactional(rollbackFor = {Exception.class})
cashier-mall/src/main/java/com/diligrp/cashier/mall/service/sourcechannel/AbstractSourceChannel.java
@@ -66,8 +66,8 @@ public abstract class AbstractSourceChannel { @@ -66,8 +66,8 @@ public abstract class AbstractSourceChannel {
66 String tokenKey = MallConstants.MALL_TOKEN + token; 66 String tokenKey = MallConstants.MALL_TOKEN + token;
67 redisTemplate.opsForValue().set(tokenKey, JsonUtils.toJsonString(authLogin), 1, TimeUnit.DAYS); 67 redisTemplate.opsForValue().set(tokenKey, JsonUtils.toJsonString(authLogin), 1, TimeUnit.DAYS);
68 68
69 - // ็”จๆˆทไฟกๆฏ็ผ“ๅญ˜ ไธญ็‘žใ€diliๆ˜ฏ็‹ฌ็ซ‹็ณป็ปŸ้ƒจ็ฝฒ ๅฏ่ƒฝๅญ˜ๅœจ็›ธๅŒ็”จๆˆทid ๆ‰€ไปฅ้œ€่ฆๅŠ ไธŠๆธ ้“  
70 - String userKey = MallConstants.MALL_USER_INFO + authLogin.getUserCode() + "_" + authLogin.getChannel(); 69 + // ็”จๆˆทไฟกๆฏ็ผ“ๅญ˜ ไธญ็‘žใ€diliๆ˜ฏ็‹ฌ็ซ‹็ณป็ปŸ้ƒจ็ฝฒ ๅฏ่ƒฝๅญ˜ๅœจ็›ธๅŒ็”จๆˆทid ๆ‰€ไปฅ้œ€่ฆๅŠ ไธŠๆธ ้“ ๅฏ่ƒฝๅŒๆ—ถๅญ˜ๅœจๆ“ไฝœๆ‰ซ็ ๅ’Œๆ‰ซ็ ่ดญ-่ฎขๅ•็ฑปๅž‹
  70 + String userKey = MallConstants.MALL_USER_INFO + authLogin.getUserCode() + "_" + authLogin.getChannel() + "_" + authLogin.getOrderType();
71 redisTemplate.opsForValue().set(userKey, JsonUtils.toJsonString(authLogin), 1, TimeUnit.DAYS); 71 redisTemplate.opsForValue().set(userKey, JsonUtils.toJsonString(authLogin), 1, TimeUnit.DAYS);
72 return authUrl; 72 return authUrl;
73 } 73 }
cashier-mall/src/main/resources/com/diligrp/cashier/dao/mapper/MallBizOrderDao.xml
@@ -17,6 +17,7 @@ @@ -17,6 +17,7 @@
17 <result column="shop_name" jdbcType="VARCHAR" property="shopName" /> 17 <result column="shop_name" jdbcType="VARCHAR" property="shopName" />
18 <result column="total_amount" jdbcType="BIGINT" property="totalAmount" /> 18 <result column="total_amount" jdbcType="BIGINT" property="totalAmount" />
19 <result column="freight_fee" jdbcType="BIGINT" property="freightFee" /> 19 <result column="freight_fee" jdbcType="BIGINT" property="freightFee" />
  20 + <result column="discount_fee" jdbcType="BIGINT" property="discountFee" />
20 <result column="state" jdbcType="TINYINT" property="state" /> 21 <result column="state" jdbcType="TINYINT" property="state" />
21 <result column="rtmart_state" jdbcType="TINYINT" property="rtmartState" /> 22 <result column="rtmart_state" jdbcType="TINYINT" property="rtmartState" />
22 <result column="order_time" jdbcType="TIMESTAMP" property="orderTime" /> 23 <result column="order_time" jdbcType="TIMESTAMP" property="orderTime" />
@@ -28,7 +29,7 @@ @@ -28,7 +29,7 @@
28 </resultMap> 29 </resultMap>
29 <sql id="Base_Column_List"> 30 <sql id="Base_Column_List">
30 id, order_no, order_id, trade_id, channel, mch_id, source, order_type, user_code, 31 id, order_no, order_id, trade_id, channel, mch_id, source, order_type, user_code,
31 - username, company_code, shop_code, shop_name, total_amount, freight_fee, state, 32 + username, company_code, shop_code, shop_name, total_amount, freight_fee, discount_fee, state,
32 rtmart_state, order_time, order_expire, version, created_time, modifier_name, modified_time 33 rtmart_state, order_time, order_expire, version, created_time, modifier_name, modified_time
33 </sql> 34 </sql>
34 <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> 35 <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
@@ -47,15 +48,15 @@ @@ -47,15 +48,15 @@
47 source, order_type, user_code, 48 source, order_type, user_code,
48 username, company_code, shop_code, 49 username, company_code, shop_code,
49 shop_name, total_amount, freight_fee, 50 shop_name, total_amount, freight_fee,
50 - state, rtmart_state, order_time,  
51 - order_expire) 51 + discount_fee, state, rtmart_state,
  52 + order_time, order_expire)
52 values (#{id,jdbcType=BIGINT}, #{orderNo,jdbcType=VARCHAR}, #{orderId,jdbcType=VARCHAR}, 53 values (#{id,jdbcType=BIGINT}, #{orderNo,jdbcType=VARCHAR}, #{orderId,jdbcType=VARCHAR},
53 #{tradeId,jdbcType=VARCHAR}, #{channel,jdbcType=VARCHAR}, #{mchId,jdbcType=VARCHAR}, 54 #{tradeId,jdbcType=VARCHAR}, #{channel,jdbcType=VARCHAR}, #{mchId,jdbcType=VARCHAR},
54 #{source,jdbcType=TINYINT}, #{orderType,jdbcType=TINYINT}, #{userCode,jdbcType=VARCHAR}, 55 #{source,jdbcType=TINYINT}, #{orderType,jdbcType=TINYINT}, #{userCode,jdbcType=VARCHAR},
55 #{username,jdbcType=VARCHAR}, #{companyCode,jdbcType=VARCHAR}, #{shopCode,jdbcType=VARCHAR}, 56 #{username,jdbcType=VARCHAR}, #{companyCode,jdbcType=VARCHAR}, #{shopCode,jdbcType=VARCHAR},
56 #{shopName,jdbcType=VARCHAR}, #{totalAmount,jdbcType=BIGINT}, #{freightFee,jdbcType=BIGINT}, 57 #{shopName,jdbcType=VARCHAR}, #{totalAmount,jdbcType=BIGINT}, #{freightFee,jdbcType=BIGINT},
57 - #{state,jdbcType=TINYINT}, #{rtmartState,jdbcType=TINYINT}, #{orderTime,jdbcType=TIMESTAMP},  
58 - #{orderExpire,jdbcType=INTEGER}) 58 + #{discountFee,jdbcType=BIGINT}, #{state,jdbcType=TINYINT}, #{rtmartState,jdbcType=TINYINT},
  59 + #{orderTime,jdbcType=TIMESTAMP}, #{orderExpire,jdbcType=INTEGER})
59 </insert> 60 </insert>
60 <insert id="insertSelective" parameterType="com.diligrp.cashier.mall.model.MallBizOrder"> 61 <insert id="insertSelective" parameterType="com.diligrp.cashier.mall.model.MallBizOrder">
61 insert into mall_biz_order 62 insert into mall_biz_order
@@ -105,6 +106,9 @@ @@ -105,6 +106,9 @@
105 <if test="freightFee != null"> 106 <if test="freightFee != null">
106 freight_fee, 107 freight_fee,
107 </if> 108 </if>
  109 + <if test="discountFee != null">
  110 + discount_fee,
  111 + </if>
108 <if test="state != null"> 112 <if test="state != null">
109 state, 113 state,
110 </if> 114 </if>
@@ -173,6 +177,9 @@ @@ -173,6 +177,9 @@
173 <if test="freightFee != null"> 177 <if test="freightFee != null">
174 #{freightFee,jdbcType=BIGINT}, 178 #{freightFee,jdbcType=BIGINT},
175 </if> 179 </if>
  180 + <if test="discountFee != null">
  181 + #{discountFee,jdbcType=BIGINT},
  182 + </if>
176 <if test="state != null"> 183 <if test="state != null">
177 #{state,jdbcType=TINYINT}, 184 #{state,jdbcType=TINYINT},
178 </if> 185 </if>
@@ -241,6 +248,9 @@ @@ -241,6 +248,9 @@
241 <if test="freightFee != null"> 248 <if test="freightFee != null">
242 freight_fee = #{freightFee,jdbcType=BIGINT}, 249 freight_fee = #{freightFee,jdbcType=BIGINT},
243 </if> 250 </if>
  251 + <if test="discountFee != null">
  252 + discount_fee = #{discountFee,jdbcType=BIGINT},
  253 + </if>
244 <if test="state != null"> 254 <if test="state != null">
245 state = #{state,jdbcType=TINYINT}, 255 state = #{state,jdbcType=TINYINT},
246 </if> 256 </if>
@@ -284,6 +294,7 @@ @@ -284,6 +294,7 @@
284 shop_name = #{shopName,jdbcType=VARCHAR}, 294 shop_name = #{shopName,jdbcType=VARCHAR},
285 total_amount = #{totalAmount,jdbcType=BIGINT}, 295 total_amount = #{totalAmount,jdbcType=BIGINT},
286 freight_fee = #{freightFee,jdbcType=BIGINT}, 296 freight_fee = #{freightFee,jdbcType=BIGINT},
  297 + discount_fee = #{discountFee,jdbcType=BIGINT},
287 state = #{state,jdbcType=TINYINT}, 298 state = #{state,jdbcType=TINYINT},
288 rtmart_state = #{rtmartState,jdbcType=TINYINT}, 299 rtmart_state = #{rtmartState,jdbcType=TINYINT},
289 order_time = #{orderTime,jdbcType=TIMESTAMP}, 300 order_time = #{orderTime,jdbcType=TIMESTAMP},
@@ -298,7 +309,7 @@ @@ -298,7 +309,7 @@
298 source, order_type, user_code, 309 source, order_type, user_code,
299 username, company_code, shop_code, 310 username, company_code, shop_code,
300 shop_name, total_amount, freight_fee, 311 shop_name, total_amount, freight_fee,
301 - order_time, order_expire) 312 + discount_fee, order_time, order_expire)
302 values 313 values
303 <foreach collection="list" item="item" index="index" separator=","> 314 <foreach collection="list" item="item" index="index" separator=",">
304 (#{item.id,jdbcType=BIGINT}, 315 (#{item.id,jdbcType=BIGINT},
@@ -316,6 +327,7 @@ @@ -316,6 +327,7 @@
316 #{item.shopName,jdbcType=VARCHAR}, 327 #{item.shopName,jdbcType=VARCHAR},
317 #{item.totalAmount,jdbcType=BIGINT}, 328 #{item.totalAmount,jdbcType=BIGINT},
318 #{item.freightFee,jdbcType=BIGINT}, 329 #{item.freightFee,jdbcType=BIGINT},
  330 + #{item.discountFee,jdbcType=BIGINT},
319 #{item.orderTime,jdbcType=TIMESTAMP}, 331 #{item.orderTime,jdbcType=TIMESTAMP},
320 #{item.orderExpire,jdbcType=INTEGER}) 332 #{item.orderExpire,jdbcType=INTEGER})
321 </foreach> 333 </foreach>
@@ -351,6 +363,9 @@ @@ -351,6 +363,9 @@
351 <if test="freightFee != null"> 363 <if test="freightFee != null">
352 freight_fee = #{freightFee,jdbcType=BIGINT}, 364 freight_fee = #{freightFee,jdbcType=BIGINT},
353 </if> 365 </if>
  366 + <if test="discountFee != null">
  367 + discount_fee = #{discountFee,jdbcType=BIGINT},
  368 + </if>
354 <if test="state != null"> 369 <if test="state != null">
355 state = #{state,jdbcType=TINYINT}, 370 state = #{state,jdbcType=TINYINT},
356 </if> 371 </if>
cashier-mall/src/main/resources/com/diligrp/cashier/dao/mapper/MallBizOrderItemDao.xml
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
13 <result column="num" jdbcType="INTEGER" property="num" /> 13 <result column="num" jdbcType="INTEGER" property="num" />
14 <result column="price" jdbcType="BIGINT" property="price" /> 14 <result column="price" jdbcType="BIGINT" property="price" />
15 <result column="amount" jdbcType="BIGINT" property="amount" /> 15 <result column="amount" jdbcType="BIGINT" property="amount" />
  16 + <result column="discount_fee" jdbcType="BIGINT" property="discountFee" />
16 <result column="pic" jdbcType="VARCHAR" property="pic" /> 17 <result column="pic" jdbcType="VARCHAR" property="pic" />
17 <result column="tax_output_rate" jdbcType="VARCHAR" property="taxOutputRate" /> 18 <result column="tax_output_rate" jdbcType="VARCHAR" property="taxOutputRate" />
18 <result column="tax_classification_code" jdbcType="VARCHAR" property="taxClassificationCode" /> 19 <result column="tax_classification_code" jdbcType="VARCHAR" property="taxClassificationCode" />
@@ -20,7 +21,8 @@ @@ -20,7 +21,8 @@
20 </resultMap> 21 </resultMap>
21 <sql id="Base_Column_List"> 22 <sql id="Base_Column_List">
22 id, biz_order_id, order_id, sub_order_id, shop_code, shop_name, item_bn, item_name, 23 id, biz_order_id, order_id, sub_order_id, shop_code, shop_name, item_bn, item_name,
23 - num, price, amount, pic, tax_output_rate, tax_classification_code, tax_classification_name 24 + num, price, amount, discount_fee, pic, tax_output_rate,
  25 + tax_classification_code, tax_classification_name
24 </sql> 26 </sql>
25 <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> 27 <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
26 select 28 select
@@ -36,13 +38,13 @@ @@ -36,13 +38,13 @@
36 insert into mall_biz_order_item (id, biz_order_id, order_id, 38 insert into mall_biz_order_item (id, biz_order_id, order_id,
37 sub_order_id, shop_code, shop_name, 39 sub_order_id, shop_code, shop_name,
38 item_bn, item_name, num, 40 item_bn, item_name, num,
39 - price, amount, pic, tax_output_rate, 41 + price, amount, discount_fee, pic, tax_output_rate,
40 tax_classification_code, tax_classification_name 42 tax_classification_code, tax_classification_name
41 ) 43 )
42 values (#{id,jdbcType=BIGINT}, #{bizOrderId,jdbcType=BIGINT}, #{orderId,jdbcType=VARCHAR}, 44 values (#{id,jdbcType=BIGINT}, #{bizOrderId,jdbcType=BIGINT}, #{orderId,jdbcType=VARCHAR},
43 #{subOrderId,jdbcType=VARCHAR}, #{shopCode,jdbcType=VARCHAR}, #{shopName,jdbcType=VARCHAR}, 45 #{subOrderId,jdbcType=VARCHAR}, #{shopCode,jdbcType=VARCHAR}, #{shopName,jdbcType=VARCHAR},
44 #{itemBn,jdbcType=VARCHAR}, #{itemName,jdbcType=VARCHAR}, #{num,jdbcType=INTEGER}, 46 #{itemBn,jdbcType=VARCHAR}, #{itemName,jdbcType=VARCHAR}, #{num,jdbcType=INTEGER},
45 - #{price,jdbcType=BIGINT}, #{amount,jdbcType=BIGINT}, #{pic,jdbcType=VARCHAR}, #{taxOutputRate,jdbcType=VARCHAR}, 47 + #{price,jdbcType=BIGINT}, #{amount,jdbcType=BIGINT}, #{discountFee,jdbcType=BIGINT}, #{pic,jdbcType=VARCHAR}, #{taxOutputRate,jdbcType=VARCHAR},
46 #{taxClassificationCode,jdbcType=VARCHAR}, #{taxClassificationName,jdbcType=VARCHAR} 48 #{taxClassificationCode,jdbcType=VARCHAR}, #{taxClassificationName,jdbcType=VARCHAR}
47 ) 49 )
48 </insert> 50 </insert>
@@ -223,6 +225,7 @@ @@ -223,6 +225,7 @@
223 num, 225 num,
224 price, 226 price,
225 amount, 227 amount,
  228 + discount_fee,
226 pic, 229 pic,
227 tax_output_rate, 230 tax_output_rate,
228 tax_classification_code, 231 tax_classification_code,
@@ -240,6 +243,7 @@ @@ -240,6 +243,7 @@
240 #{item.num,jdbcType=INTEGER}, 243 #{item.num,jdbcType=INTEGER},
241 #{item.price,jdbcType=BIGINT}, 244 #{item.price,jdbcType=BIGINT},
242 #{item.amount,jdbcType=BIGINT}, 245 #{item.amount,jdbcType=BIGINT},
  246 + #{item.discountFee,jdbcType=BIGINT},
243 #{item.pic,jdbcType=VARCHAR}, 247 #{item.pic,jdbcType=VARCHAR},
244 #{item.taxOutputRate,jdbcType=VARCHAR}, 248 #{item.taxOutputRate,jdbcType=VARCHAR},
245 #{item.taxClassificationCode,jdbcType=VARCHAR}, 249 #{item.taxClassificationCode,jdbcType=VARCHAR},