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 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.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
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user