backend/src/main/java/com/rongyichuang/player/service/ActivityPlayerService.java
@@ -231,25 +231,47 @@
    }
    /**
     * 创建或更新用户记录
     * 创建或更新用户记录(仅在小程序报名成功时创建新用户)
     */
    private User createOrUpdateUser(ActivityRegistrationInput input) {
        try {
            // 使用UserService的findOrCreateUserByPhone方法
            User user = userService.findOrCreateUserByPhone(
                input.getPlayerInfo().getPhone(),
                input.getPlayerInfo().getName(),
                null // 不设置密码,使用默认密码
            );
            String phone = input.getPlayerInfo().getPhone();
            String name = input.getPlayerInfo().getName();
            
            // 更新用户的生日信息
            if (input.getPlayerInfo().getBirthDate() != null) {
                user.setBirthday(input.getPlayerInfo().getBirthDate());
            // 先查找现有用户
            Optional<User> existingUserOpt = userService.findByPhone(phone);
            if (existingUserOpt.isPresent()) {
                // 用户存在,更新信息
                User user = existingUserOpt.get();
                user.setName(name);
                // 更新用户的生日信息
                if (input.getPlayerInfo().getBirthDate() != null) {
                    user.setBirthday(input.getPlayerInfo().getBirthDate());
                }
                user = userService.save(user);
                log.info("更新用户生日信息成功,用户ID: {}", user.getId());
                log.info("更新现有用户信息成功,用户ID: {}", user.getId());
                return user;
            } else {
                // 用户不存在,创建新用户(仅在小程序报名成功时)
                log.info("用户不存在,为小程序报名成功创建新用户,手机号: {}", phone);
                User newUser = new User();
                newUser.setName(name);
                newUser.setPhone(phone);
                newUser.setPassword(userService.getPasswordEncoder().encode("123456")); // 默认密码
                // 设置生日信息
                if (input.getPlayerInfo().getBirthDate() != null) {
                    newUser.setBirthday(input.getPlayerInfo().getBirthDate());
                }
                newUser = userService.save(newUser);
                log.info("为小程序报名成功创建新用户,用户ID: {}", newUser.getId());
                return newUser;
            }
            return user;
        } catch (Exception e) {
            log.error("创建或更新用户记录时发生错误", e);
            throw new RuntimeException("创建或更新用户记录失败", e);