Skip to content

Commit a9ae13d

Browse files
Merge pull request #88 from kakao-tech-campus-3rd-step3/fix/festival-time
Fix/festival time
2 parents 19129ee + a0689e6 commit a9ae13d

2 files changed

Lines changed: 40 additions & 32 deletions

File tree

README.md

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
🎉 <b>모두가 함께 만들어가는 축제 플랫폼</b> 🎊
77
</h3>
88

9-
<img
9+
<img
1010
src="https://github.com/user-attachments/assets/f1c3b239-52a7-4329-accf-f17bb096b77e"
1111
alt="FestaPick_hero_image"
1212
width="60%"
@@ -33,7 +33,8 @@
3333
</div>
3434

3535
## 소개
36-
FestaPick은 **축제 참여자****축제 관리자(주최측)** 모두가 함께 쓰는 플랫폼입니다.
36+
37+
FestaPick은 **축제 참여자****축제 관리자(주최측)** 모두가 함께 쓰는 플랫폼입니다.
3738

3839
- 💬 축제별 채팅방을 통해 참여자 간 정보 공유
3940
- 🧭 여행 MBTI 입력으로 사용자 맞춤 축제 추천
@@ -46,76 +47,86 @@ FestaPick은 **축제 참여자**와 **축제 관리자(주최측)** 모두가
4647

4748
### 👤 사용자 기능
4849

49-
#### 🎯 성향 기반 축제 맞춤 추천
50+
#### 🎯 성향 기반 축제 맞춤 추천
51+
5052
<p>
5153
<img src="https://github.com/user-attachments/assets/36242224-b7eb-495c-8c09-ef2c9dbf77c9" alt="성향 추천 1" width="200" />
5254
</p>
5355

54-
- 지도에 있는 픽픽(PickPick)을 선택해 지역을 설정하고, 여행 MBTI를 입력하면 사용자의 성향에 맞는 축제를 추천받을 수 있습니다.
55-
- 추천받은 축제 중 마음에 드는 축제를 클릭하면 상세 정보를 조회할 수 있습니다.
56+
- 지도에 있는 픽픽(PickPick)을 선택해 지역을 설정하고, 여행 MBTI를 입력하면 사용자의 성향에 맞는 축제를 추천받을 수 있습니다.
57+
- 추천받은 축제 중 마음에 드는 축제를 클릭하면 상세 정보를 조회할 수 있습니다.
58+
59+
#### ❤️ 좋아요 / 리뷰 작성
5660

57-
#### ❤️ 좋아요 / 리뷰 작성
5861
<p>
5962
<img src="https://github.com/user-attachments/assets/08948c0b-01f2-46c9-a625-bf34e61ddccb" alt="좋아요/리뷰" width="200" />
6063
</p>
6164

62-
- 마음에 드는 축제는 좋아요를 눌러 저장할 수 있습니다.
65+
- 마음에 드는 축제는 좋아요를 눌러 저장할 수 있습니다.
6366
- 다녀온 축제에 대해서는 리뷰를 작성해 다른 사용자와 경험을 공유할 수 있습니다.
64-
65-
#### 💬 채팅 / 채팅 알람 기능
67+
68+
#### 💬 채팅 / 채팅 알람 기능
69+
6670
<p>
6771
<img src="https://github.com/user-attachments/assets/84806e0d-bbd9-415b-8206-aa160b995829" alt="채팅 1" width="180" />
6872
<img src="https://github.com/user-attachments/assets/1706acdc-b6fc-482c-9df0-563fde81d03a" alt="채팅 2" width="180" />
6973
</p>
7074

71-
- 각 축제별 채팅방에서 참여자들과 실시간으로 정보를 공유할 수 있습니다.
72-
- 마이페이지에서는 참여 중인 채팅방의 알림 여부를 확인할 수 있습니다.
75+
- 각 축제별 채팅방에서 참여자들과 실시간으로 정보를 공유할 수 있습니다.
76+
- 마이페이지에서는 참여 중인 채팅방의 알림 여부를 확인할 수 있습니다.
7377

7478
### 🧩 관리자 기능
7579

76-
#### 🧑‍💼 축제 관리자 등업 신청
80+
#### 🧑‍💼 축제 관리자 등업 신청
81+
7782
<p>
7883
<img src="https://github.com/user-attachments/assets/92c33993-3595-4701-a4ac-5774093dc4da" alt="관리자 등업 신청" width="200" />
7984
</p>
8085

81-
- 축제를 직접 관리하고 싶다면 관리자 등업을 신청할 수 있습니다.
82-
- 신청 시 소속 정보와 관련 서류를 제출합니다.
86+
- 축제를 직접 관리하고 싶다면 관리자 등업을 신청할 수 있습니다.
87+
- 신청 시 소속 정보와 관련 서류를 제출합니다.
8388
- Admin 승인 후 등업 여부가 결정됩니다.
8489

