diff --git a/src/main/java/com/peanut/modules/job/task/UserContributionTask.java b/src/main/java/com/peanut/modules/job/task/UserContributionTask.java index 775a8310..3a6306a9 100644 --- a/src/main/java/com/peanut/modules/job/task/UserContributionTask.java +++ b/src/main/java/com/peanut/modules/job/task/UserContributionTask.java @@ -40,6 +40,9 @@ public class UserContributionTask implements ITask{ .eq(UserContributionExchange::getUserId,userContribution.getUserId())); if (exchange!=null) { userContribution.setScore(userContribution.getScore().add(exchange.getSurplus())); + }else { + exchange = new UserContributionExchange(); + exchange.setUserId(userContribution.getUserId()); } int zhengshu = userContribution.getScore().intValue(); BigDecimal xiaoshu = userContribution.getScore().remainder(BigDecimal.ONE); @@ -49,7 +52,7 @@ public class UserContributionTask implements ITask{ userService.updateById(user); } exchange.setSurplus(xiaoshu); - userContributionExchangeService.updateById(exchange); + userContributionExchangeService.saveOrUpdate(exchange); userContributionService.update(new LambdaUpdateWrapper() .eq(UserContribution::getConversionFlag,0) .set(UserContribution::getConversionFlag,1));