This commit is contained in:
77
2024-03-25 22:59:37 +08:00
parent 65aaaf39c8
commit 7d6bf7e2e2
4 changed files with 27 additions and 0 deletions

View File

@@ -21,4 +21,6 @@ public interface WxTransLogService extends IService<WxTransLog> {
void consumerSaveLog(Long sponsorUserId, String traceId, User receiveUser);
void saveLog(Long userId, Integer wxTransNum, WxTransLogCateEnum cateEnum, String traceId, String remark);
void saveLogAdmin(User user, Integer wxTransNum, String traceId);
}

View File

@@ -17,6 +17,7 @@ import com.ruoyi.xq.dto.admin.user.req.UpdateWxTransNumReq;
import com.ruoyi.xq.enums.account.WxTransLogCateEnum;
import com.ruoyi.xq.enums.common.OrderTypeEnum;
import com.ruoyi.xq.enums.common.SystemConfigEnum;
import com.ruoyi.xq.enums.common.TraceIdEnum;
import com.ruoyi.xq.enums.consumer.ConsumerTypeEnum;
import com.ruoyi.xq.enums.pay.PayStatusEnum;
import com.ruoyi.xq.enums.pay.PlatformTypeEnum;
@@ -24,6 +25,7 @@ import com.ruoyi.xq.enums.user.AccountChangeCodeEnum;
import com.ruoyi.xq.enums.account.WxTransSourceEnum;
import com.ruoyi.xq.manager.OrderNoUtil;
import com.ruoyi.xq.manager.SystemConfigManager;
import com.ruoyi.xq.manager.TraceIdManager;
import com.ruoyi.xq.mapper.UserExtendMapper;
import com.ruoyi.xq.service.*;
import lombok.RequiredArgsConstructor;
@@ -138,12 +140,16 @@ public class UserExtendServiceImpl extends ServiceImpl<UserExtendMapper,UserExte
if(user == null){
throw new ServiceException("用户不存在");
}
if(bo.getNumber() == null || bo.getNumber() == 0){
throw new ServiceException("请填写微信调整次数");
}
boolean wxTransNum = baseMapper.incrWxTransNum(user.getId(), bo.getNumber());
if(!wxTransNum){
throw new ServiceException("调整失败,请保证调整后交换次数不为负数");
}
BigDecimal price = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.WX_TRANS_PRICE);
String orderNo = OrderNoUtil.gen(OrderTypeEnum.WX_TRANS);
String traceId = TraceIdManager.gen(TraceIdEnum.WX_TRANS);
WxTransOrder wxTransOrder = new WxTransOrder();
wxTransOrder.setUserId(user.getId());
wxTransOrder.setUsercode(user.getUsercode());
@@ -155,7 +161,9 @@ public class UserExtendServiceImpl extends ServiceImpl<UserExtendMapper,UserExte
wxTransOrder.setPayStatus(PayStatusEnum.NO_PAY.getCode());
wxTransOrder.setSource(WxTransSourceEnum.ADMIN.getCode());
wxTransOrder.setAdminId(LoginHelper.getUserId());
wxTransOrder.setTraceId(traceId);
wxTransOrderService.save(wxTransOrder);
wxTransLogService.saveLogAdmin(user, bo.getNumber(),traceId);
}
@Override

View File

@@ -101,4 +101,19 @@ public class WxTransLogServiceImpl extends ServiceImpl<WxTransLogMapper,WxTransL
wxTransLog.setChangeValue(Long.valueOf(wxTransNum));
this.save(wxTransLog);
}
@Override
public void saveLogAdmin(User user, Integer wxTransNum, String traceId) {
WxTransLog wxTransLog = new WxTransLog();
wxTransLog.setUserId(user.getId());
wxTransLog.setUsercode(user.getUsercode());
wxTransLog.setTraceId(traceId);
wxTransLog.setCateId(WxTransLogCateEnum.SYSTEM.getCode());
wxTransLog.setCateName(WxTransLogCateEnum.SYSTEM.getText());
String a = wxTransNum>0?"新增":"减小";
String remark = String.format("系统调账%s%s个微信交换", a, Math.abs(wxTransNum));
wxTransLog.setRemark(remark);
wxTransLog.setChangeValue(Long.valueOf(wxTransNum));
this.save(wxTransLog);
}
}

View File

@@ -51,11 +51,13 @@ public class WxTransOrderServiceImpl extends ServiceImpl<WxTransOrderMapper,WxTr
public WxTransOrder createWxTransOrder(Long userId, Integer wxTransNum) {
BigDecimal price = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.WX_TRANS_PRICE);
String orderNo = OrderNoUtil.gen(OrderTypeEnum.WX_TRANS);
String traceId = TraceIdManager.gen(TraceIdEnum.WX_TRANS);
User user = userService.getById(userId);
WxTransOrder order = new WxTransOrder();
order.setUserId(user.getId());
order.setUsercode(user.getUsercode());
order.setWxNum(wxTransNum);
order.setTraceId(traceId);
order.setWxPrice(NumberUtil.mul(price,wxTransNum));
order.setOrderName("微信交换订单");
order.setOrderNo(orderNo);