diff --git a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/service/impl/ConfigServiceImpl.java b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/service/impl/ConfigServiceImpl.java index 62f3b49..a9a5aba 100644 --- a/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/service/impl/ConfigServiceImpl.java +++ b/jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/service/impl/ConfigServiceImpl.java @@ -25,6 +25,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.math.BigDecimal; import java.math.RoundingMode; +import java.security.SecureRandom; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -159,7 +160,7 @@ public class ConfigServiceImpl implements ConfigService { //系统配置-生成兑换码 @Override public Result generateCode(int num, BigDecimal discountAmount) { - log.info("开始查询系统配置详情"); + log.info("开始生成兑换码"); //返回信息 String massege = ""; @@ -169,7 +170,8 @@ public class ConfigServiceImpl implements ConfigService { List assessmentCodeList = new ArrayList<>(); for (int i = 0; i < num; i++) { AssessmentCode assessmentCode = new AssessmentCode(); - String code = "RA" + IdWorker.getIdStr();//生成兑换码 + //String code = "RA" + IdWorker.getIdStr();//生成兑换码 + String code = randomGenerator();//生成兑换码 assessmentCode.setCode(code); assessmentCode.setDiscountAmount(discountAmount); assessmentCodeList.add(assessmentCode); @@ -195,6 +197,13 @@ public class ConfigServiceImpl implements ConfigService { return Result.error("兑换码生成失败"); } } + //随机生成8位数 + public String randomGenerator(){ + SecureRandom secureRandom = new SecureRandom(); + int randomNum = secureRandom.nextInt(100000000); + String format = String.format("%08d", randomNum); + return format; + } @Override @@ -219,7 +228,7 @@ public class ConfigServiceImpl implements ConfigService { //获取报告总次数 long reportNum = assessmentReportUserService.count(); //总流水金额 - List amount = assessmentPayLogService.list(); + List amount = assessmentPayLogService.lambdaQuery().eq(AssessmentPayLog::getStatus, "1").list(); BigDecimal amountSum = BigDecimal.ZERO; for (AssessmentPayLog assessmentPayLog : amount) { amountSum = amountSum.add(assessmentPayLog.getPayAmount());