diff --git a/webapp/backend/apiserver/controllers/crewController.js b/webapp/backend/apiserver/controllers/crewController.js index 2d93c922a6aaa57ec59a13223117b883e062f285..7be619a6da6de58e20371478ed79d4d581f6b3c2 100644 --- a/webapp/backend/apiserver/controllers/crewController.js +++ b/webapp/backend/apiserver/controllers/crewController.js @@ -151,15 +151,18 @@ exports.getCrew = async (req, res) => { return res.status(404).json({ error: '해당 크루가 존재하지 않습니다.' }); } - const currentMemberCount = redisClient.get(countKeyPattern).then((result) => { - return parseInt(result, 10); - }).catch((error) => { - console.error('크루 가입 수 조회중 오류', error); - - return UserCrew.count({ - where: { crewID }, - }); - }); + let currentMemberCount; + try { + const redisResult = await redisClient.get(countKeyPattern); + currentMemberCount = redisResult ? parseInt(redisResult, 10) : null; + } catch (error) { + console.error('크루 가입 수 조회중 오류 (Redis)', error); + + // Redis 조회 실패 시 DB에서 직접 카운트 조회 + currentMemberCount = await UserCrew.count({ + where: { crewID }, + }); + } // 크루 데이터에 currentMemberCount 추가 const response = { diff --git a/webapp/backend/apiserver/controllers/eventController.js b/webapp/backend/apiserver/controllers/eventController.js index a12cbad451185f4a9d54d0f55b0d6d137f0684a0..0414456119fde5e2ff4a387418be51c0f1cddd74 100644 --- a/webapp/backend/apiserver/controllers/eventController.js +++ b/webapp/backend/apiserver/controllers/eventController.js @@ -107,16 +107,18 @@ exports.getEventById = async (req, res) => { return res.status(404).json({error: '해당 이벤트가 존재하지 않습니다.'}); } - // 현재 참여한 인원 수 계산 - const currentMemberCount = redisClient.get(countKeyPattern).then((result) => { - return parseInt(result, 10); - }).catch((error) => { - console.error('이벤트 참여자 수 조회중 오류', error); - - return UserEvent.count({ - where: {eventID: event.eventID}, - }); - }); + let currentMemberCount; + try { + const redisResult = await redisClient.get(countKeyPattern); + currentMemberCount = redisResult ? parseInt(redisResult, 10) : null; + } catch (error) { + console.error('이벤트 참여자 수 조회 중 오류 (Redis)', error); + + // Redis 조회 실패 시 DB에서 직접 카운트 조회 + currentMemberCount = await UserEvent.count({ + where: { eventID: event.eventID }, + }); + } // 이벤트 데이터에 현재 참여한 인원 수 추가 const response = {