Giter Club home page Giter Club logo

dimigoin-back-v3's Introduction

DIMIGOin Backend V3

Docker Build and Deploy Test Express Application

๊ฐœ๋ฐœ ์„œ๋ฒ„ ์‹คํ–‰ ๋ฐฉ๋ฒ•

  1. ํŒ€ ๋…ธ์…˜์— ์žˆ๋Š” .env ํŒŒ์ผ์„ ํ”„๋กœ์ ํŠธ ์ตœ์ƒ๋‹จ์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  2. ์˜์กด์„ฑ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. yarn install
  3. ๊ฐœ๋ฐœ ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. yarn dev

ํ”„๋กœ๋•์…˜ ๋ฐฐํฌ ๋ฐฉ๋ฒ•

  1. ๋„์ปค ํ—ˆ๋ธŒ์—์„œ ์ตœ์‹  ๋„์ปค ์ด๋ฏธ์ง€๋ฅผ ๋‚ด๋ ค๋ฐ›์Šต๋‹ˆ๋‹ค. docker pull dimigoin/dimigoin-server:latest
  2. ๊ธฐ์กด์— ์‹คํ–‰ ์ค‘์ด๋˜ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ ์ค‘์ง€ ๋ฐ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. docker rm -f dimigoin-server-prod
  3. ๋‚ด๋ ค๋ฐ›์€ ๋„์ปค ์ด๋ฏธ์ง€๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. docker run --name <์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„> --env-file <dotenv ํŒŒ์ผ ๊ฒฝ๋กœ> -p <์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€ ํฌํŠธ>:<์™ธ๋ถ€์— ๋…ธ์ถœํ•  ํฌํŠธ> -d dimigoin/dimigoin-server .env ํŒŒ์ผ์€ ํŒ€ ๋…ธ์…˜์„ ์ฐธ๊ณ ํ•ด /etc ๋””๋ ‰ํ„ฐ๋ฆฌ์— ๋ณด๊ด€ํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.

dimigoin-back-v3's People

Contributors

omh02033 avatar cokia avatar fxxntrbl avatar rycont avatar dependabot[bot] avatar chalkpe avatar minseunghyun avatar whguswo avatar doch2 avatar changemin avatar junhoyeo avatar seungminio avatar craftydragon678 avatar krisamin avatar

Stargazers

 avatar  avatar Harry Kwon avatar  avatar Hyeonmyeong Joo avatar MINYONG avatar  avatar ์ž„์„ธํ˜„(skeat) avatar Sangjin avatar ๋ฏผ์œ  avatar Soohyun Choi avatar  avatar Minsung avatar Euiseo Cha avatar Sunghyun Cho avatar  avatar  avatar  avatar  avatar ์—„์„œํ›ˆ avatar kidevelop avatar

Watchers

James Cloos avatar ๋ฏผ์œ  avatar

dimigoin-back-v3's Issues

๋‹ฌ๊ทธ๋ฝ ๊ฒฝ๊ณ  ๋ถˆ๋Ÿฌ์˜ค๊ธฐ API(GET /dalgeurak/warning) ์‘๋‹ต ํ˜•์‹ ์˜ค๋ฅ˜

GET /dalgeurak/warning API ์‚ฌ์šฉ์‹œ์— ์‘๋‹ต ๋ฐ์ดํ„ฐ ๋ฐ˜ํ™˜์ด ๋ฆฌ์ŠคํŠธ ํ˜•ํƒœ๋กœ ๋˜์–ด์•ผ ํ•จ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๋งจ ์ฒ˜์Œ์— ๋“ฑ๋ก๋œ ๊ฒฝ๊ณ  ํ•œ๊ฐœ๋งŒ ๋ฐ˜ํ™˜๋˜๋Š” ์˜ค๋ฅ˜๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

classLog response ํ˜•์‹

{ "logs": { "3410 OOO": [], "3413 OOO": [], "3427 OOO": [], "3419 OOO": [], "3429 OOO": [] } }

๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ฐ์ดํ„ฐ ๊ฐ€๊ณตํ•˜๊ธฐ๊ฐ€ ์ข€ ํž˜๋“ค์–ด์„œ

{ "logs": [ {"3410 OOO": [ ]}, {"3413 OOO": [ ]}, {"3414 OOO": [ ]}, {"3415 OOO": [ ]}, {"3420 OOO": [ ]} ] }

๋ฐฐ์—ด์•ˆ์— ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์–ด์ฃผ์Ž„์˜ ~

๋™์•„๋ฆฌ ์‹ ์ฒญ / ๊ฐœ์„ค ๋ฐฉ์‹ ๊ฐœ์„  ์ œ์•ˆ

