diff --git a/README.md b/README.md index b340776..76a08a1 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ๐ŸŽ‰ ๋ชจ๋‘๊ฐ€ ํ•จ๊ป˜ ๋งŒ๋“ค์–ด๊ฐ€๋Š” ์ถ•์ œ ํ”Œ๋žซํผ ๐ŸŽŠ - FestaPick_hero_image ## ์†Œ๊ฐœ -FestaPick์€ **์ถ•์ œ ์ฐธ์—ฌ์ž**์™€ **์ถ•์ œ ๊ด€๋ฆฌ์ž(์ฃผ์ตœ์ธก)** ๋ชจ๋‘๊ฐ€ ํ•จ๊ป˜ ์“ฐ๋Š” ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. + +FestaPick์€ **์ถ•์ œ ์ฐธ์—ฌ์ž**์™€ **์ถ•์ œ ๊ด€๋ฆฌ์ž(์ฃผ์ตœ์ธก)** ๋ชจ๋‘๊ฐ€ ํ•จ๊ป˜ ์“ฐ๋Š” ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. - ๐Ÿ’ฌ ์ถ•์ œ๋ณ„ ์ฑ„ํŒ…๋ฐฉ์„ ํ†ตํ•ด ์ฐธ์—ฌ์ž ๊ฐ„ ์ •๋ณด ๊ณต์œ  - ๐Ÿงญ ์—ฌํ–‰ MBTI ์ž…๋ ฅ์œผ๋กœ ์‚ฌ์šฉ์ž ๋งž์ถค ์ถ•์ œ ์ถ”์ฒœ @@ -46,76 +47,86 @@ FestaPick์€ **์ถ•์ œ ์ฐธ์—ฌ์ž**์™€ **์ถ•์ œ ๊ด€๋ฆฌ์ž(์ฃผ์ตœ์ธก)** ๋ชจ๋‘๊ฐ€ ### ๐Ÿ‘ค ์‚ฌ์šฉ์ž ๊ธฐ๋Šฅ -#### ๐ŸŽฏ ์„ฑํ–ฅ ๊ธฐ๋ฐ˜ ์ถ•์ œ ๋งž์ถค ์ถ”์ฒœ +#### ๐ŸŽฏ ์„ฑํ–ฅ ๊ธฐ๋ฐ˜ ์ถ•์ œ ๋งž์ถค ์ถ”์ฒœ +

์„ฑํ–ฅ ์ถ”์ฒœ 1

-- ์ง€๋„์— ์žˆ๋Š” ํ”ฝํ”ฝ(PickPick)์„ ์„ ํƒํ•ด ์ง€์—ญ์„ ์„ค์ •ํ•˜๊ณ , ์—ฌํ–‰ MBTI๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์‚ฌ์šฉ์ž์˜ ์„ฑํ–ฅ์— ๋งž๋Š” ์ถ•์ œ๋ฅผ ์ถ”์ฒœ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -- ์ถ”์ฒœ๋ฐ›์€ ์ถ•์ œ ์ค‘ ๋งˆ์Œ์— ๋“œ๋Š” ์ถ•์ œ๋ฅผ ํด๋ฆญํ•˜๋ฉด ์ƒ์„ธ ์ •๋ณด๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ์ง€๋„์— ์žˆ๋Š” ํ”ฝํ”ฝ(PickPick)์„ ์„ ํƒํ•ด ์ง€์—ญ์„ ์„ค์ •ํ•˜๊ณ , ์—ฌํ–‰ MBTI๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์‚ฌ์šฉ์ž์˜ ์„ฑํ–ฅ์— ๋งž๋Š” ์ถ•์ œ๋ฅผ ์ถ”์ฒœ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ์ถ”์ฒœ๋ฐ›์€ ์ถ•์ œ ์ค‘ ๋งˆ์Œ์— ๋“œ๋Š” ์ถ•์ œ๋ฅผ ํด๋ฆญํ•˜๋ฉด ์ƒ์„ธ ์ •๋ณด๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. + +#### โค๏ธ ์ข‹์•„์š” / ๋ฆฌ๋ทฐ ์ž‘์„ฑ -#### โค๏ธ ์ข‹์•„์š” / ๋ฆฌ๋ทฐ ์ž‘์„ฑ

