Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

데이터베이스 설계 피드백 반영 #67

Closed
15 of 16 tasks
ghdcksgml1 opened this issue Oct 4, 2023 · 1 comment · Fixed by #68
Closed
15 of 16 tasks

데이터베이스 설계 피드백 반영 #67

ghdcksgml1 opened this issue Oct 4, 2023 · 1 comment · Fixed by #68
Assignees
Labels
refactor 리팩토링, 성능 개선

Comments

@ghdcksgml1
Copy link
Owner

ghdcksgml1 commented Oct 4, 2023

USER 테이블 수정

  • groupList
  • phoneNumber Unique 속성 추가
    • 중복회원가입 방지
  • UserRole - WITHDRAWAL 상태 추가
    • 회원 탈퇴시 상태 변경
  • 재가입 시점에 이전 계정 platformId, email, phoneNumber 초기화할 예정



GROUP_INFO 테이블 수정

  • gradient 필드 추가
    • 그룹의 CSS 속성 String으로 통째로 저장
    • ex) linear-gradient(to right, #ff8177 0%, #ff867a 0%, #ff8c7f 21%, #f99185 52%, #cf556c 78%, #b12a5b 100%)



GROUP_BG 테이블 생성

  • Group color 관리 테이블 추가
    • bgColor
    • colorCode
    • gradient



GROUP_MEMBER 테이블 수정

  • GroupMemberStatus에 WITHDRAW 상태 추가
    • 구성원이 그룹 탈퇴시 WITHDRAW로 상태 변경
  • 그룹 탈퇴시 Todo 프로필을 탈퇴 프로필로 처리할 예정



HOUSEWORK_PERIOD 테이블 삭제

  • HOUSEWORK_INFO 컬럼으로 병합



HOUSEWORK_INFO 테이블 수정

  • HOUSEWORK_PEROID 컬럼 병합
  • HOUSEWORK_PERIOD_MONTH 타입 추가
    • PERIOD 타입에 따라 다르게 처리
      • HOUSEWORK_PERIOD_DAY → 날짜 (22.09.12, 22.11.03)
      • HOUSEWORK_PERIOD_EVERYDAY → 매일
      • HOUSEWORK_PERIOD_WEEK → 요일 (월, 화)
      • HOUSEWORK_PERIOD_MONTH → 일 (1, 23, 29)
  • HOUSEWORK_CATEGORY 연결 (@manytoone)

HOUSEWORK_INFO 삭제 시나리오
- INFO가 단건인 경우: TODO 삭제시 같이 삭제
- INFO가 단건이 아닌 경우: 현재 시점 이후의 INFO가 연결되어 있는 TODO 전부 삭제



HOUSEWORK_TODO

  • 인증 관련 컬럼 필요
    • 인증 사진 url 컬럼 필요
    • 인증해준 사람 컬럼 필요
    • 인증해준 사람이 인증 버튼 누른 시간 컬럼 필요
  • 그룹 식별 정보 필요 (+추가)
    • 그룹 정보 식별 ➡️ groupInfo [@manytoone]
    • 날짜 정보 식별 ➡️ date
    • 위 두개의 정보들로 해당 날짜의 그룹의 TODO를 조회

문제

  • INFO의 담당자(HOUSEWORK_MEMBER)가 변경되었을 경우 변경 시점 이후의 TODO를 모두 찾아서 집안일 담당자 필드(houseworkMember) 업데이트 필요
  • category, title, detial 중 변경된 것이 있다면 업데이트 필요

해결

  • HOUSEWORK_INFO ID를 FK로 추가해서 @manytoone 관계 맺어준 후 INFO의 업데이트가 생기면 TODO도 같이 업데이트
    • 단, HOUSEWORK_PERIOD_DAY 가 아닐 때에만 참조



HOUSEWORK_SAVE

  • GroupInfo로 검색할 수 있도록 인덱스 붙여주기

    • 인덱스 이름: HOUSEWORK_SAVE_GROUP_INFO_INDEX
  • 매일 자정 배치로 실행해 저장할 예정

    • 통용적으로 사용되는 집안일의 group_info_id는 null로 설정
    • 그룹에서 등록한 집안일은 group_info_id 존재



Notify - MongoDB 테이블 수정

  • generateUrl 필드 삭제



ERD mwb 파일 관리

  • 깃허브에 DB 폴더 파서 mwb 파일 관리
@jusung-c
Copy link
Collaborator

nbbang_erd

ghdcksgml1 added a commit that referenced this issue Oct 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactor 리팩토링, 성능 개선
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants