diff --git a/src/main/java/com/example/pladialmserver/user/dto/request/EmailPWReq.java b/src/main/java/com/example/pladialmserver/user/dto/request/EmailPWReq.java index aa24327c..1dc78fc0 100644 --- a/src/main/java/com/example/pladialmserver/user/dto/request/EmailPWReq.java +++ b/src/main/java/com/example/pladialmserver/user/dto/request/EmailPWReq.java @@ -17,4 +17,6 @@ public class EmailPWReq { @Pattern(message = "U0003", regexp = "^(?=.*[A-Za-z])(?=.*\\d)(?=.*[@$!%*#?&])[A-Za-z\\d@$!%*#?&]{8,15}$") @NotBlank(message = "U0005") private String password; + @Schema(type = "String", description = "푸쉬 알림 토큰", example = "eAnBcQicRUaSkPCm638VIG...") + private String fcmToken; } diff --git a/src/main/java/com/example/pladialmserver/user/entity/User.java b/src/main/java/com/example/pladialmserver/user/entity/User.java index b7121129..8cfe8783 100644 --- a/src/main/java/com/example/pladialmserver/user/entity/User.java +++ b/src/main/java/com/example/pladialmserver/user/entity/User.java @@ -123,4 +123,8 @@ public boolean checkRole(Role role) { return this.role == role; } + public void updateFcmToken(String fcmToken) { + this.fcmToken = fcmToken; + } + } diff --git a/src/main/java/com/example/pladialmserver/user/service/UserService.java b/src/main/java/com/example/pladialmserver/user/service/UserService.java index 124cab66..207cdc94 100644 --- a/src/main/java/com/example/pladialmserver/user/service/UserService.java +++ b/src/main/java/com/example/pladialmserver/user/service/UserService.java @@ -48,9 +48,11 @@ public class UserService { private final EmailUtil emailUtil; // 로그인 + @Transactional public TokenDto login(EmailPWReq loginReq) { User user = userRepository.findByEmailAndIsEnable(loginReq.getEmail(), true).orElseThrow(() -> new BaseException(USER_NOT_FOUND)); if(!passwordEncoder.matches(loginReq.getPassword(), user.getPassword())) throw new BaseException(INVALID_PASSWORD); + if (StringUtils.hasText(loginReq.getFcmToken())) user.updateFcmToken(loginReq.getFcmToken()); return jwtUtil.createToken(user.getUserId(), user.getRole()); }