Skip to content

Dis. 기존 서버의 API 명세서 #9

@DongWooE

Description

@DongWooE

회원가입

[POST] /v1/users/register{
userId: “test1”,
userPassword: “123",
studentId: 2017038063,
userEmail : “test1@fuck.com
userPhoneNumber : 010-0000-0000
validNum: 123,
name: “test1"
}


로그인

[POST]/v1/users/login
{
userId: “test1”,
userPassword: “123"
}


중복체크

[GET] /v1/users/check/:value
(value는 id 혹은 email)


userId를 통해 관련된 사용자 정보 params로 넘어온 userId는 제외하고 가져오기 (검색 기능에 활용)

[GET] /v1/users/userId/:userId +++ query로 value에다가 검색할 키워드 넘겨주기


userId를 통해 관련된 사용자 정보 params로 넘어온 userId는 제외하고 가져오기 (검색 기능에 활용)

[GET] /v1/users/name/:userId +++ query로 value에다가 검색할 키워드 넘겨주기


DB에 있는 모든 User 가져오기

[GET] /v1/users/


sms service

[GET] /v1/users/sms/:phone
example) /v1/users/sms/01000000000


사용자 validNum 갱신하기

[PUT] /v1/users/:userId
{
validNum: 123123123
}


course 하나 가져오기

[GET] /v1/courses/single/:courseId


course 모두 가져오기 (어떤 user의)

[GET] /v1/courses/multiple/:userId


course 만들기

[POST] /v1/courses/:userId
{
name : Compiler
description : 2021년도-1학기
}


course 수정하기

[PUT] /v1/courses/:courseId
{
name : OperatingSystem
description : 2021년도-2학기
}


course 삭제하기

[DELETE] /v1/courses/single/:courseId


course 모두 삭제하기 (어떤 user의)

[DELETE] /v1/courses/multiple/:userId


course 검색하기

[GET] /v1/courses/search/:userId?value=operatingSystem


memberList 생성하고 memberList에 학생들 등록하기 (최근에 들어온 배열로 DB가 덮어씌워짐, 따라서 빈 배열보내면 memberList 내 모든 User가 제거됌)

[POST] /v1/memberLists/:courseId
{
members: [
“test1”, “test2", “test3”
]
}


memberList가 존재하지 않으면 생성해주며, 멤버리스트 내에 들어있는 user들 담긴 배열을 리턴(memberList를 방금 생성했으면 빈 배열 리턴)

[GET] /v1/memberLists/:courseId


memberList 내에 1명의 user 제거

[DELETE] /v1/memberLists/:courseId?userId=test1
=> courseId는 req.params로 userId는 req.query로 담아서 보내주면 됌


courseDateId 생성하고 해당 수업 memberLists에 등록된 학생들의 당일 출석부 만들기 (QR reader기 키면 실행하면 됌)

[GET] /v1/courseDates/:courseId


course에 엮인 courseDates 모두 받아오기 (받아오기 전에 불필요한 member들 삭제하고, 출석부 출력에 맞춰서 courseDate가 존재하지 않는 user들의 member는 false로 초기화 시켜서 member를 만들어주기까지 함)

[GET] /v1/courseDates/getCourseDates/:courseId
*courseDateId값 변경
[PUT] /v1/courseDates/:courseDateId //변경 대상이 되는 courseDateId
{
courseDateId: “202108092212090321" //수정할 courseDateId
}


1명의 학생 출석 시켜주기 (QR 리더기에 QR이 찍힌 경우 실행하면 됌)

[PATCH] /v1/attendance/attend
{
userId: “test1”,
validNum: 123,
courseDateId: “202108092212"
}


출석부에 필요한 정보 모두 리턴하기

[GET] /v1/attendance/getAttendanceBook/:courseId


출석부 출석 여부 수정하기 (isChecked를 수정하는 것임)

[PUT] /v1/attendance/putAttendanceBook
{
“attendanceBook”: [[“2021099905500091100", “test3”, true],[“2021099905500091101", “test2”, true],[“2021099905500091101", “test4”, false]]
}


Metadata

Metadata

Assignees

No one assigned

    Labels

    Discussion의논해볼 만한 주제

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions