Skip to content

2022.06.14(화) 회의록

Lucid edited this page Jun 14, 2022 · 3 revisions

FE

JWT 토큰

  • Request
    • Github에서 발급받은 Code
  • Response
    • JWT (token)
    • 프로필 이미지
    • 유저 네임

이슈 (Issue)

interface member {
  id: number;
  name: string;
  imgUrl: string;
}

interface label {
  id: number;
  name: string;
  backgroundColor: string;
  textColor: string;
}

interface milestone {
  id: number;
  title: string;
}

interface issue {
  id: number;
  num | count: number;
  title: string;
  labels: label[];
  milestone: milestone;
  assignees: member[];
  authors: member;
  isOpen: boolean;
  time: Date;
}

interface xx {
  openIssueCount,
  closeIssueCount,
  issue[],
}

담당자 (Assignee)

interface member {
  id: number;
  name: string;
  imgUrl: string;
}

interface memberArr {
  members : member[];
}

레이블 (Label)

interface label {
  id: number;
  name: string;
  backgrondColor: string;
  textColor: string;
}

interface labelArr {
  labels : label[];
}

마일스톤 (Milestone)

interface milestone {
  id: number;
  title: string;
}

interface milestoneArr {
  milestones : milestone[];
}

작성자 (Author)

interface author{
  id: number;
  name: string;
  imgUrl: string;
}

BE

1. 모델링

image

2. OAuth Login 흐름

image

3. issue List 요청 type

type 1

GET /issues?
open=true& : 열린 이슈
writeBy=true& : 내가 작성한 이슈
assignedMe=true& : 나에게 할당된 이슈
addComment=true& : 내가 댓글을 단 이슈
close=true& : 닫힌 이슈

// 추가 필터
assigned=(none, id)& : 담당자 필터

type 2

GET /issues?
q=
is:issue 
is:open+ 
is:close+ 
is:addComment+
label:BE ... 
label:DEBUG ..
assignee:lucid
milestone:xx
  • 일단 type2처럼 q에 +로 옵션을 추가하는 것으로 고려

4. 이슈 상태 변경

이슈 open / close

PUT /issues

{
	issues[] -> [1, 2, 3 ...]
	isOpen -> true / false
}
  • 단 건, 다수 건 동시 처리하도록 적용
  • 이슈 변경 후 redirect 필요 x, 성공 여부만 반환해주면 됨

5. 이슈 불러올 때

  • 이슈 id
  • 이슈 번호
  • 이슈 타이틀
  • 라벨(들) - 라벨정보(객체)
  • 마일스톤 - 객체로
  • 멤버
    • 아이디, 이름, 이미지 url
  • asignee 담당자 : member 객체 배열
  • author : member 한명
  • isOpen : boolean
  • time : 최초 작성시간
  • update time : 변경된 시간 → 이걸로 내려주기

6. 레이블 필터

  • 빈 레이블 배열로 레이블 없는 이슈 체킹 가능
  • label
    • id, name, backgroudColor, textColor