์ข‹์•„์š”/๋ฆฌ๋ทฐ

-- ๋งˆ์Œ์— ๋“œ๋Š” ์ถ•์ œ๋Š” ์ข‹์•„์š”๋ฅผ ๋ˆŒ๋Ÿฌ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ๋งˆ์Œ์— ๋“œ๋Š” ์ถ•์ œ๋Š” ์ข‹์•„์š”๋ฅผ ๋ˆŒ๋Ÿฌ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ๋‹ค๋…€์˜จ ์ถ•์ œ์— ๋Œ€ํ•ด์„œ๋Š” ๋ฆฌ๋ทฐ๋ฅผ ์ž‘์„ฑํ•ด ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์™€ ๊ฒฝํ—˜์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - -#### ๐Ÿ’ฌ ์ฑ„ํŒ… / ์ฑ„ํŒ… ์•Œ๋žŒ ๊ธฐ๋Šฅ + +#### ๐Ÿ’ฌ ์ฑ„ํŒ… / ์ฑ„ํŒ… ์•Œ๋žŒ ๊ธฐ๋Šฅ +

์ฑ„ํŒ… 1 ์ฑ„ํŒ… 2

-- ๊ฐ ์ถ•์ œ๋ณ„ ์ฑ„ํŒ…๋ฐฉ์—์„œ ์ฐธ์—ฌ์ž๋“ค๊ณผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -- ๋งˆ์ดํŽ˜์ด์ง€์—์„œ๋Š” ์ฐธ์—ฌ ์ค‘์ธ ์ฑ„ํŒ…๋ฐฉ์˜ ์•Œ๋ฆผ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ๊ฐ ์ถ•์ œ๋ณ„ ์ฑ„ํŒ…๋ฐฉ์—์„œ ์ฐธ์—ฌ์ž๋“ค๊ณผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ๋งˆ์ดํŽ˜์ด์ง€์—์„œ๋Š” ์ฐธ์—ฌ ์ค‘์ธ ์ฑ„ํŒ…๋ฐฉ์˜ ์•Œ๋ฆผ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ### ๐Ÿงฉ ๊ด€๋ฆฌ์ž ๊ธฐ๋Šฅ -#### ๐Ÿง‘โ€๐Ÿ’ผ ์ถ•์ œ ๊ด€๋ฆฌ์ž ๋“ฑ์—… ์‹ ์ฒญ +#### ๐Ÿง‘โ€๐Ÿ’ผ ์ถ•์ œ ๊ด€๋ฆฌ์ž ๋“ฑ์—… ์‹ ์ฒญ +

๊ด€๋ฆฌ์ž ๋“ฑ์—… ์‹ ์ฒญ

-- ์ถ•์ œ๋ฅผ ์ง์ ‘ ๊ด€๋ฆฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๊ด€๋ฆฌ์ž ๋“ฑ์—…์„ ์‹ ์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -- ์‹ ์ฒญ ์‹œ ์†Œ์† ์ •๋ณด์™€ ๊ด€๋ จ ์„œ๋ฅ˜๋ฅผ ์ œ์ถœํ•ฉ๋‹ˆ๋‹ค. +- ์ถ•์ œ๋ฅผ ์ง์ ‘ ๊ด€๋ฆฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๊ด€๋ฆฌ์ž ๋“ฑ์—…์„ ์‹ ์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ์‹ ์ฒญ ์‹œ ์†Œ์† ์ •๋ณด์™€ ๊ด€๋ จ ์„œ๋ฅ˜๋ฅผ ์ œ์ถœํ•ฉ๋‹ˆ๋‹ค. - Admin ์Šน์ธ ํ›„ ๋“ฑ์—… ์—ฌ๋ถ€๊ฐ€ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค. -#### ๐Ÿ›‚ ๋“ฑ๋ก๋œ ์ถ•์ œ์— ๋Œ€ํ•œ ๊ด€๋ฆฌ์ž ์‹ ์ฒญ +#### ๐Ÿ›‚ ๋“ฑ๋ก๋œ ์ถ•์ œ์— ๋Œ€ํ•œ ๊ด€๋ฆฌ์ž ์‹ ์ฒญ +

