mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-05-15 23:38:32 +08:00
修改创建会员逻辑,在创建时不创建会员钱包,后管充值的时候找不到则创建
This commit is contained in:
@@ -160,10 +160,10 @@ public class MemberService {
|
|||||||
memberBasicInfo.setOpenId(openId);
|
memberBasicInfo.setOpenId(openId);
|
||||||
|
|
||||||
// 首次新建会员,同时新建会员钱包
|
// 首次新建会员,同时新建会员钱包
|
||||||
MemberWalletInfo memberWalletInfo = MemberWalletInfo.builder().memberId(memberId).build();
|
// MemberWalletInfo memberWalletInfo = MemberWalletInfo.builder().memberId(memberId).build();
|
||||||
MemberTransactionDTO memberTransactionDTO = MemberTransactionDTO.builder()
|
MemberTransactionDTO memberTransactionDTO = MemberTransactionDTO.builder()
|
||||||
.memberBasicInfo(memberBasicInfo)
|
.memberBasicInfo(memberBasicInfo)
|
||||||
.memberWalletInfo(memberWalletInfo)
|
// .memberWalletInfo(memberWalletInfo)
|
||||||
.build();
|
.build();
|
||||||
transactionService.createMember(memberTransactionDTO);
|
transactionService.createMember(memberTransactionDTO);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -56,5 +56,11 @@ public interface MemberWalletInfoMapper {
|
|||||||
|
|
||||||
// MemberWalletInfo selectByMemberId(String memberId);
|
// MemberWalletInfo selectByMemberId(String memberId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据会员id和目标运营商id查询用户钱包信息
|
||||||
|
* @param memberId
|
||||||
|
* @param merchantId
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
MemberWalletInfo selectByMemberId(@Param("memberId") String memberId, @Param("merchantId") String merchantId);
|
MemberWalletInfo selectByMemberId(@Param("memberId") String memberId, @Param("merchantId") String merchantId);
|
||||||
}
|
}
|
||||||
@@ -8,6 +8,7 @@ import com.jsowell.common.core.redis.RedisCache;
|
|||||||
import com.jsowell.common.enums.MemberWalletEnum;
|
import com.jsowell.common.enums.MemberWalletEnum;
|
||||||
import com.jsowell.common.util.DateUtils;
|
import com.jsowell.common.util.DateUtils;
|
||||||
import com.jsowell.common.util.StringUtils;
|
import com.jsowell.common.util.StringUtils;
|
||||||
|
import com.jsowell.common.util.id.IdUtils;
|
||||||
import com.jsowell.pile.domain.MemberBasicInfo;
|
import com.jsowell.pile.domain.MemberBasicInfo;
|
||||||
import com.jsowell.pile.domain.MemberPlateNumberRelation;
|
import com.jsowell.pile.domain.MemberPlateNumberRelation;
|
||||||
import com.jsowell.pile.domain.MemberWalletInfo;
|
import com.jsowell.pile.domain.MemberWalletInfo;
|
||||||
@@ -17,7 +18,6 @@ import com.jsowell.pile.dto.QueryMemberInfoDTO;
|
|||||||
import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
|
import com.jsowell.pile.dto.UniAppQueryMemberBalanceDTO;
|
||||||
import com.jsowell.pile.mapper.MemberBasicInfoMapper;
|
import com.jsowell.pile.mapper.MemberBasicInfoMapper;
|
||||||
import com.jsowell.pile.mapper.MemberPlateNumberRelationMapper;
|
import com.jsowell.pile.mapper.MemberPlateNumberRelationMapper;
|
||||||
import com.jsowell.pile.mapper.MemberWalletInfoMapper;
|
|
||||||
import com.jsowell.pile.mapper.MemberWalletLogMapper;
|
import com.jsowell.pile.mapper.MemberWalletLogMapper;
|
||||||
import com.jsowell.pile.service.*;
|
import com.jsowell.pile.service.*;
|
||||||
import com.jsowell.pile.util.UserUtils;
|
import com.jsowell.pile.util.UserUtils;
|
||||||
@@ -49,8 +49,11 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private MemberBasicInfoMapper memberBasicInfoMapper;
|
private MemberBasicInfoMapper memberBasicInfoMapper;
|
||||||
|
|
||||||
|
// @Autowired
|
||||||
|
// private MemberWalletInfoMapper memberWalletInfoMapper;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private MemberWalletInfoMapper memberWalletInfoMapper;
|
private MemberWalletInfoService memberWalletInfoService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private MemberWalletLogMapper memberWalletLogMapper;
|
private MemberWalletLogMapper memberWalletLogMapper;
|
||||||
@@ -178,10 +181,19 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
|||||||
BigDecimal updatePrincipalBalance = dto.getUpdatePrincipalBalance();
|
BigDecimal updatePrincipalBalance = dto.getUpdatePrincipalBalance();
|
||||||
log.info("修改用户余额 memberId:{}, updatePrincipalBalance:{}, updateGiftBalance:{}", memberId, updatePrincipalBalance, updateGiftBalance);
|
log.info("修改用户余额 memberId:{}, updatePrincipalBalance:{}, updateGiftBalance:{}", memberId, updatePrincipalBalance, updateGiftBalance);
|
||||||
// 查询用户余额
|
// 查询用户余额
|
||||||
MemberWalletInfo info = memberWalletInfoMapper.selectByMemberId(memberId, dto.getMerchantId());
|
MemberWalletInfo walletInfo = memberWalletInfoService.selectByMemberId(memberId, dto.getTargetMerchantId());
|
||||||
if (info == null) {
|
if (walletInfo == null) {
|
||||||
log.warn("根据会员id:{}, 查询会员信息为空", memberId);
|
log.warn("根据会员id:{}, 目标运营商id:{}, 查询会员信息为空, 新建会员钱包", memberId, dto.getTargetMerchantId());
|
||||||
return 0;
|
// 如果查询到钱包为空,就新建一个该运营商的钱包
|
||||||
|
walletInfo = MemberWalletInfo.builder()
|
||||||
|
.walletCode(IdUtils.fastSimpleUUID())
|
||||||
|
.memberId(memberId)
|
||||||
|
.merchantId(dto.getTargetMerchantId())
|
||||||
|
.giftBalance(BigDecimal.ZERO)
|
||||||
|
.principalBalance(BigDecimal.ZERO)
|
||||||
|
.version(0)
|
||||||
|
.build();
|
||||||
|
memberWalletInfoService.insertSelective(walletInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 记录流水
|
// 记录流水
|
||||||
@@ -197,9 +209,9 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
|||||||
updatePrincipalBalance = updatePrincipalBalance.negate();
|
updatePrincipalBalance = updatePrincipalBalance.negate();
|
||||||
}
|
}
|
||||||
// 会员老的余额
|
// 会员老的余额
|
||||||
BigDecimal oldPrincipalBalance = info.getPrincipalBalance() == null
|
BigDecimal oldPrincipalBalance = walletInfo.getPrincipalBalance() == null
|
||||||
? BigDecimal.ZERO
|
? BigDecimal.ZERO
|
||||||
: info.getPrincipalBalance();
|
: walletInfo.getPrincipalBalance();
|
||||||
newPrincipalBalance = oldPrincipalBalance.add(updatePrincipalBalance);
|
newPrincipalBalance = oldPrincipalBalance.add(updatePrincipalBalance);
|
||||||
if (newPrincipalBalance.compareTo(BigDecimal.ZERO) < 0) {
|
if (newPrincipalBalance.compareTo(BigDecimal.ZERO) < 0) {
|
||||||
log.warn("变更后本金余额不能为负数");
|
log.warn("变更后本金余额不能为负数");
|
||||||
@@ -225,9 +237,9 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
|||||||
// 扣款 转为负数
|
// 扣款 转为负数
|
||||||
updateGiftBalance = updateGiftBalance.negate();
|
updateGiftBalance = updateGiftBalance.negate();
|
||||||
}
|
}
|
||||||
BigDecimal oldGiftBalance = info.getGiftBalance() == null
|
BigDecimal oldGiftBalance = walletInfo.getGiftBalance() == null
|
||||||
? BigDecimal.ZERO
|
? BigDecimal.ZERO
|
||||||
: info.getGiftBalance();
|
: walletInfo.getGiftBalance();
|
||||||
newGiftBalance = oldGiftBalance.add(updateGiftBalance);
|
newGiftBalance = oldGiftBalance.add(updateGiftBalance);
|
||||||
// 余额不能为负数
|
// 余额不能为负数
|
||||||
if (newGiftBalance.compareTo(BigDecimal.ZERO) < 0) {
|
if (newGiftBalance.compareTo(BigDecimal.ZERO) < 0) {
|
||||||
@@ -251,7 +263,7 @@ public class MemberBasicInfoServiceImpl implements IMemberBasicInfoService {
|
|||||||
// 修改数据库
|
// 修改数据库
|
||||||
int i = 0;
|
int i = 0;
|
||||||
if (newPrincipalBalance != null || newGiftBalance != null) {
|
if (newPrincipalBalance != null || newGiftBalance != null) {
|
||||||
i = memberBasicInfoMapper.updateMemberBalance(memberId, newPrincipalBalance, newGiftBalance, info.getVersion());
|
i = memberBasicInfoMapper.updateMemberBalance(memberId, newPrincipalBalance, newGiftBalance, walletInfo.getVersion());
|
||||||
if (i == 0) {
|
if (i == 0) {
|
||||||
log.warn("修改余额失败, memberId:{}", memberId);
|
log.warn("修改余额失败, memberId:{}", memberId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -180,9 +180,10 @@ public class TransactionService {
|
|||||||
if (Objects.nonNull(dto.getMemberBasicInfo())) {
|
if (Objects.nonNull(dto.getMemberBasicInfo())) {
|
||||||
memberBasicInfoMapper.insertMemberBasicInfo(dto.getMemberBasicInfo());
|
memberBasicInfoMapper.insertMemberBasicInfo(dto.getMemberBasicInfo());
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(dto.getMemberWalletInfo())) {
|
// 2023年11月11日17点01分修改逻辑 新建会员的时候不用新建钱包了,由在后管充值的时候创建
|
||||||
memberWalletInfoMapper.insertSelective(dto.getMemberWalletInfo());
|
// if (Objects.nonNull(dto.getMemberWalletInfo())) {
|
||||||
}
|
// memberWalletInfoMapper.insertSelective(dto.getMemberWalletInfo());
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -19,11 +19,6 @@ public class UpdateMemberBalanceDTO {
|
|||||||
*/
|
*/
|
||||||
private String memberId;
|
private String memberId;
|
||||||
|
|
||||||
/**
|
|
||||||
* 所属运营商id
|
|
||||||
*/
|
|
||||||
private String merchantId;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新类型
|
* 更新类型
|
||||||
* 1-进账;2-出账
|
* 1-进账;2-出账
|
||||||
@@ -53,6 +48,11 @@ public class UpdateMemberBalanceDTO {
|
|||||||
*/
|
*/
|
||||||
private String relatedOrderCode;
|
private String relatedOrderCode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 充值目标运营商id
|
||||||
|
*/
|
||||||
|
private String targetMerchantId;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return new ToStringBuilder(this, ToStringStyle.JSON_STYLE)
|
return new ToStringBuilder(this, ToStringStyle.JSON_STYLE)
|
||||||
|
|||||||
@@ -210,7 +210,7 @@
|
|||||||
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
||||||
<el-form-item label="选择运营商">
|
<el-form-item label="选择运营商">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="queryParams.merchantId"
|
v-model="targetMerchantId"
|
||||||
clearable placeholder="请选择运营商"
|
clearable placeholder="请选择运营商"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
@@ -279,6 +279,7 @@ export default {
|
|||||||
updatePrincipalBalance: "", // 充值扣款金额
|
updatePrincipalBalance: "", // 充值扣款金额
|
||||||
updateBalanceMemberId: "", // 需要充值扣款的会员id
|
updateBalanceMemberId: "", // 需要充值扣款的会员id
|
||||||
type: '1', // 操作类型 1-充值;2-扣款
|
type: '1', // 操作类型 1-充值;2-扣款
|
||||||
|
targetMerchantId: "", // 目标运营商id
|
||||||
// 查询参数
|
// 查询参数
|
||||||
queryParams: {
|
queryParams: {
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
@@ -427,7 +428,8 @@ export default {
|
|||||||
memberId: this.updateBalanceMemberId,
|
memberId: this.updateBalanceMemberId,
|
||||||
updatePrincipalBalance: this.updatePrincipalBalance,
|
updatePrincipalBalance: this.updatePrincipalBalance,
|
||||||
type: this.type,
|
type: this.type,
|
||||||
subType: this.subType
|
subType: this.subType,
|
||||||
|
targetMerchantId: this.targetMerchantId
|
||||||
};
|
};
|
||||||
console.log("修改会员本金余额 param:", param);
|
console.log("修改会员本金余额 param:", param);
|
||||||
updateMemberBalance(param).then(response => {
|
updateMemberBalance(param).then(response => {
|
||||||
|
|||||||
Reference in New Issue
Block a user