๋””๋ฏธ๊ณ  ํŠน์„ฑ์ƒ

  • ์ผ๋ฐ˜๋™์•„๋ฆฌ
  • ์ฐฝ์—…๋™์•„๋ฆฌ

์ด 2๊ฐœ์˜ ๋™์•„๋ฆฌ ์ง€์›์„ ๋ฐ›๊ณ ์žˆ๊ณ , ์ด๋ฅผ ์œ„ํ•ด ๋งค๋ฒˆ ์„ ๋ฐœํ• ๋•Œ๋งˆ๋‹ค ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋ž˜์„œ ์ด๋ฅผ ๋ฐฑ์—”๋“œ์ƒ์—์„œ ๊ตฌ๋ถ„ํ•˜๋Š”๊ฒƒ์„ ์ œ์•ˆํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.
(type๊ณผ ๊ฐ™์€ field๋ฅผ ๋งŒ๋“ค์–ด์„œ ์‹ ์ฒญ์ฃผ๊ธฐ๋‚˜ ์‹ ์ฒญ ํผ๋“ฑ์„ ๋”ฐ๋กœ ๊ด€๋ฆฌํ•˜๋ฉด ์ข‹์„ ๋“ฏ ํ•ฉ๋‹ˆ๋‹ค)

์ถ”๊ฐ€์ ์œผ๋กœ ์ง€๊ธˆ์€ ํ•ด๋…„๋งˆ๋‹ค ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œ๋ฅผ ํ•˜๊ณ ์žˆ๋Š”๋ฐ, season ํ•„๋“œ๋ฅผ ์‹ ์ฒญ์„œ / ๋™์•„๋ฆฌ์— ์ถ”๊ฐ€ํ•˜์—ฌ์„œ
๊ตณ์ด ๋™์•„๋ฆฌ๋‚˜ ์‹ ์ฒญ์„œ๋ฅผ ์‚ญ์ œํ•˜์ง€์•Š๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ์ง„ํ–‰ํ•˜๋Š”๊ฒƒ๋„ ๊ดœ์ฐฎ์„๊ฒƒ์ด๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

Ingang Application Exporter

Exporter ๋‚ด๋ถ€์—์„œ Ingang Application ์กฐํšŒํ•˜๋„๋ก ๋ฆฌํŒฉํ„ฐ๋ง ํ•ด์•ผ ํ•จ

classLog response

์œ„์น˜๋ฅผ ๋ฐ”๊พผ ๋กœ๊ทธ๊ฐ€ ๋น„์–ด์žˆ๋”๋ผ๋„ ๊ต์‹ค ๋‚ด ํ•™์ƒ๋“ค ๋ช…๋‹จ ๋ณด๋‚ด์ค„ ์ˆ˜ ์žˆ์„๊นŒ์šฅ ~?

์™ธ์ถœ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ

  • ์™ธ์ถœ ๋ชจ๋ธ ๊ฐœ๋ฐœ

๊ต์‚ฌ์šฉ

  • ์„ ํƒ๊ธฐ๊ฐ„์— ๋Œ€ํ•œ ์™ธ์ถœ ๋ฐ์ดํ„ฐ ์ „์ฒด ์ถœ๋ ฅ ํ•จ์ˆ˜

  • ๋ณธ์ธ(๊ต์‚ฌ)์—๊ฒŒ ํ• ๋‹น๋œ ์•„์ง ์Šน์ธ๋˜์ง€์•Š์€ ์™ธ์ถœ ์‹ ์ฒญ ์š”์ฒญ ์ „์ฒด ์ถœ๋ ฅ ํ•จ์ˆ˜

ํ•™์ƒ์šฉ

  • ์™ธ์ถœ ์‹ ์ฒญ

  • ๋‚ด ์™ธ์ถœ์‹ ์ฒญ ๋ณด๊ธฐ

  • ์™ธ์ถœ์‹ ์ฒญ ์‚ญ์ œ

Cronjob doesn't work in server env

์‹œ๊ฐ„ํ‘œ ๊ฐฑ์‹  ๋“ฑ์˜ ํฌ๋ก  ์žก์ด ์„œ๋ฒ„์—์„œ๋Š” ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰์ด ์•ˆ ๋˜๊ณ  ์žˆ์Œ

POST /exception/give API ์ ‘๊ทผ ๊ถŒํ•œ ์˜ค๋ฅ˜