๊ธฐ์กด ์ถ•์ œ ๊ด€๋ฆฌ์ž ์‹ ์ฒญ

-- ๊ด€๊ด‘๊ณต์‚ฌ(TourAPI)์— ๋“ฑ๋ก๋œ ์ถ•์ œ์— ๋Œ€ํ•ด ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์„ ์‹ ์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -- Admin ์Šน์ธ ํ›„, ํ•ด๋‹น ์ถ•์ œ์— ๋Œ€ํ•œ ์ˆ˜์ •ยท์‚ญ์ œยท๊ณต์ง€์‚ฌํ•ญ ๋“ฑ๋ก ๊ถŒํ•œ์„ ํš๋“ํ•ฉ๋‹ˆ๋‹ค. +- ๊ด€๊ด‘๊ณต์‚ฌ(TourAPI)์— ๋“ฑ๋ก๋œ ์ถ•์ œ์— ๋Œ€ํ•ด ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์„ ์‹ ์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- Admin ์Šน์ธ ํ›„, ํ•ด๋‹น ์ถ•์ œ์— ๋Œ€ํ•œ ์ˆ˜์ •ยท์‚ญ์ œยท๊ณต์ง€์‚ฌํ•ญ ๋“ฑ๋ก ๊ถŒํ•œ์„ ํš๋“ํ•ฉ๋‹ˆ๋‹ค. + +#### ๐Ÿ“ ๋‚˜์˜ ์ถ•์ œ ๋“ฑ๋กํ•˜๊ธฐ -#### ๐Ÿ“ ๋‚˜์˜ ์ถ•์ œ ๋“ฑ๋กํ•˜๊ธฐ

๋‚˜์˜ ์ถ•์ œ ๋“ฑ๋ก

-- ์ถ•์ œ ๊ด€๋ฆฌ์ž๋Š” ์ƒˆ๋กœ์šด ์ถ•์ œ๋ฅผ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -- ๋“ฑ๋ก๋œ ์ถ•์ œ๋Š” Admin์˜ ์Šน์ธ ํ›„ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋…ธ์ถœ๋ฉ๋‹ˆ๋‹ค. +- ์ถ•์ œ ๊ด€๋ฆฌ์ž๋Š” ์ƒˆ๋กœ์šด ์ถ•์ œ๋ฅผ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ๋“ฑ๋ก๋œ ์ถ•์ œ๋Š” Admin์˜ ์Šน์ธ ํ›„ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋…ธ์ถœ๋ฉ๋‹ˆ๋‹ค. + +#### ๐Ÿ—‚๏ธ ๋“ฑ๋ก ์ถ•์ œ ๊ด€๋ฆฌ -#### ๐Ÿ—‚๏ธ ๋“ฑ๋ก ์ถ•์ œ ๊ด€๋ฆฌ

๋“ฑ๋ก ์ถ•์ œ ๊ด€๋ฆฌ

