|
|
@@ -11,9 +11,11 @@ import com.sqx.modules.app.dao.UserMoneyDao;
|
|
|
import com.sqx.modules.app.dao.UserMoneyDetailsDao;
|
|
|
import com.sqx.modules.app.dao.UserVipDao;
|
|
|
import com.sqx.modules.app.dao.VipDetailsDao;
|
|
|
+import com.sqx.modules.app.entity.RechargeRecord;
|
|
|
import com.sqx.modules.app.entity.UserEntity;
|
|
|
import com.sqx.modules.app.entity.UserMoney;
|
|
|
import com.sqx.modules.app.entity.UserMoneyDetails;
|
|
|
+import com.sqx.modules.app.service.RechargeRecordService;
|
|
|
import com.sqx.modules.app.service.UserMoneyDetailsService;
|
|
|
import com.sqx.modules.app.service.UserMoneyService;
|
|
|
import com.sqx.modules.common.entity.CommonInfo;
|
|
|
@@ -48,6 +50,8 @@ public class UserMoneyServiceImpl extends ServiceImpl<UserMoneyDao, UserMoney> i
|
|
|
private UserMoneyDetailsService userMoneyDetailsService;
|
|
|
@Autowired
|
|
|
private CommonInfoService commonInfoService;
|
|
|
+ @Autowired
|
|
|
+ private RechargeRecordService rechargeRecordService;
|
|
|
|
|
|
@Override
|
|
|
public void updateMoney(int i, Long userId, double money) {
|
|
|
@@ -57,8 +61,8 @@ public class UserMoneyServiceImpl extends ServiceImpl<UserMoneyDao, UserMoney> i
|
|
|
@Override
|
|
|
public UserMoney selectUserMoneyByUserId(Long userId) {
|
|
|
UserMoney userMoney = baseMapper.selectOne(new QueryWrapper<UserMoney>().eq("user_id", userId));
|
|
|
- if(userMoney==null){
|
|
|
- userMoney=new UserMoney();
|
|
|
+ if (userMoney == null) {
|
|
|
+ userMoney = new UserMoney();
|
|
|
userMoney.setUserId(userId);
|
|
|
userMoney.setMoney(BigDecimal.ZERO);
|
|
|
baseMapper.insert(userMoney);
|
|
|
@@ -78,7 +82,7 @@ public class UserMoneyServiceImpl extends ServiceImpl<UserMoneyDao, UserMoney> i
|
|
|
//余额明细
|
|
|
Page<UserMoneyDetails> pages = new Page<>(page, limit);
|
|
|
PageUtils pageUtils = new PageUtils(userMoneyDetailsDao.selectUserMoneyDetails(pages, userId, classify));
|
|
|
- return Result.success().put("data",pageUtils);
|
|
|
+ return Result.success().put("data", pageUtils);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -88,28 +92,76 @@ public class UserMoneyServiceImpl extends ServiceImpl<UserMoneyDao, UserMoney> i
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public Result addUserMoney(Long userId, BigDecimal money, Integer type) {
|
|
|
+ public Result addUserMoney(Long userId, BigDecimal money, Integer type, String account, String remark) {
|
|
|
+ log.info("充值记录参数;userId:"+userId+"money:"+money+"type:"+type+"account:"+account+"remark:"+remark);
|
|
|
+
|
|
|
+ if(account == null){
|
|
|
+ return Result.error("充值账号不能为空");
|
|
|
+ }
|
|
|
+
|
|
|
+ if (type.equals(2) && money.signum() == -1) {
|
|
|
+ return Result.error("金额输入框请勿填充负号");
|
|
|
+ }
|
|
|
+
|
|
|
+ //获取用户信息
|
|
|
+ UserEntity userInfo = userDao.selectUserById(userId);
|
|
|
+ if (userInfo == null) {
|
|
|
+ return Result.error("用户失效,操作失败");
|
|
|
+ }
|
|
|
+
|
|
|
+ UserMoney um = userMoneyDao.selectMoney(userId);
|
|
|
+ BigDecimal oldMoney = BigDecimal.ZERO;
|
|
|
+ if (um != null) {
|
|
|
+ oldMoney = um.getMoney() != null ? um.getMoney() : BigDecimal.ZERO;
|
|
|
+ }
|
|
|
+
|
|
|
userMoneyDao.addUserMoney(userId, money, type);
|
|
|
UserMoneyDetails userMoneyDetails = new UserMoneyDetails();
|
|
|
userMoneyDetails.setMoney(money);
|
|
|
userMoneyDetails.setUserId(userId);
|
|
|
- if(type.equals(1)){
|
|
|
- userMoneyDetails.setContent("赠送用户余额:"+money+"元");
|
|
|
+ if (type.equals(1)) {
|
|
|
+ userMoneyDetails.setContent("赠送用户余额:" + money + "元");
|
|
|
userMoneyDetails.setTitle("系统赠送用户余额");
|
|
|
- }else if(type.equals(2)){
|
|
|
- userMoneyDetails.setContent("扣除用户余额:"+money+"元");
|
|
|
+ } else if (type.equals(2)) {
|
|
|
+ userMoneyDetails.setContent("扣除用户余额:" + money + "元");
|
|
|
userMoneyDetails.setTitle("系统扣除用户余额");
|
|
|
}
|
|
|
userMoneyDetails.setType(type);
|
|
|
userMoneyDetails.setClassify(3);
|
|
|
userMoneyDetails.setState(2);
|
|
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
- userMoneyDetails.setCreateTime(simpleDateFormat.format(new Date()));
|
|
|
+ String ct = simpleDateFormat.format(new Date());
|
|
|
+ userMoneyDetails.setCreateTime(ct);
|
|
|
userMoneyDetailsService.save(userMoneyDetails);
|
|
|
|
|
|
+ //region 添加充值记录 将充值人和被充值手机号填进去
|
|
|
+ RechargeRecord rr = new RechargeRecord();
|
|
|
+ rr.setUserId(userInfo.getUserId());
|
|
|
+ String orderNo = getGeneralOrder();//订单号
|
|
|
+ rr.setOrderNo(orderNo);
|
|
|
+ String RechargeAmount = type.equals(1) ? "+" + money.doubleValue() : "-" + money.doubleValue();//充值金额
|
|
|
+ rr.setAmount(RechargeAmount);
|
|
|
+ rr.setOldMoney(oldMoney);//充值前余额 oldMoney
|
|
|
+ BigDecimal balance = type.equals(1) ? oldMoney.add(money) : (oldMoney.subtract(money).signum() == -1 ? BigDecimal.ZERO : (oldMoney.subtract(money))); //充值后余额
|
|
|
+ rr.setBalance(balance);
|
|
|
+ rr.setUserPhone(userInfo.getPhone());//手机号
|
|
|
+ rr.setUserName(userInfo.getUserName());//用户名称
|
|
|
+ rr.setUserNick(userInfo.getNickName());//昵称
|
|
|
+ rr.setUserAvatar(userInfo.getAvatar());//头像
|
|
|
+ //充值时间ct
|
|
|
+ rr.setCreateTime(ct);
|
|
|
+ rr.setUpdateTime(ct);
|
|
|
+ rr.setAccount(account);//充值人账号 account
|
|
|
+ if(remark != null){
|
|
|
+ rr.setRemark(remark);
|
|
|
+ }
|
|
|
+
|
|
|
+ rechargeRecordService.insertRechargeRecord(rr);
|
|
|
+ //endregion
|
|
|
+
|
|
|
// 发送通知
|
|
|
try {
|
|
|
- if(type.equals(1)) {
|
|
|
+ if (type.equals(1)) {
|
|
|
UserEntity userEntity = userDao.selectById(userId);
|
|
|
List<String> msgList = new ArrayList<>();
|
|
|
msgList.add(userEntity.getUserName());
|
|
|
@@ -126,19 +178,27 @@ public class UserMoneyServiceImpl extends ServiceImpl<UserMoneyDao, UserMoney> i
|
|
|
return Result.success();
|
|
|
}
|
|
|
|
|
|
+ public String getGeneralOrder() {
|
|
|
+ Date date = new Date();
|
|
|
+ String newString = String.format("%0" + 4 + "d", (int) ((Math.random() * 9 + 1) * 1000));
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
|
|
|
+ String format = sdf.format(date);
|
|
|
+ return format + newString;
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public Result updateUserBalance(Long userId, BigDecimal money, Integer type) {
|
|
|
userMoneyDao.updateUserBalance(userId, money, type);
|
|
|
|
|
|
//将接单明细添加到钱包明细表里
|
|
|
- UserMoneyDetails userMoneyDetails=new UserMoneyDetails();
|
|
|
+ UserMoneyDetails userMoneyDetails = new UserMoneyDetails();
|
|
|
userMoneyDetails.setMoney(money);
|
|
|
userMoneyDetails.setUserId(userId);
|
|
|
- if(type.equals(1)){
|
|
|
- userMoneyDetails.setContent("赠送骑手余额:"+money+"元");
|
|
|
+ if (type.equals(1)) {
|
|
|
+ userMoneyDetails.setContent("赠送骑手余额:" + money + "元");
|
|
|
userMoneyDetails.setTitle("系统赠送骑手余额");
|
|
|
- }else if(type.equals(2)){
|
|
|
- userMoneyDetails.setContent("扣除骑手余额:"+money+"元");
|
|
|
+ } else if (type.equals(2)) {
|
|
|
+ userMoneyDetails.setContent("扣除骑手余额:" + money + "元");
|
|
|
userMoneyDetails.setTitle("系统扣除骑手余额");
|
|
|
}
|
|
|
userMoneyDetails.setType(type);
|
|
|
@@ -157,11 +217,11 @@ public class UserMoneyServiceImpl extends ServiceImpl<UserMoneyDao, UserMoney> i
|
|
|
UserMoneyDetails userMoneyDetails = new UserMoneyDetails();
|
|
|
userMoneyDetails.setMoney(money);
|
|
|
userMoneyDetails.setUserId(userId);
|
|
|
- if(type.equals(1)){
|
|
|
- userMoneyDetails.setContent("赠送用户保证金:"+money+"元");
|
|
|
+ if (type.equals(1)) {
|
|
|
+ userMoneyDetails.setContent("赠送用户保证金:" + money + "元");
|
|
|
userMoneyDetails.setTitle("系统赠送用户保证金");
|
|
|
- }else if(type.equals(2)){
|
|
|
- userMoneyDetails.setContent("扣除用户保证金:"+money+"元");
|
|
|
+ } else if (type.equals(2)) {
|
|
|
+ userMoneyDetails.setContent("扣除用户保证金:" + money + "元");
|
|
|
userMoneyDetails.setTitle("系统扣除用户保证金");
|
|
|
}
|
|
|
userMoneyDetails.setType(type);
|
|
|
@@ -214,9 +274,9 @@ public class UserMoneyServiceImpl extends ServiceImpl<UserMoneyDao, UserMoney> i
|
|
|
//设置收益人
|
|
|
userMoneyDetails.setUserId(user.getUserId());
|
|
|
//设置购买人
|
|
|
- // userMoneyDetails.setByUserId(userId);
|
|
|
+ // userMoneyDetails.setByUserId(userId);
|
|
|
//设置类型
|
|
|
- // userMoneyDetails.setClassify(2);
|
|
|
+ // userMoneyDetails.setClassify(2);
|
|
|
//设置title
|
|
|
userMoneyDetails.setTitle("购买会员");
|
|
|
//设置创建时间
|