diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java index dcd3acb7..1d250921 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java @@ -39,6 +39,7 @@ import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; +import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -55,6 +56,7 @@ import java.util.concurrent.TimeUnit; * @since 2023-04-21 */ @Service +@Slf4j public class AcDrawRewardNumServiceImpl extends ServiceImpl implements IAcDrawRewardNumService { @Autowired @@ -239,10 +241,32 @@ public class AcDrawRewardNumServiceImpl extends ServiceImpl memberDto = memberServiceApi.getMember(memberCode); + Long pkMember = memberDto.getData().getPkId(); + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(AcDrawRewardNum::getPkBaseId, pkBaseId); + queryWrapper.eq(AcDrawRewardNum::getPkMember, pkMember); + AcDrawRewardNum drawRewardNum = this.getOne(queryWrapper); + if (drawRewardNum != null) { + baseMapper.updatePurchasedTimesByBaseId(pkMember, num, pkBaseId); + } else { + drawRewardNum = new AcDrawRewardNum(); + drawRewardNum.setPkBaseId(pkBaseId); + drawRewardNum.setPkMember(pkMember); + drawRewardNum.setTotalUsedNum(num); + drawRewardNum.setAvailableNum(num); + drawRewardNum.setTotalNum(num); + drawRewardNum.setAvailableSurplusNum(num); + drawRewardNum.setCreationTime(DateUtils.currentDateTime()); + drawRewardNum.setPkCreator(memberDto.getData().getPkCreator()); + drawRewardNum.setPkCountry(memberDto.getData().getPkCountry()); + this.save(drawRewardNum); + } } /** @@ -364,10 +388,30 @@ public class AcDrawRewardNumServiceImpl extends ServiceImpl memberDto = memberServiceApi.getMember(memberCode); + Long pkMember = memberDto.getData().getPkId(); + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(AcDrawRewardNum::getPkBaseId, pkBaseId); + queryWrapper.eq(AcDrawRewardNum::getPkMember, pkMember); + AcDrawRewardNum drawRewardNum = this.getOne(queryWrapper); + if (drawRewardNum != null) { + baseMapper.updateUnpurchasedTimesByPkbaseId(pkMember, num, pkBaseId); + } else { + drawRewardNum = new AcDrawRewardNum(); + drawRewardNum.setPkBaseId(pkBaseId); + drawRewardNum.setPkMember(pkMember); + drawRewardNum.setTotalNum(num); + drawRewardNum.setTotalSurplusNum(num); + drawRewardNum.setCreationTime(DateUtils.currentDateTime()); + drawRewardNum.setPkCreator(memberDto.getData().getPkCreator()); + drawRewardNum.setPkCountry(memberDto.getData().getPkCountry()); + this.save(drawRewardNum); + } } /**