-- ์ž์‹ ์ด ๋“ฑ๋กํ•œ ์ถ•์ œ์— ๋Œ€ํ•ด ๊ณต์ง€์‚ฌํ•ญ์„ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -- ์ถ•์ œ ์ •๋ณด๋ฅผ ์ˆ˜์ • ๋ฐ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ์ž์‹ ์ด ๋“ฑ๋กํ•œ ์ถ•์ œ์— ๋Œ€ํ•ด ๊ณต์ง€์‚ฌํ•ญ์„ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. +- ์ถ•์ œ ์ •๋ณด๋ฅผ ์ˆ˜์ • ๋ฐ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. --- ## ๋ชจ๋‹ˆํ„ฐ๋ง + #### ๐Ÿ”Ž ELK(ElasticSearch, Logstash, Kibana), Filebeat๋ฅผ ํ™œ์šฉํ•œ ๋กœ๊ทธ ๋ชจ๋‹ˆํ„ฐ๋ง + image - ๋กœ๊ทธ๋ฅผ ์ง์ ‘ ์„œ๋ฒ„ ์ธ์Šคํ„ด์Šค์— ์ ‘์†ํ•ด์„œ ํ™•์ธํ•˜๋Š”๊ฒŒ ์•„๋‹Œ ์ „๋ฌธ ๊ฒ€์ƒ‰์„ ํ†ตํ•ด์„œ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•œ REQUEST/RESPONSE์— ๋Œ€ํ•ด์„œ๋Š” UUID๋ฅผ ์ €์žฅํ•œ ๋กœ๊ทธ๋ฅผ ๋‚จ๊ฒจ ์–ด๋–ค ์—”๋“œํฌ์ธํŠธ์—์„œ ์–ด๋–ค ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. #### ๐Ÿ“Š Prometheus, Grafana๋ฅผ ํ™œ์šฉํ•œ ๋ฉ”ํŠธ๋ฆญ ๋ชจ๋‹ˆํ„ฐ๋ง + แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2025-11-06 แ„‹แ…ฉแ„’แ…ฎ 11 06 46 - Prometheus๋ฅผ ํ†ตํ•ด Spring Boot ์„œ๋ฒ„์˜ ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•˜๊ณ  Grafana๋ฅผ ํ†ตํ•ด์„œ ์‹œ๊ฐํ™”ํ•˜์—ฌ ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. @@ -151,17 +162,10 @@ FestaPick์€ **์ถ•์ œ ์ฐธ์—ฌ์ž**์™€ **์ถ•์ œ ๊ด€๋ฆฌ์ž(์ฃผ์ตœ์ธก)** ๋ชจ๋‘๊ฐ€

- ## ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ณ Group 82 - - - - - - ## ํŒ€์› ์†Œ๊ฐœ
diff --git a/src/pages/Festivals/components/FestivalCard.tsx b/src/pages/Festivals/components/FestivalCard.tsx index fc45a67..cd747be 100644 --- a/src/pages/Festivals/components/FestivalCard.tsx +++ b/src/pages/Festivals/components/FestivalCard.tsx @@ -8,9 +8,13 @@ interface FestivalCardProps { data: Festival; highlight?: boolean; } - +/* ๊ธฐ์กด์—๋Š” ์„œ๋ฒ„์—์„œ ๋‚ด๋ ค์˜ค๋Š” ์ถ•์ œ์˜ ์ข…๋ฃŒ์ผ๊ณผ ์˜ค๋Š˜ ๋‚ ์งœ๋ฅผ ๋น„๊ตํ•˜๋Š” ๋กœ์ง๊ณผ์˜ ์ฐจ์ด์—์„œ + * ์„œ๋ฒ„์—์„œ ๋ฐ›์€ ๋‚ ์งœ ๋ฌธ์ž์—ด("YYYY-MM-DD")์€ Date ๊ฐ์ฒด ์ƒ์„ฑ ์‹œ KST 09:00:00์œผ๋กœ ํ•ด์„๋˜๋Š”๋ฐ ๊ทธ๋Œ€๋กœ ๋บ„์…ˆ์„ ์ง„ํ–‰ํ•ด์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. + * ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ข…๋ฃŒ์ผ์„ Date ๊ฐ์ฒด๋กœ ์ƒ์„ฑ ์‹œ 23:59:59๋กœ ์ดˆ๊ธฐํ™”ํ•˜์—ฌ ํ•˜๋ฃจ ์ข…์ผ "์ง„ํ–‰ ์ค‘"์œผ๋กœ ํ‘œ์‹œํ•˜๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค. + */ const isInProgress = (endDateData: string): boolean => { - const endDate = new Date(endDateData); + const [year, month, day] = endDateData.split('-').map(Number); + const endDate = new Date(year, month - 1, day, 23, 59, 59); const today = new Date(); const diffTime = endDate.getTime() - today.getTime(); return diffTime >= 0;