123
This commit is contained in:
@@ -3,8 +3,7 @@ package com.ruoyi.cai.controller.app;
|
||||
import com.ruoyi.cai.dto.ConsumeResp;
|
||||
import com.ruoyi.cai.dto.app.query.GiveGiftRes;
|
||||
import com.ruoyi.cai.dto.app.query.GiveGuardReq;
|
||||
import com.ruoyi.cai.service.GuardTotalService;
|
||||
import com.ruoyi.cai.service.UserGiftService;
|
||||
import com.ruoyi.cai.manager.ConsumerManager;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
@@ -20,21 +19,19 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
public class ConsumeController {
|
||||
|
||||
@Autowired
|
||||
private GuardTotalService guardTotalService;
|
||||
@Autowired
|
||||
private UserGiftService userGiftService;
|
||||
private ConsumerManager consumerManager;
|
||||
|
||||
@PostMapping("/give/guard")
|
||||
@Operation(summary = "赠送主播守护")
|
||||
public R<Boolean> giveGuard(@RequestBody GiveGuardReq query){
|
||||
ConsumeResp resp = guardTotalService.giveGuard(query);
|
||||
ConsumeResp resp = consumerManager.sendGuard(query);
|
||||
return R.ok(resp.isSuccess());
|
||||
}
|
||||
|
||||
@PostMapping("/give/gift")
|
||||
@Operation(summary = "赠送主播礼物")
|
||||
public R<Boolean> giveGift(@RequestBody GiveGiftRes query){
|
||||
ConsumeResp resp = userGiftService.giveGift(query);
|
||||
ConsumeResp resp = consumerManager.sendGift(query);
|
||||
return R.ok(resp.isSuccess());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.cai.manager;
|
||||
|
||||
import com.ruoyi.cai.dto.ConsumeResp;
|
||||
import com.ruoyi.cai.dto.app.query.GiveGiftRes;
|
||||
import com.ruoyi.cai.dto.app.query.GiveGuardReq;
|
||||
import com.ruoyi.cai.mq.AmqpProducer;
|
||||
import com.ruoyi.cai.service.GuardTotalService;
|
||||
import com.ruoyi.cai.service.RechargeOrderService;
|
||||
import com.ruoyi.cai.service.UserGiftService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
@Slf4j
|
||||
public class ConsumerManager {
|
||||
@Autowired
|
||||
private GuardTotalService guardTotalService;
|
||||
@Autowired
|
||||
private UserGiftService userGiftService;
|
||||
@Autowired
|
||||
private AmqpProducer amqpProducer;
|
||||
@Autowired
|
||||
private RechargeOrderService rechargeOrderService;
|
||||
|
||||
public ConsumeResp sendGuard(GiveGuardReq query){
|
||||
ConsumeResp resp = guardTotalService.giveGuard(query);
|
||||
if(resp.isSuccess()){
|
||||
try {
|
||||
amqpProducer.sendCalculateSales(resp.getConsumeLogId()+"");
|
||||
}catch (Exception e){
|
||||
log.error("RabbitMq 发送失败, 守护分销流程流转失败!",e);
|
||||
}
|
||||
}
|
||||
return resp;
|
||||
}
|
||||
|
||||
public ConsumeResp sendGift(GiveGiftRes query){
|
||||
ConsumeResp resp = userGiftService.giveGift(query);
|
||||
if(resp.isSuccess()){
|
||||
try {
|
||||
amqpProducer.sendCalculateSales(resp.getConsumeLogId()+"");
|
||||
}catch (Exception e){
|
||||
log.error("RabbitMq 发送失败, 礼物分销流程流转失败!",e);
|
||||
}
|
||||
}
|
||||
return resp;
|
||||
}
|
||||
|
||||
public ConsumeResp rechargeOrderSuccess(String tradeNo){
|
||||
ConsumeResp resp = rechargeOrderService.orderSuccess(tradeNo);
|
||||
if(resp.isSuccess()){
|
||||
try {
|
||||
amqpProducer.sendCalculateSales(resp.getConsumeLogId()+"");
|
||||
}catch (Exception e){
|
||||
log.error("RabbitMq 发送失败, 充值分销流程流转失败!",e);
|
||||
}
|
||||
}
|
||||
return resp;
|
||||
}
|
||||
}
|
||||
@@ -13,7 +13,6 @@ public class AmqpProducer {
|
||||
rabbitTemplate.convertAndSend(AmqpConsumer.CALCULATE_SALES_EXCHANGE, AmqpConsumer.CALCULATE_SALES_KEY, message);
|
||||
}
|
||||
|
||||
|
||||
public void sendCheckTimeOut(String message,Integer timeout){
|
||||
rabbitTemplate.convertAndSend(CheckTimeOutMqConfig.EXCHANGE_NAME,
|
||||
CheckTimeOutMqConfig.ROUTING_KEY,
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.RechargeOrder;
|
||||
import com.ruoyi.cai.dto.AddRechargeOrderAdminDto;
|
||||
import com.ruoyi.cai.dto.AddRechargeOrderDto;
|
||||
import com.ruoyi.cai.dto.ConsumeResp;
|
||||
import com.ruoyi.cai.dto.admin.vo.RechargeOrderAdminVo;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -23,8 +24,7 @@ public interface RechargeOrderService extends IService<RechargeOrder> {
|
||||
|
||||
RechargeOrder addRechargeOrder(AddRechargeOrderDto addRechargeOrderDto);
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
void orderSuccess(String orderNo);
|
||||
ConsumeResp orderSuccess(String orderNo);
|
||||
|
||||
RechargeOrder updateAdminRechargeOrder(AddRechargeOrderAdminDto dto);
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ruoyi.cai.domain.*;
|
||||
import com.ruoyi.cai.dto.AddRechargeOrderAdminDto;
|
||||
import com.ruoyi.cai.dto.AddRechargeOrderDto;
|
||||
import com.ruoyi.cai.dto.ConsumeResp;
|
||||
import com.ruoyi.cai.dto.admin.vo.RechargeOrderAdminVo;
|
||||
import com.ruoyi.cai.enums.AccountBusinessEnum;
|
||||
import com.ruoyi.cai.enums.AccountChangeEnum;
|
||||
@@ -88,7 +89,7 @@ public class RechargeOrderServiceImpl extends ServiceImpl<RechargeOrderMapper,Re
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void orderSuccess(String orderNo){
|
||||
public ConsumeResp orderSuccess(String orderNo){
|
||||
RechargeOrder rechargeOrder = this.getByOrderNo(orderNo);
|
||||
if(rechargeOrder == null){
|
||||
throw new ServiceException("订单不存在");
|
||||
@@ -114,6 +115,10 @@ public class RechargeOrderServiceImpl extends ServiceImpl<RechargeOrderMapper,Re
|
||||
consumeLog.setType(ConsumeLogType.RECHARGE.getCode());
|
||||
consumeLog.setAmount(rechargeOrder.getRechargeCoin());
|
||||
accountService.recharge(consumeLog);
|
||||
ConsumeResp resp = new ConsumeResp();
|
||||
resp.setSuccess(true);
|
||||
resp.setConsumeLogId(consumeLog.getId());
|
||||
return resp;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user