POST /exception/give API(๊ต์‚ฌ๋งŒ ํ˜ธ์ถœ ๊ฐ€๋Šฅํ•œ API) ํ˜ธ์ถœ ์‹œ ๊ต์‚ฌ ๊ณ„์ •์ธ๋ฐ๋„ ๋ถˆ๊ตฌํ•˜๊ณ  'ํ•™์ƒ๋งŒ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋ผ์šฐํŠธ์ž…๋‹ˆ๋‹ค' ๋ฐ˜ํ™˜์ด ๋˜๋ฉด์„œ ์ •์ƒ ์ž‘๋™์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

POST /exception/ticket API ์‚ฌ์šฉ ์‹œ ํ•„์ˆ˜ ํŒŒ๋ผ๋ฏธํ„ฐ ์„ค์ • ์˜ค๋ฅ˜

POST /exception/ticket API๋Š” ์„ ๋ฐฅ๊ถŒ ์‚ฌ์šฉ ๊ธฐ๋Šฅ์ด๋ผ ์ด์œ ๋ฅผ ์ž‘์„ฑํ•  ํ•„์š”๊ฐ€ ์—†๋Š”๋ฐ๋„ ๋ถˆ๊ตฌํ•˜๊ณ , API ํ˜ธ์ถœ ์‹œ "reason" data๋ฅผ ํ•„์ˆ˜๋กœ ๋„ฃ์–ด์•ผ ํ•œ๋‹ค๋ฉฐ ์ •์ƒ ์ž‘๋™์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ธ๊ฐ•์‹ค ์‹ ์ฒญ ๋ชจ๋“ˆ์—์„œ ์˜ค๋ฅ˜ ๋ฐœ์ƒ

/ingang-application/time/NSS1
ํ•ด๋‹น๋ผ์šฐํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ด ์ธ๊ฐ•์‹ค ์‹ ์ฒญ์„ ํ•˜๋˜ ์ค‘ ์˜ค๋ฅ˜๋ฅผ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. (with @rycont)

์ด ๋‘๊ฐ€์ง€ ์˜ค๋ฅ˜๊ฐ€ ์ค‘์ฒฉ๋œ๊ฒƒ์œผ๋กœ ํŒŒ์•…๋˜๋Š”๋ฐ,
์ฒซ๋ฒˆ์งธ๋Š”
https://github.com/dimigoin/dimigoin-back-v3/blob/19fe5a621444b91921520d66937c5f0fe0b75dc1/src/models/ingang-application.ts#L20
์—์„œ this ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค์ง€ ๋ชปํ•˜๋Š” ์ƒํ™ฉ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ž„์‹œ๋กœ this ๋Œ€์‹  'IngangApplicationModel' ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ํ•ด๋‹น ๋ฌธ์ œ๋Š” ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅํ•œ๊ฒƒ์œผ๋กœ ํŒŒ์•…์ด ๋ฉ๋‹ˆ๋‹ค.

๋‘๋ฒˆ์งธ๋Š”
https://github.com/dimigoin/dimigoin-back-v3/blob/19fe5a621444b91921520d66937c5f0fe0b75dc1/src/models/ingang-application.ts#L22
์œ„์— findOne ๊ตฌ๋ฌธ์—์„œ time ์ธ์ž๋ฅผ ๋ฐ›์•„์˜ค์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค (์ •ํ™•ํ•˜๊ฒŒ๋Š” ๋ชฝ๊ณ ๋””๋น„ ๋ฒจ๋ฆฌ๋ฐ์ด์…˜ ์˜ค๋ฅ˜๊ฐ€ time ํŒŒ๋ผ๋ฏธํ„ฐ์— ๋Œ€ํ•ด์„œ๋งŒ
๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค). ๋ฐ”๋กœ ์œ„์—์„œ time์„ ๋””๋ฒ„๊น… ํ•ด๋ณด๋ฉด ์ •์ƒ์ ์ธ ๊ฐ’์ด ๋„˜์–ด์˜ด์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๋ฐ›์•„์˜ค์ง€ ๋ชปํ•˜๋Š”๋ฐ ์ •ํ™•ํžˆ ์–ด๋–ค ์ด์Šˆ์ธ์ง€ ํŒŒ์•…์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค (์œ„์— ์Šคํ‚ค๋งˆ์—์„œ time์— ๋Œ€ํ•ด required๋ฅผ ๋นผ๋ฉด ์ž˜ ์ž‘๋™ํ•˜๋Š”๊ฒƒ์œผ๋กœ ๋ณด์•„ ๋ฒจ๋ฆฌ๋ฐ์ด์…˜ ๋ฌธ์ œ๊ฐ€ ๋งž๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค)

PATCH /exception/application API ์ ‘๊ทผ ๊ถŒํ•œ ์˜ค๋ฅ˜

