codestates / codestates/sagaksagak-client
[✍️ Dev Log] 황순은 / 21-07-08
- Dominant language
- JavaScript
- Stars
- 4
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
### 오늘은 어떻게 프로젝트에 기여했나요?
- 유저가 얼마나 공부했는지를 저장하는 join_log테이블 저장로직 구현
- studylog의 record, 유저가 카테고리별 공부시간 쿼리와 참여 방별 공부시간 쿼리로직 구현
### 오늘의 프로젝트에서 힘든 점은 무엇인가요?
- 로그테이블에 도장을 찍을때, 한 유저가 같은방을 여러번 들락날락할 가능성이 있기 때문에 그때 새로운테이블을 계속생성하기보다는 업데이트로 처리하여 다시 공부시간 측정할 수 있게 만드는데까지 많은 생각을 해야 했다.
```js
// 입장시 도장
if (userId !== 1) {
let [find, create] = await join_log.findOrCreate({
where: { roomId: roomInfo.id, userId },
defaults: { roomId: roomInfo.id, userId }
})
if (find) {
await join_log.update({
userId
}, { where: { roomId: roomInfo.id, userId } })
}
}
// 퇴장시 도장, 공부시간 측정
let log = await join_log.findOne({
where: {
roomId: roomInfo.id,
userId
}, raw: true
})
await join_log.update({
workHours: log.workHours + ((new Date() - log.updatedAt) / 1000 / 60)
}, { where: { roomId: roomInfo.id, userId }})
```
### 내일은 프로젝트에 기여하기 위해 무엇을 해야 하나요?
- [x] 필터링 study
- [x] 이메일인증 study
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.