优化
This commit is contained in:
@ -10,18 +10,16 @@ import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderRespDTO;
|
||||
import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundRespDTO;
|
||||
import cn.iocoder.yudao.framework.pay.core.enums.divide.PayDivideRefundStatusRespEnum;
|
||||
import cn.iocoder.yudao.framework.pay.core.enums.refund.PayRefundStatusRespEnum;
|
||||
import cn.iocoder.yudao.module.member.api.card.CardApi;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.notify.vo.PayNotifyTaskDetailRespVO;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.notify.vo.PayNotifyTaskPageReqVO;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.notify.vo.PayNotifyTaskRespVO;
|
||||
import cn.iocoder.yudao.module.pay.convert.notify.PayNotifyTaskConvert;
|
||||
import cn.iocoder.yudao.module.pay.dal.dataobject.app.PayAppDO;
|
||||
import cn.iocoder.yudao.module.pay.dal.dataobject.divide.DivideDO;
|
||||
import cn.iocoder.yudao.module.pay.dal.dataobject.notify.PayNotifyLogDO;
|
||||
import cn.iocoder.yudao.module.pay.dal.dataobject.notify.PayNotifyTaskDO;
|
||||
import cn.iocoder.yudao.module.pay.dal.dataobject.refundrecord.RefundRecordDO;
|
||||
import cn.iocoder.yudao.module.pay.dal.dataobject.wxorder.WxOrderDO;
|
||||
import cn.iocoder.yudao.module.pay.dal.dataobject.wxrefund.WxRefundDO;
|
||||
import cn.iocoder.yudao.module.pay.dal.mysql.refundrecord.RefundRecordMapper;
|
||||
import cn.iocoder.yudao.module.pay.dal.mysql.wxorder.WxOrderMapper;
|
||||
import cn.iocoder.yudao.module.pay.dal.mysql.wxrefund.WxRefundMapper;
|
||||
import cn.iocoder.yudao.module.pay.service.app.PayAppService;
|
||||
@ -51,7 +49,7 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
import javax.annotation.Resource;
|
||||
import javax.annotation.security.PermitAll;
|
||||
import javax.validation.Valid;
|
||||
import java.util.ArrayList;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -87,6 +85,8 @@ public class PayNotifyController {
|
||||
private WxOrderMapper wxOrderMapper;
|
||||
@Resource
|
||||
private StringRedisTemplate notifyRedisTemplate;
|
||||
@Resource
|
||||
private CardApi cardApi;
|
||||
|
||||
@PostMapping(value = "/order/{channelId}")
|
||||
@Operation(summary = "支付渠道的统一【支付】回调")
|
||||
@ -106,6 +106,11 @@ public class PayNotifyController {
|
||||
// 2. 解析通知数据
|
||||
PayOrderRespDTO notify = payClient.parseOrderNotify(params, body);
|
||||
orderService.notifyOrder(channelId, notify);
|
||||
String re = notifyRedisTemplate.opsForValue().get("ADD" + notify.getOutTradeNo());
|
||||
if(StringUtils.isNotBlank(re)){
|
||||
cardApi.recharge(new BigDecimal(re));
|
||||
notifyRedisTemplate.delete("ADD" + notify.getOutTradeNo());
|
||||
}
|
||||
return "success";
|
||||
}
|
||||
|
||||
|
@ -10,11 +10,9 @@ import cn.iocoder.yudao.framework.common.util.number.MoneyUtils;
|
||||
import cn.iocoder.yudao.framework.pay.core.client.PayClient;
|
||||
import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderRespDTO;
|
||||
import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedReqDTO;
|
||||
import cn.iocoder.yudao.framework.pay.core.enums.divide.PayDivideStatusRespEnum;
|
||||
import cn.iocoder.yudao.framework.pay.core.enums.order.PayOrderStatusRespEnum;
|
||||
import cn.iocoder.yudao.framework.tenant.core.util.TenantUtils;
|
||||
import cn.iocoder.yudao.module.pay.api.order.dto.PayOrderCreateReqDTO;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.divide.vo.DivideSaveReqVO;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.order.vo.PayOrderExportReqVO;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.order.vo.PayOrderPageReqVO;
|
||||
import cn.iocoder.yudao.module.pay.controller.admin.order.vo.PayOrderSubmitReqVO;
|
||||
@ -38,6 +36,7 @@ import cn.iocoder.yudao.module.pay.service.notify.PayNotifyService;
|
||||
import cn.iocoder.yudao.module.pay.service.wxorder.WxOrderService;
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
@ -86,6 +85,9 @@ public class PayOrderServiceImpl implements PayOrderService {
|
||||
@Resource
|
||||
private WxOrderService wxOrderService;
|
||||
|
||||
@Resource
|
||||
private StringRedisTemplate payRedis;
|
||||
|
||||
|
||||
@Override
|
||||
public PayOrderDO getOrder(Long id) {
|
||||
@ -315,6 +317,8 @@ public class PayOrderServiceImpl implements PayOrderService {
|
||||
// .setChannelUserId(payOrderDO.getChannelUserId());
|
||||
// divideService.createDivide(divideSaveReqVO);
|
||||
|
||||
payRedis.opsForValue().set("ADD"+payOrderDO.getNo(),payOrderDO.getPrice().toString());
|
||||
|
||||
WxOrderSaveReqVO wxOrderSaveReqVO = new WxOrderSaveReqVO();
|
||||
wxOrderSaveReqVO.setChannelId(channel.getId())
|
||||
.setChannelCode(channel.getCode())
|
||||
|
Reference in New Issue
Block a user