Skip to content

Commit

Permalink
๐Ÿš€ [Deploy] - ํŒ€์› ๋žญํ‚น API ๊ธฐํš ์ˆ˜์ •์— ๋”ฐ๋ฅธ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ๋ฐ˜์˜ (#235)
Browse files Browse the repository at this point in the history
* ๐Ÿ› [Fix] - Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜ nickname ์ด์Šˆ ํ•ด๊ฒฐ (#205)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜ ์ค‘ ์ƒ๊ธด ์ด์Šˆ ํ•ด๊ฒฐ

* Fix: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜
 ์ค‘ ์ƒ๊ธด ์ด์Šˆ ํ•ด๊ฒฐ

* ๐Ÿ› [Fix] - Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜ (#207)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜ ์ค‘ ์ƒ๊ธด ์ด์Šˆ ํ•ด๊ฒฐ

* Fix: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜
 ์ค‘ ์ƒ๊ธด ์ด์Šˆ ํ•ด๊ฒฐ

* Fix: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜
 ์ค‘ ์ƒ๊ธด ์ด์Šˆ ํ•ด๊ฒฐ

* ๐Ÿ› [Fix] - Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜ nickname ์ด์Šˆ ํ•ด๊ฒฐ #51 (#209)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜ ์ค‘ ์ƒ๊ธด ์ด์Šˆ ํ•ด๊ฒฐ

* Fix: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜
 ์ค‘ ์ƒ๊ธด ์ด์Šˆ ํ•ด๊ฒฐ

* Fix: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ์ „ํ™˜
 ์ค‘ ์ƒ๊ธด ์ด์Šˆ ํ•ด๊ฒฐ

* Chore: ํ”„๋ก ํŠธ์—”๋“œ redirect url ์ˆ˜์ •

* Fix: ๋””์Šค์ฝ”๋“œ ์†Œ์…œ ๋กœ๊ทธ์ธ ์ด์Šˆ ํ•ด๊ฒฐ

* ๐Ÿ› [Fix] - ์†Œ์…œ ๋กœ๊ทธ์ธ ํ›„, ์ถ”๊ฐ€ ์ •๋ณด ์ž…๋ ฅ ๋ฐ›๋Š” ๊ธฐ๋Šฅ ์˜ค๋ฅ˜ (#212)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: updateUserInfo ์˜ค๋ฅ˜ ํ•ด๊ฒฐ

* Fix: ๋””์Šค์ฝ”๋“œ ์ „ํ™˜์œผ๋กœ ์ธํ•œ ์˜ค๋ฅ˜ ํ•ด๊ฒฐ

* ๐Ÿ› [Fix] - DiscordListener ์˜ค๋ฅ˜ ํ•ด๊ฒฐ (#214)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* Refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* Refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* Fix: ๋””์Šค์ฝ”๋“œ ์•„์ด๋”” ์ถ”๊ฐ€

* Fix: ๊ธฐ๋ณธ ํ”„๋กœํ•„ ์‚ฌ์ง„ ์ง€์ •

* Fix: serialId => discordId๋กœ ์ „ํ™˜

* Refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* ๐Ÿ› [Fix] - ๋ฐ›์€ ์งˆ๋ฌธ ํŒŒํŠธ ์˜ค๋ฅ˜ ํ•ด๊ฒฐ (#218)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: ๋กœ๊ทธ์ธ ์‚ฌ์šฉ์ž๊ฐ€ ํƒ€๊ฒŸ ๋ฉค๋ฒ„์™€ ์—ฐ๊ด€์ด ์—†์„ ๊ฒฝ์šฐ ์˜ˆ์™ธ์ฒ˜๋ฆฌ

* ๐Ÿ› [Fix] - ๋ฉค๋ฒ„ ์ •๋ณด API ์˜ˆ์™ธ์ฒ˜๋ฆฌ (#220)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: ๋กœ๊ทธ์ธ ์‚ฌ์šฉ์ž๊ฐ€ ํƒ€๊ฒŸ ๋ฉค๋ฒ„์™€ ์—ฐ๊ด€์ด ์—†์„ ๊ฒฝ์šฐ ์˜ˆ์™ธ์ฒ˜๋ฆฌ

* ๐Ÿ› [Fix] - ํŒ€ ๋ฉค๋ฒ„ ๋ชฉ๋ก ์กฐํšŒ ์˜ˆ์™ธ์ฒ˜๋ฆฌ (#223)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: ๋กœ๊ทธ์ธ ์‚ฌ์šฉ์ž๊ฐ€ ํ•ด๋‹น ํŒ€์›์ด ์•„๋‹ ๊ฒฝ์šฐ ์˜ˆ์™ธ์ฒ˜๋ฆฌ

* ๐Ÿ› [Fix] - ๋ฐ›์€ ์งˆ๋ฌธ ๋ชฉ๋ก ํŒŒํŠธ ์ด์Šˆ (#226)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: ์งˆ๋ฌธ์„ ๋‚˜์—๊ฒŒ ๋ณด๋‚ธ ์ƒ๋Œ€๋ฐฉ์˜ ํŒŒํŠธ๊ฐ€ ๋‹ค๋ฅด๊ฒŒ ๋œจ๋Š” ์ด์Šˆ ํ•ด๊ฒฐ

* ๐Ÿ› [Fix] - ๋ฐ›์€ ์งˆ๋ฌธ ๋ชฉ๋ก ํŒŒํŠธ ์ด์Šˆ (#229)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Fix: work ๊ธฐ์ค€์ด ์•„๋‹Œ, ๋‚ ์งœ์— work๊ฐ€ ์กด์žฌํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋กœ API ์ˆ˜์ •

* ๐Ÿ’… [Refactor] - ๋””์Šค์ฝ”๋“œ ๋ด‡ ๋‹ต๋ณ€ ๋ฌธ๊ตฌ ์˜คํƒ€ ์ˆ˜์ • (#232)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Refactor: ์˜คํƒ€ ์ˆ˜์ •

* โœจ [Feature] - ํŒ€์› ๋žญํ‚น API ๊ธฐํš ์ˆ˜์ •์— ๋”ฐ๋ฅธ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#234)

* refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* fix: Work ์ƒ์„ฑ ๋‚ ์งœ ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์„ค์ •

* fix: PeerReview์ผ ๊ฒฝ์šฐ ์ถ”๊ฐ€

* Chore: ํ”„๋กœ์ ํŠธ readme ๊พธ๋ฏธ๊ธฐ

* chore: README ์ˆ˜์ •

* Fix: ๋กœ๊ทธ์•„์›ƒ ์‹œ, ์ฟ ํ‚ค ์‚ญ์ œ ์ฝ”๋“œ ์ˆ˜์ •

* Refactor: ํ•„์š”์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ

* !HOTFIX: ๋ช…๋ น์–ด ์ด๋ฆ„ ์ˆ˜์ •์— ๋”ฐ๋ฅธ listener ์ฝ”๋“œ ์ˆ˜์ •

* Chore: DB ์ •๋ณด ์ˆ˜์ •

* Fix: JDA ๋กœ๊ทธ ์ •๋ณด ๊ธฐ๋ก ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Feat: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ตฌํ˜„

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Chore: Discord ์†Œ์…œ ๋กœ๊ทธ์ธ Credentials ์ถ”๊ฐ€

* Refactor: ์ฝ”๋“œ ์Šคํƒ€์ผ ์ˆ˜์ •

* Delete: ํ•„์š”์—†๋Š” ํŒŒ์ผ ์‚ญ์ œ

* Feat: ํŒ€ ์ž‘์—… ์ƒํƒœ API ๊ตฌํ˜„

* Feat: ํŒ€ ์ž‘์—… ์ƒํƒœ API ๊ตฌํ˜„

* Feat: ํŒ€ ์ž‘์—… ์ƒํƒœ API ๊ตฌํ˜„

* Feat: ํŒ€ ์ž‘์—… ์ƒํƒœ API ๊ตฌํ˜„

* Feat: ํŒ€์› ๋žญํ‚น API ๊ตฌํ˜„
  • Loading branch information
JeongHeumChoi authored Jul 27, 2024
1 parent 243b87b commit 39cd120
Show file tree
Hide file tree
Showing 11 changed files with 372 additions and 54 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,11 @@ public ResponseDto<?> getRanking(@UserId Long userId, @PathVariable Long teamsId
return ResponseDto.ok(workService.getRanking(userId, teamsId));
}

@GetMapping("/teams/{teamsId}/works/status")
public ResponseDto<?> getTeamWorkStatus(@UserId Long userId, @PathVariable Long teamsId) {
return ResponseDto.ok(workService.getTeamWorkStatus(userId, teamsId));
}

@GetMapping("/members/{membersId}/works")
public ResponseDto<?> listManageWork(@UserId Long userId, @PathVariable Long membersId) {
return ResponseDto.ok(workService.listManageWork(userId, membersId));
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package goormthon.team28.startup_valley.dto.response;

import com.fasterxml.jackson.annotation.JsonProperty;
import goormthon.team28.startup_valley.domain.Member;
import lombok.Builder;

import java.io.Serializable;

@Builder
public record MemberInfoDto(
@JsonProperty("memberId")
Long memberId,
@JsonProperty("nickname")
String nickname,
@JsonProperty("profileImage")
String profileImage
) implements Serializable {
public static MemberInfoDto of(final Member member) {
return MemberInfoDto.builder()
.memberId(member.getId())
.nickname(member.getUser().getNickname())
.profileImage(member.getUser().getProfileImage().getName())
.build();
}
}
Original file line number Diff line number Diff line change
@@ -1,33 +1,37 @@
package goormthon.team28.startup_valley.dto.response;

import com.fasterxml.jackson.annotation.JsonProperty;
import goormthon.team28.startup_valley.dto.type.EProfileImage;
import lombok.Builder;

import java.io.Serializable;
import java.util.List;

@Builder
public record RankingDto(
@JsonProperty("memberId")
Long memberId,
@JsonProperty("nickname")
String nickname,
@JsonProperty("profileImage")
String profileImage,
@JsonProperty("totalTime")
Long totalTime
@JsonProperty("workedDate")
List<RankingElementDto> workedDate,
@JsonProperty("workedTime")
List<RankingElementDto> workedTime,
@JsonProperty("questionTimes")
List<RankingElementDto> questionTimes,
@JsonProperty("fastAnswered")
List<RankingElementDto> fastAnswered,
@JsonProperty("detailedBacklog")
List<RankingElementDto> detailedBacklog
) implements Serializable {
public static RankingDto of(
final Long memberId,
final String nickname,
final EProfileImage eProfileImage,
final Long totalTime
final List<RankingElementDto> workedDate,
final List<RankingElementDto> workedTime,
final List<RankingElementDto> questionTimes,
final List<RankingElementDto> fastAnswered,
final List<RankingElementDto> detailedBacklog
) {
return RankingDto.builder()
.memberId(memberId)
.nickname(nickname)
.profileImage(eProfileImage.getName())
.totalTime(totalTime)
.workedDate(workedDate)
.workedTime(workedTime)
.questionTimes(questionTimes)
.fastAnswered(fastAnswered)
.detailedBacklog(detailedBacklog)
.build();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package goormthon.team28.startup_valley.dto.response;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Builder;

import java.io.Serializable;

@Builder
public record RankingElementDto(
@JsonProperty("memberInfo")
MemberInfoDto memberInfoDto,
@JsonProperty("number")
Long number
) implements Serializable {
public static RankingElementDto of(
final MemberInfoDto memberInfoDto,
final Long number
) {
return RankingElementDto.builder()
.memberInfoDto(memberInfoDto)
.number(number)
.build();
}
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package goormthon.team28.startup_valley.dto.response;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Builder;
import org.springframework.lang.Nullable;

import java.io.Serializable;
import java.util.List;

@Builder
public record TeamWorkStatusDto (
@JsonProperty("startDate")
String startDate,
@JsonProperty("endDate")
String endDate,
@JsonProperty("currentWorkerList")
List<UserDto> currentWorkerList,
@Nullable
@JsonProperty("latestWork")
String latestWork,
@JsonProperty("projectName")
String projectName
) implements Serializable {
public static TeamWorkStatusDto of(
final String startDate,
final String endDate,
final List<UserDto> currentWorkerList,
final String latestWork,
final String projectName
) {
return TeamWorkStatusDto.builder()
.startDate(startDate)
.endDate(endDate)
.currentWorkerList(currentWorkerList)
.latestWork(latestWork)
.projectName(projectName)
.build();
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;

import java.time.LocalDate;
import java.util.List;
import java.util.Optional;

Expand All @@ -19,19 +20,109 @@ public interface MemberRepository extends JpaRepository<Member, Long> {
Boolean existsByUserAndTeam(User user, Team team);
List<Member> findAllByTeam(Team team);
List<Member> findAllByTeamAndPart(Team team, EPart part);
List<Member> findAllByTeamOrderByTotalMinuteDesc(Team team);
List<Member> findAllByUser(User user);
Optional<Member> findByTeamAndUser(Team team, User user);

@Modifying(clearAutomatically = true)
@Query("update Member m set m.totalMinute = :totalMinute where m.id = :memberId")
void updateTotalMinute(Long memberId, Long totalMinute);

@Modifying(clearAutomatically = true)
@Query("update Member m set m.part = :part where m.id = :memberId")
void updatePart(Long memberId, EPart part);

@Modifying(clearAutomatically = true)
@Query("update Member m set m.peerReviewSummary = :summary where m.id = :memberId")
void updateReviewSummary(Long memberId, String summary);

@Modifying(clearAutomatically = true)
@Query("update Member m set m.retrospection = :retrospection where m.id = :memberId")
void updateRetrospection(Long memberId, String retrospection);

@Query(
value = "SELECT m.id, " +
"COALESCE(w.counts, 0) " +
"FROM members m " +
"LEFT JOIN (" +
"SELECT w.member_id, COUNT(DISTINCT DATE(w.end_at)) AS counts " +
"FROM works w " +
"WHERE w.end_at IS NOT NULL " +
"AND DATE(w.end_at) >= :startDate " +
"GROUP BY w.member_id" +
") AS w ON m.id = w.member_id " +
"WHERE m.team_id = :teamId " +
"ORDER BY counts DESC " +
"LIMIT 2",
nativeQuery = true
)
List<Object[]> findAllByTeamAndStartDateOrderByWorkDay(Long teamId, LocalDate startDate);

@Query(
value = "SELECT m.id, " +
"COALESCE(w.times, 0) " +
"FROM members m " +
"LEFT JOIN (" +
"SELECT w.member_id, SUM(timestampdiff(minute, w.start_at, w.end_at)) AS times " +
"FROM works w " +
"WHERE w.end_at IS NOT NULL " +
"AND DATE(w.end_at) >= :startDate " +
"GROUP BY w.member_id" +
") AS w ON m.id = w.member_id " +
"WHERE m.team_id = :teamId " +
"ORDER BY times DESC " +
"LIMIT 2",
nativeQuery = true
)
List<Object[]> findByAllByTeamAndStartDateOrderByWorkTime(Long teamId, LocalDate startDate);

@Query(
value = "SELECT m.id, " +
"COALESCE(q.counts, 0) " +
"FROM members m " +
"LEFT JOIN (" +
"SELECT q.sender_id, COUNT(DATE(q.created_at)) AS counts " +
"FROM questions q " +
"WHERE DATE(q.created_at) >= :startDate " +
"GROUP BY q.sender_id" +
") AS q ON m.id = q.sender_id " +
"WHERE m.team_id = :teamId " +
"ORDER BY counts DESC " +
"LIMIT 2",
nativeQuery = true
)
List<Object[]> findByAllByTeamAndStartDateOrderByQuestionTimes(Long teamId, LocalDate startDate);

@Query(
value = "SELECT m.id, " +
"COALESCE(a.counts, 0) " +
"FROM members m " +
"LEFT JOIN (" +
"SELECT a.member_id, COUNT(DATE(a.created_at)) AS counts " +
"FROM answers a " +
"WHERE DATE(a.created_at) >= :startDate " +
"GROUP BY a.member_id" +
") AS a ON m.id = a.member_id " +
"WHERE m.team_id = :teamId " +
"ORDER BY counts DESC " +
"LIMIT 2",
nativeQuery = true
)
List<Object[]> findByAllByTeamAndStartDateOrderByFastAnswered(Long teamId, LocalDate startDate);

@Query(
value = "SELECT m.id, " +
"COALESCE(w.len, 0) " +
"FROM members m " +
"LEFT JOIN (" +
"SELECT w.member_id, SUM(LENGTH(w.content)) AS len " +
"FROM works w " +
"WHERE DATE(w.end_at) >= :startDate " +
"GROUP BY w.member_id" +
") AS w ON m.id = w.member_id " +
"WHERE m.team_id = :teamId " +
"ORDER BY len DESC " +
"LIMIT 2",
nativeQuery = true
)
List<Object[]> findByAllByTeamAndStartDateOrderByDetailedBacklog(Long teamId, LocalDate startDate);
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

import goormthon.team28.startup_valley.domain.User;
import goormthon.team28.startup_valley.dto.type.ERole;
import org.springframework.data.domain.Example;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;

import java.util.List;
import java.util.Optional;

public interface UserRepository extends JpaRepository<User, Long> {
Expand All @@ -23,6 +23,23 @@ public interface UserRepository extends JpaRepository<User, Long> {
boolean existsByDiscordId(String discordId);
boolean existsByIdAndNicknameIsNull(Long id);

@Query(
value = "SELECT DISTINCT u.* " +
"FROM users u " +
"INNER JOIN members m ON u.id = m.user_id " +
"WHERE m.id IN (" +
"SELECT w.member_id " +
"FROM works w " +
"WHERE w.end_at IS NULL " +
"AND w.member_id IN (" +
"SELECT m.id " +
"FROM members m " +
"WHERE m.team_id = :teamId " +
"))",
nativeQuery = true
)
List<User> findByNowWorking(Long teamId);

interface UserSecurityForm {
Long getId();
ERole getRole();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,16 @@ public interface WorkRepository extends JpaRepository<Work, Long> {
List<Work> findAllByScrumOrderByEndAtDesc(Scrum scrum);
List<Work> findAllByScrum(Scrum scrum);

@Query(
value = "SELECT w.content " +
"FROM works w " +
"WHERE member_id = :memberId " +
"ORDER BY w.end_at DESC " +
"LIMIT 1",
nativeQuery = true
)
Optional<String> findByMemberAndLatestDate(Long memberId);

@Modifying(clearAutomatically = true)
@Query("update Work w set w.content = :content, w.endAt = :now where w.id = :workId")
void updateWorkAfterOver(Long workId, String content, LocalDateTime now);
Expand Down
Loading

0 comments on commit 39cd120

Please sign in to comment.