From 23d340c3233c887635fc49ef7d73712f2185fdb6 Mon Sep 17 00:00:00 2001 From: willy <2462310981@qq.com> Date: Fri, 18 Jul 2025 11:56:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E6=89=80=E6=9C=89=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=EF=BC=8C=E5=85=88=E4=B8=8A=E4=B8=80=E7=89=88=EF=BC=8C?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=86=85=E5=AE=9A=E5=90=8D=E5=8D=95=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E6=9C=AA=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/lottery/entity/User.java | 2 ++ .../admin/controller/AdminGradeController.java | 6 ++++++ .../admin/controller/AdminPrizeController.java | 1 + .../admin/controller/AdminUserController.java | 1 + .../com/lottery/admin/mapper/AdminGradeMapper.java | 7 ++++++ .../com/lottery/admin/mapper/AdminPrizeMapper.java | 2 +- .../lottery/admin/service/AdminGradeService.java | 3 +++ .../admin/service/Impl/AdminGradeServiceImpl.java | 13 +++++++++++ .../admin/service/Impl/AdminPrizeServiceImpl.java | 9 +++++++- .../admin/service/Impl/AdminUserServiceImpl.java | 10 ++++++++- .../lottery/api/controller/LotteryController.java | 2 +- .../api/service/Impl/UserDetailServiceImpl.java | 2 ++ .../main/java/com/lottery/config/CorsConfig.java | 25 ++++++++++++++++++++++ 13 files changed, 79 insertions(+), 4 deletions(-) create mode 100644 lottery-system/lottery-service/src/main/java/com/lottery/config/CorsConfig.java diff --git a/lottery-system/lottery-pojo/src/main/java/com/lottery/entity/User.java b/lottery-system/lottery-pojo/src/main/java/com/lottery/entity/User.java index 7d84224..508b749 100644 --- a/lottery-system/lottery-pojo/src/main/java/com/lottery/entity/User.java +++ b/lottery-system/lottery-pojo/src/main/java/com/lottery/entity/User.java @@ -13,6 +13,7 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.AllArgsConstructor; +import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; @@ -23,6 +24,7 @@ import java.util.Date; @AllArgsConstructor @NoArgsConstructor @TableName("user") +@Builder public class User { @TableId(type = IdType.AUTO) diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminGradeController.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminGradeController.java index 72c32cf..3a592b9 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminGradeController.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminGradeController.java @@ -56,6 +56,12 @@ public class AdminGradeController { return Result.success(ConvertBeanUtil.convert(adminGradeService.getById(id), GradeVo.class)); } + @PostMapping("/allGradeName") + public Result> selectAllGrade(){ + //TODo 按照grade的sort返回 + return Result.success(adminGradeService.selectAllGrade()); + } + @PostMapping("/add") public Result add(@RequestBody GradeDto gradeDto){ diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminPrizeController.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminPrizeController.java index f83f5d5..227071c 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminPrizeController.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminPrizeController.java @@ -42,6 +42,7 @@ public class AdminPrizeController { return Result.success(adminPrizeService.getPrizeById(id)); } + //TODO 添加图片oss @PostMapping("/add") public Result addPrize(@RequestBody PrizeDto prizeDto) { LOGGER.info("新增奖品:{}", prizeDto); diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminUserController.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminUserController.java index bef394d..6cf8dd7 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminUserController.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/AdminUserController.java @@ -132,6 +132,7 @@ public class AdminUserController { return Result.success(); } + //TODO 导入有点问题 @PostMapping("/import/fix") public Result importFixUsers(@RequestParam("file") MultipartFile file, @RequestParam String gradeName) { LOGGER.info("开始导入内定用户Excel文件: {}", file.getOriginalFilename()); diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/AdminGradeMapper.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/AdminGradeMapper.java index daf7281..0e5e15d 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/AdminGradeMapper.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/AdminGradeMapper.java @@ -3,6 +3,9 @@ package com.lottery.admin.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.lottery.entity.Grade; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; /** * @program: lottery-system @@ -15,6 +18,10 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface AdminGradeMapper extends BaseMapper { + + @Select("select * from grade where grade_name = #{gradeName}") Grade selectByName(String gradeName); + @Select("select grade_name from grade order by sort desc ") + List selectAllGrade(); } diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/AdminPrizeMapper.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/AdminPrizeMapper.java index a00edfa..162f5b5 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/AdminPrizeMapper.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/AdminPrizeMapper.java @@ -18,6 +18,6 @@ public interface AdminPrizeMapper extends BaseMapper { Page pageListPrize(Page page, LambdaQueryWrapper prizeLambdaQueryWrapper); - @Select("select id from prize where grade_name = #{prizeName}") + @Select("select id from prize where prize_name = #{prizeName}") Long selectByName(String prizeName); } diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/AdminGradeService.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/AdminGradeService.java index 20181c4..a66b7e4 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/AdminGradeService.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/AdminGradeService.java @@ -12,6 +12,7 @@ import com.lottery.vo.PageInfo; import org.springframework.stereotype.Service; import javax.persistence.criteria.CriteriaBuilder; +import java.util.List; /** * @program: lottery-system @@ -26,6 +27,8 @@ import javax.persistence.criteria.CriteriaBuilder; public interface AdminGradeService extends IService { PageInfo pageSelectGrade(Integer pageNum, Integer pageSize); + List selectAllGrade(); + // boolean updateGrade(GradeDto gradeDto); } diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminGradeServiceImpl.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminGradeServiceImpl.java index f7c30a0..884dd22 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminGradeServiceImpl.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminGradeServiceImpl.java @@ -17,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -32,6 +33,12 @@ import java.util.List; @Service public class AdminGradeServiceImpl extends ServiceImpl implements AdminGradeService { + private final AdminGradeMapper adminGradeMapper; + + public AdminGradeServiceImpl(AdminGradeMapper adminGradeMapper) { + this.adminGradeMapper = adminGradeMapper; + } + /** * |分页查询 * @param pageNum @@ -51,6 +58,12 @@ public class AdminGradeServiceImpl extends ServiceImpl return PageInfo.of(gradePage, gradeVos); } + @Override + public List selectAllGrade() { +// List GradeNameList = new ArrayList<>(); + return adminGradeMapper.selectAllGrade(); + } + // @Autowired // private AdminGradeMapper adminGradeMapper; 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 5833204..66f64ad 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 @@ -157,7 +157,14 @@ public class AdminPrizeServiceImpl extends ServiceImpl //先判断新增的内定用户是否在总的抽奖用户中 Long userId = adminUserMapper.selectByJwcode(fixUserDto.getJwcode()); if (userId == null) { - adminUserMapper.insert(ConvertBeanUtil.convert(fixUserDto, User.class)); //不存在,插入总表 + User user = User.builder() + .username(fixUserDto.getUsername()) + .jwcode(fixUserDto.getJwcode()) + .password("123456") + .isWin(0) + .createTime(new Date()) + .updateTime(new Date()).build(); + adminUserMapper.insert(user); //不存在,插入总表 } Grade grade = adminGradeMapper.selectByName(fixUserDto.getGradeName()); diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminUserServiceImpl.java b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminUserServiceImpl.java index 9b4e91f..551e0f9 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminUserServiceImpl.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/AdminUserServiceImpl.java @@ -95,7 +95,14 @@ public class AdminUserServiceImpl extends ServiceImpl imp if(this.count(lambdaQueryWrapper) > 0) { return false; } - return this.save(ConvertBeanUtil.convert(userDto, User.class)); + User user = new User(); // 改用构造函数或直接赋值,避免 Builder 潜在问题 + user.setUsername(userDto.getUsername()); + user.setJwcode(jwcode); + user.setIsWin(0); + user.setCreateTime(new Date()); + user.setUpdateTime(new Date()); + user.setPassword("123456"); // 显式设置,避免被覆盖 + return this.save(user); } @Override @@ -161,6 +168,7 @@ public class AdminUserServiceImpl extends ServiceImpl imp User user = new User(); user.setJwcode(dto.getJwcode()); user.setUsername(dto.getUsername()); + user.setIsWin(0); user.setCreateTime(new Date()); user.setUpdateTime(new Date()); // 设置默认密码 diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/api/controller/LotteryController.java b/lottery-system/lottery-service/src/main/java/com/lottery/api/controller/LotteryController.java index b757b3a..5cb1adf 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/api/controller/LotteryController.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/api/controller/LotteryController.java @@ -31,7 +31,7 @@ public class LotteryController { @Autowired private IUserDetailService userDetailService; - @GetMapping("/start") + @PostMapping("/start") public Result> StartLottery(@RequestBody StartLotteryDto startLotteryDto){ LOGGER.info("开始抽奖: 等级是:{},奖品是:{},抽取人数:{}",startLotteryDto.getGradeName(),startLotteryDto.getPrizeName(),startLotteryDto.getPerWin()); diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/UserDetailServiceImpl.java b/lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/UserDetailServiceImpl.java index 945b0c7..72b8e8c 100644 --- a/lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/UserDetailServiceImpl.java +++ b/lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/UserDetailServiceImpl.java @@ -21,6 +21,7 @@ import com.lottery.vo.WinUserVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.Collections; @@ -136,6 +137,7 @@ public class UserDetailServiceImpl extends ServiceImpl StartLottery(StartLotteryDto startLotteryDto) { // 1. 获取年级ID Long gradeId = gradeMapper.selectByName(startLotteryDto.getGradeName()); diff --git a/lottery-system/lottery-service/src/main/java/com/lottery/config/CorsConfig.java b/lottery-system/lottery-service/src/main/java/com/lottery/config/CorsConfig.java new file mode 100644 index 0000000..da79684 --- /dev/null +++ b/lottery-system/lottery-service/src/main/java/com/lottery/config/CorsConfig.java @@ -0,0 +1,25 @@ +package com.lottery.config; + +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.CorsRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +/** + * @program: lottery + * @ClassName CorsConfig + * @description: + * @author: wwl + * @create: 2025-07-18 10:21 + * @Version 1.0 + **/ + +@Configuration +public class CorsConfig implements WebMvcConfigurer { + @Override + public void addCorsMappings(CorsRegistry registry) { + registry.addMapping("/**") + .allowedOrigins("*") // 允许所有来源 + .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS") + .allowedHeaders("*"); + } +}