'8월 8일' 팔십 한 번째 기록 [TIL]

가은·2024년 8월 8일
0

I Learned [본 캠프]

목록 보기
122/135
post-thumbnail

👩‍🏫 오늘의 출석

❓팔십 한 번째, 9 to 9을 해 본 소감❓

어제 그렇게 잡고 있었는데, 의외로 간단하게 해결되어서.. 약간 머쓱.. 그런데 이젠 또 새로운 문제들과 만나서 하루 종일 붙잡고 있는 중이다. 권한 별로 로그인하도록 했더니 버튼이 전부 사라져 버리고.. 회원 가입 문제 해결했더니 로그인이 안 되고.. 오늘 하루 종일 이거 하나 되면, 저게 안 되고.. 이거 고치면 저거 안 되고.. 그런 상황의 무한 굴레..

📑오늘 학습한 내용

  • 어제 해결 못한 모든 권한이 user로 되는 에러 해결

↓ 주 원인이라고 파악된 문제의 코드 ↓

public class SignUpRequestDto {

  private String checkPassword;

  private boolean admin = false;
  private String adminToken = "";

public class SignUpRequestDto {
  private boolean entertainment = false;
  private String entertainmentToken = "";

@JsonCreator
  public SignUpRequestDto(String id, String name, String nickname, String email, String password, MultipartFile file, String checkPassword) {
    this.id = id;
    this.name = name;
    this.nickname = nickname;
    this.email = email;
    this.password = password;
    this.file = file;
    this.checkPassword = checkPassword;
}

↓ 해결 코드 ↓

private String checkPassword;

//  UserRoleEnum roleName;
//  String token;

  private boolean admin = false;
  private String adminToken = "";

public class SignUpRequestDto {
  private boolean entertainment = false;
  private String entertainmentToken = "";

  @JsonCreator
  public SignUpRequestDto(String id, String name, String nickname, String email, String password,
      MultipartFile file, String checkPassword, String adminToken, String artistToken, String entertainmentToken) {
    this.id = id;
    this.name = name;
    this.nickname = nickname;
    this.email = email;
    this.password = password;
    this.file = file;
    this.checkPassword = checkPassword;
    this.adminToken = adminToken;
    this.artistToken = artistToken;
    this.entertainmentToken = entertainmentToken;
    setAdmin(adminToken);
    setArtist(artistToken);
    setEnter(entertainmentToken);
  }

  private void setAdmin(String adminToken){
    if(StringUtils.hasLength(adminToken)){
      this.admin = true;
    }
    else this.admin = false;
  }
  private void setEnter(String entertainmentToken){
    if(StringUtils.hasLength(entertainmentToken)){
      this.entertainment = true;
    }
    else this.entertainment = false;
  }
  private void setArtist(String artistToken){
    if(StringUtils.hasLength(artistToken)){
      this.artist = true;
    }
    else this.artist = false;
  }

권한별로 false 값을 true로 변환해 주는 로직을 추가해서, 회원가입 시 모든 권한들이 user로 들어오던 문제를 해결했다.

  • 로그인
  • 권한 별로 보이는 버튼을 다르게 하기
  • 로그아웃
  • 비밀번호 재확인 버튼 추가
  • 회원가입 후 로그인 페이지로 이동
  • 공백 입력 시 alert

내일 해야 할 일

  • 로그인 후 새로고침해도 상태가 유지되도록 수정
  • 생성 페이지에서 메인 페이지로 이동하도록 수정
  • 생성 페이지 토큰 로컬 스토리지에서 받아 오도록 수정
  • 버튼 디자인 수정

다음 주 월요일 오후에 배포 후 유저 테스트할 수 있도록!

0개의 댓글