-
Notifications
You must be signed in to change notification settings - Fork 2
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
#784 송금하지 않은 방이 있는 경우 추가 방 참여 제한 #787
The head ref may contain hidden characters: "#784-\uBBF8\uC815\uC0B0-\uBC29\uC774-\uC788\uB294-\uACBD\uC6B0-\uCD94\uAC00-\uBC29-\uCC38\uC5EC-\uC81C\uD55C"
Conversation
✅ Deploy Preview for taxi-dev-preview ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
room.part.find((item: any) => item._id === loginInfo?.oid) | ||
.isSettlement === "send-required" && room.isDeparted | ||
); // 다른 사람이 정산을 올렸으나 내가 아직 송금하지 않은 방이 있는지 여부 (추가 입장 제한에 사용) | ||
// item : any 가 좋은 방법인지 모르겠습니다 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이번 PR에서 방 타입 정의가 같이 이루어져도 괜찮을 것 같네요!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
회의 논의 결과, 백엔드가 TS로 넘어가면 타입 공유를 해서 쓰는걸로 결정했습니다.
@@ -68,6 +69,14 @@ const AddRoom = () => { | |||
useState<boolean>(false); | |||
//#endregion | |||
|
|||
const myOngoingRoom = myRooms?.ongoing.slice() ?? []; // InfoSection의 sortedMyRoom에서 정렬만 뺐습니다. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
useMemo 사용 or loginInfo recoilState 에 추가하는게 좋을 것 같습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! 수고하셨습니다!
Summary
It closes #784
미정산 문제에 대한 대응 중 하나로, 다른 참여자가 정산을 올렸으나 본인이 송금하지 않은 방이 있다면 1) 추가 방 참여와 2) 새로운 방 생성을 제한합니다.
중점적으로 피드백 받고 싶은 부분
sortedMyRoom
) 에서 혹시 정산 또는 결제 (이 PR은 정산이 진행 중이나 본인이 송금하지 않은 상황에 한정되므로 조건은 다릅니다) 가 이루어지지 않은 방이 있는지를 확인하는notOver
라는 변수가 있습니다. 이 과정을 최대한 보존하면서 아래와 같이 수정하였는데, 관련 질문이 있습니다.sortedMyRoom
대신 정렬만 뺀myOngoingRoom
을 선언하여 사용했습니다. 이것이 적절한 사용인지 궁금합니다. 정렬을 하지 않을 것이라면 이렇게 선언하는 것이 불필요한 중복 변수 선언이 될 수 있는 여지가 있는지 궁금합니다.notOver
대신, 정산 진행 중이나 본인이 송금하지 않은 방이 있는지 알기 위해서, 각 방에 대하여part
안에서 본인 id와 일치하면서isSettlement === "send-required"
인 방을 찾아 그 여부를notPaid
라는 변수에 저장하는 로직이 들어가 있습니다. 방 참여 쪽 수정 사항이 들어간BodyRoomSelection
에는loginInfo
를 이미 가져오고 있어서 그대로 사용했으나, 방 생성 쪽 수정 사항이 들어간 Addroom의 index.tsx에서는 새롭게const loginInfo = useValueRecoilState("loginInfo");
를 추가하였습니다. 문제가 되지 않을 것으로 판단했으나 적절한지 궁금합니다.notPaid
를 설정하는 과정에서 any type으로 인해 VSCode에서 뜨는 에러를 없애기 위해 arrow function의 매개변수를item: any
라는 형식으로 썼습니다. (이것을 명시하기 전, 오류가 뜨는 상황에서도 작동은 정상적으로 되었습니다) 이것이 적절한 방법이 아닌 것 같아서, 개선할 방법이 있는지 궁금합니다.사소한 부분이나, 비활성화된 버튼의 텍스트가 적절한지 궁금합니다.
Images or Screenshots
Further Work