init
This commit is contained in:
@@ -21,4 +21,6 @@ public interface WxTransLogService extends IService<WxTransLog> {
|
|||||||
void consumerSaveLog(Long sponsorUserId, String traceId, User receiveUser);
|
void consumerSaveLog(Long sponsorUserId, String traceId, User receiveUser);
|
||||||
|
|
||||||
void saveLog(Long userId, Integer wxTransNum, WxTransLogCateEnum cateEnum, String traceId, String remark);
|
void saveLog(Long userId, Integer wxTransNum, WxTransLogCateEnum cateEnum, String traceId, String remark);
|
||||||
|
|
||||||
|
void saveLogAdmin(User user, Integer wxTransNum, String traceId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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.account.WxTransLogCateEnum;
|
||||||
import com.ruoyi.xq.enums.common.OrderTypeEnum;
|
import com.ruoyi.xq.enums.common.OrderTypeEnum;
|
||||||
import com.ruoyi.xq.enums.common.SystemConfigEnum;
|
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.consumer.ConsumerTypeEnum;
|
||||||
import com.ruoyi.xq.enums.pay.PayStatusEnum;
|
import com.ruoyi.xq.enums.pay.PayStatusEnum;
|
||||||
import com.ruoyi.xq.enums.pay.PlatformTypeEnum;
|
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.enums.account.WxTransSourceEnum;
|
||||||
import com.ruoyi.xq.manager.OrderNoUtil;
|
import com.ruoyi.xq.manager.OrderNoUtil;
|
||||||
import com.ruoyi.xq.manager.SystemConfigManager;
|
import com.ruoyi.xq.manager.SystemConfigManager;
|
||||||
|
import com.ruoyi.xq.manager.TraceIdManager;
|
||||||
import com.ruoyi.xq.mapper.UserExtendMapper;
|
import com.ruoyi.xq.mapper.UserExtendMapper;
|
||||||
import com.ruoyi.xq.service.*;
|
import com.ruoyi.xq.service.*;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@@ -138,12 +140,16 @@ public class UserExtendServiceImpl extends ServiceImpl<UserExtendMapper,UserExte
|
|||||||
if(user == null){
|
if(user == null){
|
||||||
throw new ServiceException("用户不存在");
|
throw new ServiceException("用户不存在");
|
||||||
}
|
}
|
||||||
|
if(bo.getNumber() == null || bo.getNumber() == 0){
|
||||||
|
throw new ServiceException("请填写微信调整次数");
|
||||||
|
}
|
||||||
boolean wxTransNum = baseMapper.incrWxTransNum(user.getId(), bo.getNumber());
|
boolean wxTransNum = baseMapper.incrWxTransNum(user.getId(), bo.getNumber());
|
||||||
if(!wxTransNum){
|
if(!wxTransNum){
|
||||||
throw new ServiceException("调整失败,请保证调整后交换次数不为负数");
|
throw new ServiceException("调整失败,请保证调整后交换次数不为负数");
|
||||||
}
|
}
|
||||||
BigDecimal price = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.WX_TRANS_PRICE);
|
BigDecimal price = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.WX_TRANS_PRICE);
|
||||||
String orderNo = OrderNoUtil.gen(OrderTypeEnum.WX_TRANS);
|
String orderNo = OrderNoUtil.gen(OrderTypeEnum.WX_TRANS);
|
||||||
|
String traceId = TraceIdManager.gen(TraceIdEnum.WX_TRANS);
|
||||||
WxTransOrder wxTransOrder = new WxTransOrder();
|
WxTransOrder wxTransOrder = new WxTransOrder();
|
||||||
wxTransOrder.setUserId(user.getId());
|
wxTransOrder.setUserId(user.getId());
|
||||||
wxTransOrder.setUsercode(user.getUsercode());
|
wxTransOrder.setUsercode(user.getUsercode());
|
||||||
@@ -155,7 +161,9 @@ public class UserExtendServiceImpl extends ServiceImpl<UserExtendMapper,UserExte
|
|||||||
wxTransOrder.setPayStatus(PayStatusEnum.NO_PAY.getCode());
|
wxTransOrder.setPayStatus(PayStatusEnum.NO_PAY.getCode());
|
||||||
wxTransOrder.setSource(WxTransSourceEnum.ADMIN.getCode());
|
wxTransOrder.setSource(WxTransSourceEnum.ADMIN.getCode());
|
||||||
wxTransOrder.setAdminId(LoginHelper.getUserId());
|
wxTransOrder.setAdminId(LoginHelper.getUserId());
|
||||||
|
wxTransOrder.setTraceId(traceId);
|
||||||
wxTransOrderService.save(wxTransOrder);
|
wxTransOrderService.save(wxTransOrder);
|
||||||
|
wxTransLogService.saveLogAdmin(user, bo.getNumber(),traceId);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -101,4 +101,19 @@ public class WxTransLogServiceImpl extends ServiceImpl<WxTransLogMapper,WxTransL
|
|||||||
wxTransLog.setChangeValue(Long.valueOf(wxTransNum));
|
wxTransLog.setChangeValue(Long.valueOf(wxTransNum));
|
||||||
this.save(wxTransLog);
|
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);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,11 +51,13 @@ public class WxTransOrderServiceImpl extends ServiceImpl<WxTransOrderMapper,WxTr
|
|||||||
public WxTransOrder createWxTransOrder(Long userId, Integer wxTransNum) {
|
public WxTransOrder createWxTransOrder(Long userId, Integer wxTransNum) {
|
||||||
BigDecimal price = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.WX_TRANS_PRICE);
|
BigDecimal price = systemConfigManager.getSystemConfigOfBigDecimal(SystemConfigEnum.WX_TRANS_PRICE);
|
||||||
String orderNo = OrderNoUtil.gen(OrderTypeEnum.WX_TRANS);
|
String orderNo = OrderNoUtil.gen(OrderTypeEnum.WX_TRANS);
|
||||||
|
String traceId = TraceIdManager.gen(TraceIdEnum.WX_TRANS);
|
||||||
User user = userService.getById(userId);
|
User user = userService.getById(userId);
|
||||||
WxTransOrder order = new WxTransOrder();
|
WxTransOrder order = new WxTransOrder();
|
||||||
order.setUserId(user.getId());
|
order.setUserId(user.getId());
|
||||||
order.setUsercode(user.getUsercode());
|
order.setUsercode(user.getUsercode());
|
||||||
order.setWxNum(wxTransNum);
|
order.setWxNum(wxTransNum);
|
||||||
|
order.setTraceId(traceId);
|
||||||
order.setWxPrice(NumberUtil.mul(price,wxTransNum));
|
order.setWxPrice(NumberUtil.mul(price,wxTransNum));
|
||||||
order.setOrderName("微信交换订单");
|
order.setOrderName("微信交换订单");
|
||||||
order.setOrderNo(orderNo);
|
order.setOrderNo(orderNo);
|
||||||
|
|||||||
Reference in New Issue
Block a user