|
@@ -171,6 +171,46 @@ public class WxPayNotifyController {
|
|
bizUserFundChangeRecord.setNewAccountBalance(bizUser.getAccountBalance());
|
|
bizUserFundChangeRecord.setNewAccountBalance(bizUser.getAccountBalance());
|
|
bizUserFundChangeRecord.setNewVoucherBalance(bizUser.getVoucherBalance());
|
|
bizUserFundChangeRecord.setNewVoucherBalance(bizUser.getVoucherBalance());
|
|
bizUserFundChangeRecordService.save(bizUserFundChangeRecord);
|
|
bizUserFundChangeRecordService.save(bizUserFundChangeRecord);
|
|
|
|
+
|
|
|
|
+ if (ObjectUtil.isNotEmpty(bizUser.getReferralUser())) {
|
|
|
|
+ //查询推荐人最早的一条待激活的记录,帮助激活人数+1
|
|
|
|
+ BizUser user = bizUserMapper.selectById(bizUser.getReferralUser());
|
|
|
|
+ BizActivate activate = bizActivateService.getOne(new QueryWrapper<BizActivate>().lambda().eq(BizActivate::getUserId, user.getId())
|
|
|
|
+ .eq(BizActivate::getStatus,"1")
|
|
|
|
+ .orderByAsc(BizActivate::getCreateTime)
|
|
|
|
+ .last("limit 1"));
|
|
|
|
+ if(ObjectUtil.isNotNull(activate)){
|
|
|
|
+ //查询待激活记录的充值方案信息
|
|
|
|
+ BizRechargePlanConfig config = bizRechargePlanConfigService.getById(activate.getPlanConfigId());
|
|
|
|
+ //本次充值金额大于待激活记录充值金额,可帮助激活一次
|
|
|
|
+ if(bizRechargeRecord.getRechargeAmount().compareTo(config.getRechargeAmount()) >= 0){
|
|
|
|
+ //根据充值人和激活记录id查询是否帮助激活过,一个人只能激活一次
|
|
|
|
+ List<BizActivateDetail> list = bizActivateDetailService.list(new QueryWrapper<BizActivateDetail>().lambda().
|
|
|
|
+ eq(BizActivateDetail::getActivateId, activate.getId()).
|
|
|
|
+ eq(BizActivateDetail::getHelpUserId, bizUser.getId()));
|
|
|
|
+ if(ObjectUtil.isEmpty(list)){
|
|
|
|
+ //记录激活明细
|
|
|
|
+ BizActivateDetail bizActivateDetail = new BizActivateDetail();
|
|
|
|
+ bizActivateDetail.setActivateId(activate.getId());
|
|
|
|
+ bizActivateDetail.setHelpUserId(bizUser.getId());
|
|
|
|
+ bizActivateDetailService.save(bizActivateDetail);
|
|
|
|
+ //判断是否到达激活人数
|
|
|
|
+ if(activate.getHelpCount()+1 == planConfig.getHelpCount()){
|
|
|
|
+
|
|
|
|
+ //帮助激活人数等于配置的帮助激活人数,账户糕点可激活
|
|
|
|
+ user.setAccountBalance(user.getAccountBalance().add(activate.getAccountBalance()));
|
|
|
|
+
|
|
|
|
+ //修改推荐人账户余额
|
|
|
|
+ bizUserMapper.updateById(user);
|
|
|
|
+
|
|
|
|
+ activate.setStatus("2");
|
|
|
|
+ }
|
|
|
|
+ activate.setHelpCount(activate.getHelpCount()+1);
|
|
|
|
+ bizActivateService.updateById(activate);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}else{
|
|
}else{
|
|
//插入一条待激活的记录
|
|
//插入一条待激活的记录
|
|
BizActivate bizActivate = new BizActivate();
|
|
BizActivate bizActivate = new BizActivate();
|