PATCH /exception/application API ํ˜ธ์ถœ ์‹œ ๊ต์‚ฌ ๊ณ„์ •์ธ๋ฐ๋„ ๋ถˆ๊ตฌํ•˜๊ณ  '๊ต์‚ฌ๋งŒ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋ผ์šฐํŠธ์ž…๋‹ˆ๋‹ค' ๋ฐ˜ํ™˜์ด ๋˜๋ฉด์„œ ์ •์ƒ ์ž‘๋™์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

attendance ๊ธฐํƒ€ ์œ„์น˜

place ๋ฆฌ์ŠคํŠธ์— ์—†๋Š” ์œ„์น˜๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ–ˆ์„ ๊ฒฝ์šฐ, ์ƒˆ๋กœ์šด ์žฅ์†Œ๋กœ์„œ ์ถ”๊ฐ€ํ•˜๋Š”๊ฒƒ์ด ์–ด๋– ํ•œ์ง€ ..

"3ํ•™๋…„ 2๋ฐ˜"์„

"3-2"๋ผ๊ณ  ์น˜๋Š” ์นœ๊ตฌ๋„ ์žˆ์„๊ฑฐ๊ณ 

"3ํ•™๋…„2๋ฐ˜"๋“ฑ์ด ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋‹ˆ !

์‹œ๊ฐ„ํ‘œ alias ์„ค์ •

3-2
"* 3D ๋ฐฐ๊ฒฝใ†์†Œํ’ˆ ์ œ์ž‘", "* 3D ์บ๋ฆญํ„ฐ ์ œ์ž‘", "* ์ƒ‰์ฑ„ ๋””์ž์ธ" -> "์• ๋‹ˆ"

3-3, 3-4
"* ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ํ™œ์šฉ" -> "์‘๊ฐœ"

3-5, 3-6
"* ๋„คํŠธ์›Œํฌ๋ณด์•ˆ๊ด€๋ฆฌ", "* ๋„คํŠธ์›Œํฌ์œ ์ง€๋ณด์ˆ˜", "* ์ธํ„ฐ๋„ท ์„ค๋น„ ์„ค๊ณ„" -> "๊ตฌ์ถ•"
"* ๋„คํŠธ์›Œํฌ ํ”„๋กœํ† ์ฝœ ๋ถ„์„" -> "๋„คํ”„"

2-2
"* ๊ด‘๊ณ  ์ „๋žต ์ˆ˜๋ฆฝ", "* ์Œ์•…์ฝ˜ํ…์ธ ์ œ์ž‘๊ธฐํš", "* ๊ทธ๋ž˜ํ”ฝ ์ œ์ž‘" -> "๊ด‘์ฝ˜", "์Œ์ฝ˜", "๊ทธ๋ž˜ํ”ฝ"

2-3~6
"์ž๋ฃŒ๊ตฌ์กฐ" -> "์ž๋ฃŒ"

1-1, 1-2
"์ปดํ“จํ„ฐ ๊ทธ๋ž˜ํ”ฝ" -> "์ปด๊ทธ"

๋‹ฌ๊ทธ๋ฝ ๋””๋„Œ์šฉ ํ•™์ƒ ๊ฒฝ๊ณ  ๋ฆฌ์ŠคํŠธ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ API ์ถ”๊ฐ€ ํ•„์š”

๋””๋„Œ ํ™”๋ฉด์—์„œ ๊ฐœ๊ฐœ์ธ์˜ ๊ฒฝ๊ณ ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” API๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
ํ•™์ƒ์ •๋ณด(ํ•™๋ฒˆ, objectId ๋“ฑ)๋ฅผ ์š”์ฒญ์œผ๋กœ ๋ณด๋‚ด๋ฉด ํŠน์ • ํ•™์ƒ์˜ ๋ฐ›์€ ๊ฒฝ๊ณ  ๋ฆฌ์ŠคํŠธ๊ฐ€ ๋ฐ˜ํ™˜๋˜๋Š” ํ˜•์‹์ž…๋‹ˆ๋‹ค.

timetable responseํ˜•์‹

{
"timetable": [
{
"_id": "60152f1afc4f570024b4d15d",
"date": "2020-06-28T00:00:00.000Z",
"grade": 2,
"class": 4,
"period": 1,
"subject": "์˜์–ด",
"createdAt": "2021-01-30T10:04:10.805Z",
"updatedAt": "2021-01-30T10:04:10.805Z"
}
}

@uhmseohun ์ด์ฐจ์› ๋ฐฐ์—ด๋กœ ๋ถ€ํƒ๋“œ๋ ค์—ฐ ~~ ์œ ๋…ธ ์™“์•”์„ธ์ž‰

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.