-
Notifications
You must be signed in to change notification settings - Fork 1
백엔드 API
kimsuyoung edited this page Oct 12, 2022
·
5 revisions
특정 생활관의 인원 현황을 조회한다.
GET /room/:id
Parameter | Type | Description |
---|---|---|
id |
number |
Required. 생활관 고유 ID |
요청한 생활관의 인원 현황을 반환한다.
{
"room": {
"id": 2
},
"members": [
{
"name": "김병장",
"rank": 4,
"rank_name": "병장",
"status": "휴가"
},
{
"name": "박일병",
"rank": 2,
"rank_name": "일병",
"status": "열중"
},
{
"name": "정상병",
"rank": 3,
"rank_name": "상병",
"status": "기타"
}
],
"summary": {
"total": 8,
"absence": 3,
"current": 5,
"absence_reasons": [
[
"휴가",
1
],
[
"기타",
1
],
[
"근무",
1
]
]
}
}
추가예정
특정 날짜의 근무표를 조회한다.
GET /roster/:date
Parameter | Type | Description |
---|---|---|
date |
string |
Required. 요청할 근무표의 날짜 ex) 2022-10-10 |
요청한 날짜의 근무표를 반환한다.
```json
{
"date": "2022-07-08",
"rosters": [
{
"name": "상황병",
"works": [
{
"name": "지휘통제실",
"memeber": [
{
"name": "박일병",
"rank": 2,
"rank_name": "일병"
},
{
"name": "정상병",
"rank": 3,
"rank_name": "상병"
}
]
},
{
"name": "지휘통제실",
"memeber": [
{
"name": "박일병",
"rank": 2,
"rank_name": "일병"
},
{
"name": "정상병",
"rank": 3,
"rank_name": "상병"
}
]
},
{
"name": "지휘통제실",
"memeber": [
{
"name": "박일병",
"rank": 2,
"rank_name": "일병"
},
{
"name": "정상병",
"rank": 3,
"rank_name": "상병"
}
]
}
]
},
{
"name": "불침번",
"works": [
{
"name": "22:00~00:00",
"memeber": [
{
"name": "박일병",
"rank": 2,
"rank_name": "일병"
},
{
"name": "정상병",
"rank": 3,
"rank_name": "상병"
}
]
},
{
"name": "22:00~00:00",
"memeber": [
{
"name": "박일병",
"rank": 2,
"rank_name": "일병"
},
{
"name": "정상병",
"rank": 3,
"rank_name": "상병"
}
]
},
{
"name": "22:00~00:00",
"memeber": [
{
"name": "박일병",
"rank": 2,
"rank_name": "일병"
},
{
"name": "정상병",
"rank": 3,
"rank_name": "상병"
}
]
}
]
}
]
}
```
특정 날짜의 특정 생활관의 임무분담제 내용을 조회한다.
GET /roster/:room/:date
Parameter | Type | Description |
---|---|---|
room |
number |
Required. 요청할 생활관 ID |
date |
string |
Required. 요청할 근무표의 날짜 ex) 2022-10-10 |
요청내용에 맞는 임무분담제 정보를 반환한다.
{
"room": "2",
"date": "2022-07-08",
"byRoom": [
[
"청소구역1",
1,
2,
3,
4
],
[
"청소구역2",
1,
2,
3,
4
],
[
"청소구역3",
1,
2,
3,
4
],
[
"청소구역4",
1,
2,
3,
4
],
[
"청소구역5",
1,
2,
3,
4
]
],
"inRoom": [
[
"청소구역1",
"김일병",
"박이병",
"이상병",
"진병장"
],
[
"청소구역2",
"김일병",
"박이병",
"이상병",
"진병장"
],
[
"청소구역3",
"김일병",
"박이병",
"이상병",
"진병장"
],
[
"청소구역4",
"김일병",
"박이병",
"이상병",
"진병장"
],
[
"청소구역5",
"김일병",
"박이병",
"이상병",
"진병장"
],
[
"청소구역6",
"김일병",
"박이병",
"이상병",
"진병장"
],
[
"청소구역7",
"김일병",
"박이병",
"이상병",
"진병장"
]
]
}
전파사항 목록을 조회한다.
GET /notice?date=2022-10-21
Parameter | Type | Description |
---|---|---|
date |
string |
Optional. 전파사항 작성일. 제공되지 않으면 전체 전파사항 반환 ex) 2022-10-10 |
요청 정보와 함께 요청 정보에 맞는 전파사항을 반환한다.
{
"query": {
"date": "2022-10-17"
},
"items": [
{
"type": "notice",
"title": "[지휘통제실] 막사 내 보안 규정 안내",
"content": "제1항의 지시를 받은 당해 행정기관은 이에 응하여야 한다. 공공필요에 의한 재산권의 수용·사용 또는 제한 및 그에 대한 보상은 법률로써 하되, 정당한 보상을 지급하여야 한다.\n \n 모든 국민은 법률이 정하는 바에 의하여 국가기관에 문서로 청원할 권리를 가진다. 국무총리 또는 행정각부의 장은 소관사무에 관하여 법률이나 대통령령의 위임 또는 직권으로 총리령 또는 부령을 발할 수 있다.",
"writer": {
"name": "행정보급관"
},
"createdAt": "2022-10-10 10:01:23"
},
{
"type": "normal",
"title": "[지휘통제실] 막사 내 보안 규정 안내",
"content": "제1항의 지시를 받은 당해 행정기관은 이에 응하여야 한다. 공공필요에 의한 재산권의 수용·사용 또는 제한 및 그에 대한 보상은 법률로써 하되, 정당한 보상을 지급하여야 한다.\n \n 모든 국민은 법률이 정하는 바에 의하여 국가기관에 문서로 청원할 권리를 가진다. 국무총리 또는 행정각부의 장은 소관사무에 관하여 법률이나 대통령령의 위임 또는 직권으로 총리령 또는 부령을 발할 수 있다.",
"writer": {
"name": "행정보급관"
},
"createdAt": "2022-10-10 10:01:23"
}
]
}
특정 전파사항의 상세 내용을 조회한다.
GET /notice/:id
Parameter | Type | Description |
---|---|---|
id |
number |
Required. 응답할 전파사항의 ID |
해당 전파사항을 반환한다.
{
"type": "normal",
"title": "[지휘통제실] 막사 내 보안 규정 안내",
"content": "제1항의 지시를 받은 당해 행정기관은 이에 응하여야 한다. 공공필요에 의한 재산권의 수용·사용 또는 제한 및 그에 대한 보상은 법률로써 하되, 정당한 보상을 지급하여야 한다.\n\n 모든 국민은 법률이 정하는 바에 의하여 국가기관에 문서로 청원할 권리를 가진다. 국무총리 또는 행정각부의 장은 소관사무에 관하여 법률이나 대통령령의 위임 또는 직권으로 총리령 또는 부령을 발할 수 있다.",
"writer": {
"name": "행정보급관"
},
"createdAt": "2022-10-10 10:01:23"
}
등록된 사용자 인증를 처리하고 완료시 JWT 토큰을 반환한다. 해당 토큰을 이용해 인증이 필요한 요청을 처리한다.
POST /auth/login
{
"username": "admin",
"password": "admin",
}
Parameter | Type | Description |
---|---|---|
username |
string |
Required. 접속을 위한 사용자 계정명 |
password |
string |
Required. 접속을 위한 사용자 계정 비밀번호 |
인증된 사용자의 접속 토큰을 제공한다.
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwiaWQiOjEsImlhdCI6MTY2NDc3MDU2NywiZXhwIjoxNjY0NzcwNjI3fQ.Jw4vrqhUzMmp4eHffMFDQSTz8f9IQISQhYPHOcww-nU"
}