diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminPrizeServiceImpl.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminPrizeServiceImpl.java index b073dd6..754c0e7 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminPrizeServiceImpl.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminPrizeServiceImpl.java @@ -83,10 +83,10 @@ public class AdminPrizeServiceImpl extends ServiceImpl return Result.failure("等级不存在"); // 等级不存在,直接返回失败 } - Long l = adminPrizeMapper.selectByName(prizeDto.getPrizeName()); - if (l != null) { - return Result.failure("奖品名已存在"); - } + //Long l = adminPrizeMapper.selectByName(prizeDto.getPrizeName()); + //if (l != null) { + // return Result.failure("奖品名已存在"); + //} // 2. 检查逻辑:仅当等级未删除(is_del=0)且已存在奖品时,才拒绝添加 if (grade.getIsDel() == 0) { // 等级未删除 @@ -98,6 +98,14 @@ public class AdminPrizeServiceImpl extends ServiceImpl } } + // 4. 检查奖品名称是否重复 + LambdaQueryWrapper nameCheckWrapper = new LambdaQueryWrapper<>(); + nameCheckWrapper.eq(Prize::getPrizeName, prizeDto.getPrizeName()).eq(Prize::getIs_del, 0); + + if (this.count(nameCheckWrapper) > 0) { + return Result.failure("奖品名称已存在"); // 奖品名称已存在 + } + Prize prize = Prize.builder() .PrizeName(prizeDto.getPrizeName()) .gradeId(grade.getId()) @@ -163,7 +171,7 @@ public class AdminPrizeServiceImpl extends ServiceImpl } // 4. 检查奖品名称是否重复(排除自己) LambdaQueryWrapper nameCheckWrapper = new LambdaQueryWrapper<>(); - nameCheckWrapper.eq(Prize::getPrizeName, prizeDto.getPrizeName()) + nameCheckWrapper.eq(Prize::getPrizeName, prizeDto.getPrizeName()).eq(Prize::getIs_del, 0) .ne(Prize::getId, prizeDto.getId()); if (this.count(nameCheckWrapper) > 0) { return Result.failure("奖品名称已存在"); // 奖品名称已存在