余额支付-返现金额不对的问题

This commit is contained in:
2025-12-20 16:34:01 +08:00
parent 279cdb5047
commit e79c6e9a93

View File

@@ -303,9 +303,9 @@ public class TbMemberConfigServiceImpl extends ServiceImpl<TbMemberConfigMapper,
log.warn("会员配置不存在, 店铺id: {}", shopUser.getMainShopId());
return false;
}
ShopUser upShopUser = new ShopUser();
if (shopUser.getExperience() == null) {
shopUser.setExperience(0L);
upShopUser.setExperience(0L);
}
MemberLevelVO levelVO = levelConfigService.detail(shopUser.getMemberLevelId());
@@ -362,14 +362,14 @@ public class TbMemberConfigServiceImpl extends ServiceImpl<TbMemberConfigMapper,
expFlow.setSourceId(sourceId);
memberExpFlowService.save(expFlow);
shopUser.setExperience(shopUser.getExperience() + exp);
upShopUser.setExperience(shopUser.getExperience() + exp);
// 修改会员等级
MemberLevelConfig nextConfig = levelConfigService.getOne(new QueryWrapper().eq(MemberLevelConfig::getShopId, shopUser.getMainShopId())
.gt(MemberLevelConfig::getExperienceValue, levelVO.getExperienceValue()).orderBy(MemberLevelConfig::getExperienceValue, true).limit(1));
if (nextConfig != null && shopUser.getExperience() >= nextConfig.getExperienceValue()) {
shopUser.setMemberLevelId(nextConfig.getId());
upShopUser.setMemberLevelId(nextConfig.getId());
}
shopUserService.updateInfo(shopUser);
shopUserService.updateInfo(upShopUser);
}
log.info("用户id: {}, 增加经验值: {}, 当前经验值: {}, 当前等级: {}", shopUser.getUserId(), exp, shopUser.getExperience(), shopUser.getMemberLevelId());
@@ -382,10 +382,17 @@ public class TbMemberConfigServiceImpl extends ServiceImpl<TbMemberConfigMapper,
@Transactional(rollbackFor = Exception.class)
public boolean joinMemberByCondition(Long shopId, Long userId, ShopUser shopUser) {
MemberConfigVO memberConfigVO = detail(shopId);
if (!memberConfigVO.getIsOpen().equals(1L)) {
log.info("超级会员未开启, 店铺id: {}", shopId);
return false;
}
if (shopUser == null) {
log.warn("用户不存在, 店铺id: {}, 用户id: {}", shopId, userId);
return false;
}
if (shopUser.getStartTime() != null && shopUser.getEndTime() != null && DateUtil.isIn(DateUtil.date(), DateUtil.date(shopUser.getStartTime()), DateUtil.date(shopUser.getEndTime()))) {
return false;
}
MemberLevelConfig levelConfig = levelConfigService.getOne(new QueryWrapper().eq(MemberLevelConfig::getShopId, shopId).orderBy(MemberLevelConfig::getExperienceValue, true).limit(1));
if (levelConfig == null) {
log.info("会员等级配置不存在, 店铺id: {}", shopId);
@@ -395,7 +402,7 @@ public class TbMemberConfigServiceImpl extends ServiceImpl<TbMemberConfigMapper,
return false;
}
if (memberConfigVO.getConditionList() == null || memberConfigVO.getConditionList().isEmpty()) {
if (CollUtil.isEmpty(memberConfigVO.getConditionList())) {
log.info("会员开通条件不存在, 店铺id: {}", shopId);
return false;
}
@@ -421,19 +428,15 @@ public class TbMemberConfigServiceImpl extends ServiceImpl<TbMemberConfigMapper,
return false;
}
}
ShopUser upShopUser = new ShopUser();
upShopUser.setId(shopUser.getId());
upShopUser.setMemberLevelId(levelConfig.getId());
upShopUser.setStartTime(DateUtil.date().toLocalDateTime());
if (shopUser.getStartTime() != null && shopUser.getEndTime() != null && DateUtil.isIn(DateUtil.date(), DateUtil.date(shopUser.getStartTime()), DateUtil.date(shopUser.getEndTime()))) {
log.info("用户id: {}, 您已经是会员", userId);
return false;
}
shopUser.setMemberLevelId(levelConfig.getId());
shopUser.setStartTime(DateUtil.date().toLocalDateTime());
shopUser.setEndTime(shopUser.getStartTime().plusDays(20000));
shopUser.setIsVip(1);
shopUser.setOpenType("CONDITION");
return shopUserService.updateById(shopUser);
upShopUser.setEndTime(shopUser.getStartTime().plusDays(20000));
upShopUser.setIsVip(1);
upShopUser.setOpenType("CONDITION");
return shopUserService.updateById(upShopUser);
}
@Override