//유저 초대하기 초안
// router.post('/invite/:roomId/:userId', authMiddleware, async (req, res)=> {
// try {
// // const nickname = req.nickname
// const roomId = Number(req.params.roomId)
// const userId = Number(req.params.userId)
// // const { roomId } = req.body
// const [addUser] = await User.find({ userId })
// console.log(addUser.nickname)
// // const [userList] = await User.find({ nickname: {$ne: nickname} })//.sort("nickname")
// // console.log(userList.nickname)
// //로그인한 나를 제외한 유저목록조회 (이름 순으로 정렬)
// // if (!userList) { return res.status(400).json({ result: false, msg: "유저 리스트를 불러올 수 없습니다." })}
// // if (userList === nickname) { return res.status(400).json({ result: false, msg: "본인 포함 오류" })}
// const inviteUser = await Room.findOneAndUpdate({ roomId },{ $push: { attendName: addUser.nickname }});
// // console.log(inviteUser.attendName)
// const inviteRoom = await User.findOneAndUpdate({ userId: userId }, {$push : { attendRoom: roomId }})
// // console.log(inviteRoom.attendRoom)
// res.status(200).json({
// result: true,
// nickname: addUser.nickname,
// // AttendName: inviteUser.attendName,
// // AttendRoom: inviteRoom.attendRoom,
// msg: "초대 완료"
// })
// } catch (error) {
// console.log(error)
// res.status(400).send({ errorMessage: error.message })
// }
// })
ㅇ
수정 후
//유저 초대하기
router.post('/invite/:roomId/:userId', authMiddleware, async (req, res)=> {
try {
const roomId = Number(req.params.roomId)
const userId = Number(req.params.userId)
const [addUser] = await User.find({ userId })
// console.log(addUser.nickname)
const { groupNum } = await Room.findOne({ roomId: roomId })
// console.log(groupNum)
if (groupNum >=4){
return res.status(400).json({result: false, msg: "정원 초과입니다."})
} else {
await Room.updateOne({ roomId: roomId }, { $inc: { groupNum: 1 } });
await Room.findOneAndUpdate({ roomId },{ $push: { attendName: addUser.nickname }});
await User.findOneAndUpdate({ userId }, {$push : { attendRoom: roomId }})
}
res.status(200).json({
result: true,
nickname: addUser.nickname,
msg: "초대 완료"
})
} catch (error) {
console.log(error)
res.status(400).send({ errorMessage: error.message })
}
})