diff --git a/src/main/java/com/example/demo/aop/handler/GlobalExceptionHandler.java b/src/main/java/com/example/demo/aop/handler/GlobalExceptionHandler.java index c8fc40a..830c07b 100644 --- a/src/main/java/com/example/demo/aop/handler/GlobalExceptionHandler.java +++ b/src/main/java/com/example/demo/aop/handler/GlobalExceptionHandler.java @@ -4,6 +4,8 @@ package com.example.demo.aop.handler; import java.util.logging.Level; import java.util.logging.Logger; +import jakarta.servlet.http.HttpSession; + import org.springframework.http.HttpStatus; import org.springframework.ui.Model; import org.springframework.web.HttpRequestMethodNotSupportedException; @@ -37,25 +39,31 @@ public class GlobalExceptionHandler { } @ExceptionHandler(HttpRequestMethodNotSupportedException.class) - public String handleBadRequestException(Model model, Exception e) { + public String handleBadRequestException(Model model, Exception e, HttpSession session) { model.addAttribute("error", SEVERE_ERROR_MESSAGE_BAD_REQUEST); model.addAttribute("status", HttpStatus.BAD_REQUEST.value()); e.printStackTrace(); LOGGER.log(Level.SEVERE, SEVERE_ERROR_MESSAGE_ILLEGAL_TRANSITION, e); + + System.out.println("session invalidated"); + session.invalidate(); return "error"; } @ExceptionHandler(Exception.class) - public String AllException(Model model, Exception e) { + public String AllException(Model model, Exception e, HttpSession session) { model.addAttribute("error", SEVERE_ERROR_MESSAGE_BAD_REQUEST); e.printStackTrace(); LOGGER.log(Level.SEVERE, SEVERE_ERROR_MESSAGE_ILLEGAL_TRANSITION, e); + System.out.println("session invalidated"); + session.invalidate(); + return "error"; } } diff --git a/src/main/java/com/example/demo/app/domain/service/impl/ProfileServiceImpl.java b/src/main/java/com/example/demo/app/domain/service/impl/ProfileServiceImpl.java index c356dc2..9832d9b 100644 --- a/src/main/java/com/example/demo/app/domain/service/impl/ProfileServiceImpl.java +++ b/src/main/java/com/example/demo/app/domain/service/impl/ProfileServiceImpl.java @@ -58,6 +58,7 @@ public class ProfileServiceImpl implements ProfileService{ userEntity.setSaving(profileEditForm.getSaving()); userEntity.setAnnualIncome(profileEditForm.getAnnualIncome()); userEntity.setMonthlyBudget(profileEditForm.getMonthlyBudget()); + userEntity.setBirthDate(profileEditForm.getBirthDate()); userRepository.save(userEntity); } } diff --git a/src/main/java/com/example/demo/app/presentation/controller/ProfileController.java b/src/main/java/com/example/demo/app/presentation/controller/ProfileController.java index a78c133..379e350 100644 --- a/src/main/java/com/example/demo/app/presentation/controller/ProfileController.java +++ b/src/main/java/com/example/demo/app/presentation/controller/ProfileController.java @@ -54,9 +54,11 @@ public class ProfileController { new ProfileEditForm( profileModel.getUserName(), profileModel.getMailAddress(), + profileModel.getBirthDate(), profileModel.getSaving(), profileModel.getAnnualIncome(), - profileModel.getMonthlyBudget()); + profileModel.getMonthlyBudget(), + profileModel.getBirthDate()); model.addAttribute(PageReturnAttributeKeyword.PROFILE_EDIT_FORM, profileEditForm); return TransitionTargetPageNameKeyword.PROFILE_EDIT_HTML; diff --git a/src/main/java/com/example/demo/app/presentation/controller/TransactionController.java b/src/main/java/com/example/demo/app/presentation/controller/TransactionController.java index 009acc8..b81c0ff 100644 --- a/src/main/java/com/example/demo/app/presentation/controller/TransactionController.java +++ b/src/main/java/com/example/demo/app/presentation/controller/TransactionController.java @@ -237,6 +237,8 @@ public class TransactionController { model.addAttribute(PageReturnAttributeKeyword.INCOME_LIST, incomeList); model.addAttribute(PageReturnAttributeKeyword.TRANSACTION_FORM, transactionForm); + + session.setAttribute("tType", String.valueOf(transactionForm.getTransactionType())); model.addAttribute(PageReturnAttributeKeyword.CATEGORY_FORM_LIST, categoryFormList); diff --git a/src/main/java/com/example/demo/app/presentation/form/ProfileEditForm.java b/src/main/java/com/example/demo/app/presentation/form/ProfileEditForm.java index 78d3e81..51d9b8f 100644 --- a/src/main/java/com/example/demo/app/presentation/form/ProfileEditForm.java +++ b/src/main/java/com/example/demo/app/presentation/form/ProfileEditForm.java @@ -1,5 +1,7 @@ package com.example.demo.app.presentation.form; +import java.time.LocalDate; + import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -10,7 +12,9 @@ import lombok.NoArgsConstructor; public class ProfileEditForm { private String userName; private String mailAddress; + private LocalDate birthDate; private Integer saving; private Integer annualIncome; private Integer monthlyBudget; + private LocalDate birthDate; } diff --git a/src/main/resources/templates/error.html b/src/main/resources/templates/error.html index ab0bd32..4d094da 100644 --- a/src/main/resources/templates/error.html +++ b/src/main/resources/templates/error.html @@ -6,12 +6,6 @@
- -