85-
#### 🛂 등록된 축제에 대한 관리자 신청
90+
#### 🛂 등록된 축제에 대한 관리자 신청
91+
8692
<p>
8793
<img src="https://github.com/user-attachments/assets/f4d85b13-0e71-4d09-bfce-fbd2a0a5bcd5" alt="기존 축제 관리자 신청" width="200" />
8894
</p>
8995

90-
- 관광공사(TourAPI)에 등록된 축제에 대해 관리자 권한을 신청할 수 있습니다.
91-
- Admin 승인 후, 해당 축제에 대한 수정·삭제·공지사항 등록 권한을 획득합니다.
96+
- 관광공사(TourAPI)에 등록된 축제에 대해 관리자 권한을 신청할 수 있습니다.
97+
- Admin 승인 후, 해당 축제에 대한 수정·삭제·공지사항 등록 권한을 획득합니다.
98+
99+
#### 📝 나의 축제 등록하기
92100

93-
#### 📝 나의 축제 등록하기
94101
<p>
95102
<img src="https://github.com/user-attachments/assets/2e20b0f3-0989-4b2e-b5a2-444f1a8fd892" alt="나의 축제 등록" width="200" />
96103
</p>
97104

98-
- 축제 관리자는 새로운 축제를 등록할 수 있습니다.
99-
- 등록된 축제는 Admin의 승인 후 일반 사용자에게 노출됩니다.
105+
- 축제 관리자는 새로운 축제를 등록할 수 있습니다.
106+
- 등록된 축제는 Admin의 승인 후 일반 사용자에게 노출됩니다.
107+
108+
#### 🗂️ 등록 축제 관리
100109

101-
#### 🗂️ 등록 축제 관리
102110
<p>
103111
<img src="https://github.com/user-attachments/assets/b27bd4a4-3e6f-4822-af47-f3a5baa95baa" alt="등록 축제 관리" width="200" />
104112
</p>
105113

106-
- 자신이 등록한 축제에 대해 공지사항을 등록할 수 있습니다.
107-
- 축제 정보를 수정 및 삭제할 수 있습니다.
114+
- 자신이 등록한 축제에 대해 공지사항을 등록할 수 있습니다.
115+
- 축제 정보를 수정 및 삭제할 수 있습니다.
108116

109117
---
110118

111119
## 모니터링
120+
112121
#### 🔎 ELK(ElasticSearch, Logstash, Kibana), Filebeat를 활용한 로그 모니터링
122+
113123
<img width="2926" height="1202" alt="image" src="https://github.com/user-attachments/assets/fc873a53-5af8-4f0f-a025-ec43984f9217" />
114124

115125
- 로그를 직접 서버 인스턴스에 접속해서 확인하는게 아닌 전문 검색을 통해서 로그를 확인할 수 있습니다.
116126
- 예외가 발생한 REQUEST/RESPONSE에 대해서는 UUID를 저장한 로그를 남겨 어떤 엔드포인트에서 어떤 예외가 발생했는지 확인할 수 있습니다.
117127

118128
#### 📊 Prometheus, Grafana를 활용한 메트릭 모니터링
129+
119130
<img width="1468" height="805" alt="스크린샷 2025-11-06 오후 11 06 46" src="https://github.com/user-attachments/assets/983bea0c-1ac4-4cef-97d5-97b059dacffb" />
120131

121132
- Prometheus를 통해 Spring Boot 서버의 메트릭을 수집하고 Grafana를 통해서 시각화하여 대시보드를 제공합니다.
@@ -151,17 +162,10 @@ FestaPick은 **축제 참여자**와 **축제 관리자(주최측)** 모두가
151162
<img src="https://img.shields.io/badge/SockJS-1.6-2C3E50?style=for-the-badge" />
152163
</p>
153164

154-
155165
## 시스템 아키텍쳐
156166

157167
<img width="2614" height="1470" alt="Group 82" src="https://github.com/user-attachments/assets/87624179-0cde-4bed-b789-e3fd031770c8" />
158168

159-
160-
161-
162-
163-
164-
165169
## 팀원 소개
166170

167171
<div align="center">

src/pages/Festivals/components/FestivalCard.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,13 @@ interface FestivalCardProps {
88
data: Festival;
99
highlight?: boolean;
1010
}
11-
11+
/* 기존에는 서버에서 내려오는 축제의 종료일과 오늘 날짜를 비교하는 로직과의 차이에서
12+
* 서버에서 받은 날짜 문자열("YYYY-MM-DD")은 Date 객체 생성 시 KST 09:00:00으로 해석되는데 그대로 뺄셈을 진행해서 오류가 발생했었습니다.
13+
* 이를 해결하기 위해 종료일을 Date 객체로 생성 시 23:59:59로 초기화하여 하루 종일 "진행 중"으로 표시하도록 하였습니다.
14+
*/
1215
const isInProgress = (endDateData: string): boolean => {
13-
const endDate = new Date(endDateData);
16+
const [year, month, day] = endDateData.split('-').map(Number);
17+
const endDate = new Date(year, month - 1, day, 23, 59, 59);
1418
const today = new Date();
1519
const diffTime = endDate.getTime() - today.getTime();
1620
return diffTime >= 0;

0 commit comments

Comments
 (0)