Skip to content

[회원 정보] 활동 유저 관리 추가#200

Merged
ff1451 merged 5 commits intomainfrom
feat/#199/active-user
Feb 4, 2026
Merged

[회원 정보] 활동 유저 관리 추가#200
ff1451 merged 5 commits intomainfrom
feat/#199/active-user

Conversation

@ff1451
Copy link
Copy Markdown
Contributor

@ff1451 ff1451 commented Feb 3, 2026

What is this PR? 🔍

Changes 📝

멤버에 isActive라는 활동 여부를 확인하는 필드 추가 및 이를 변경할 수 있는 UI와 로직들이 추가되었습니다.
Admin, Manager 직책을 가진 사용자들은 사진과 같이 목록 혹은 정보 수정 페이지에서 개개인의 활동 여부를 변경할 수 있습니다.

image

그 외 node 버전 명시, 리뷰어 로직 추가, sdk 최신화 진행했습니다.

Precaution

이후 삐봇에서의 코드 작업을 통해 활동 유저만 멘션하는 기능 추가할 예정입니다.

✔️ Please check if the PR fulfills these requirements

  • It's submitted to the correct branch, not the develop branch unconditionally?
  • If on a hotfix branch, ensure it targets main?
  • There are no warning message when you run yarn lint

Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

Copy link
Copy Markdown
Contributor

@dooohun dooohun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

기능에는 문제가 없어보이네요! 리뷰한 내용 답변 부탁드립니다~

Comment on lines +136 to +181
<div css={S.memberInfoLabel}>
상태
</div>
{STATUS_LABEL[member.status as keyof typeof STATUS_LABEL]}
</div>
<div>
<div css={S.memberInfoLabel}>
직위
</div>
{member.memberType}
</div>
<div>
<div css={S.memberInfoLabel}>
트랙
</div>
{member.track.name}
</div>
<div>
<div css={S.memberInfoLabel}>
학번
</div>
{member.studentNumber}
</div>
<div>
<div css={S.memberInfoLabel}>
소속
</div>
{member.company}
</div>
<div>
<div css={S.memberInfoLabel}>
학부
</div>
{member.department}
</div>
<div>
<div css={S.memberInfoLabel}>
전화번호
</div>
{member.phoneNumber}
</div>
<div>
<div css={S.memberInfoLabel}>
이메일
</div>
<div css={S.memberInfoLabelSmall}>{member.email}</div>
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

const tableHeader = [{
    key: '직위',
    value: member.memberType
  },
  {
    key: '트랙',
    value: member.track.name
  }
  // 이하 생략
]

// UI 부분
return (
  tableHeader.map((value) => 
  <div css={S.memberInfoLabel}>
  )
)

반복되는 부분이 많아서, 하나의 객체로 미리 정의를 하고, 반복문을 돌리는 게 훨씬 보기 좋을 거 같습니다! (내용이 많아서, 코드는 간략하게 작성했습니다. 느낌만 참고해주시면 좋을 거 같습니다.!)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

객체 정의해서 코드 간소화 진행했습니다!

fd727e5

.filter((member) => (inactiveMemberChecked ? !member.isActive : member.isActive))
.map((member) => ({
...member,
status: STATUS_LABEL[member.status as keyof typeof STATUS_LABEL],
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

위에서도 봤던 거 같은데, member.statusSTATUS_LABEL을 추론할 수 있게 타입을 정의하는 건 어떤가요?

members 변수의 response 타입을 STATUS_LABEL 로 정의하면 좋을 거 같습니다!

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

말씀하신대로 타입 정의해두는게 좋을 것 같네요!

13deebd

@ff1451 ff1451 merged commit 5db20f6 into main Feb 4, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[회원 정보] 활동 유저 관리 추가

2 participants