json 수정

Jin·2021년 7월 27일
0
post-thumbnail

210727

물음표 뒤에 query parameter
조건을 받을 땐 다 query parameter로 받는다
query parameter는 GET, DELETE에서 많이 쓴다.
PUT, POST는 payLoad(request body)를 쓴다.
API path는 복수를 쓴다. 복수/단수/복수/단수 e.g) classes/1/.....

GET - /class/1/attendace?year=2021
(1은 class의 id)

result는 오브젝트{}로 묶어야 된다.

key : value

날짜 눌렀을 때 class list

Request
GET - /classes?year=2021&month=7&day=21

Response
{
	"result" : {
    	"classes" : [
        	{
            	"id" : cl1,
                "name" : "클래스1"
            },{
                "id" : cl2,
                "name" : "클래스2"
            }
        ]
    }
}

Payment

Request
GET - /class/1/members/payment?year=2021

Response
{ 
   "result" : {
      "year": 2021,
      "members": [{
         "id": 1,
         "name": "이한결",
         "payStatus": [{
            "id": 1,
            "month": 1,
            "status": "카드"
         }, {
            "id": 2,
            "month": 2,
            "status": "카드"
         }]
      }, {
         "id": 2,
         "name": "이성진",
         "payStatus": [{
            "id": 55,
            "month": 1,
            "status": "현금"
         }, {
            "id": 666,
            "month": 2,
            "status": "현금"
         }]
      }]
   }
}


Attendance

Request
GET - /class/1/attendance?year=2021&month=7

Response
{ 
   "result" : {
      "year": 2021,
      "month": 7,
      members: [{
         "id": 1,
         "name": "이한결",
         "attendances": [{
            "id": 1,
            "day": 7,
            "status": "출석"
         }, {
            "id": 2,
            "day": 14,
            "status": "결석"
         }]
      }, {
         "id": 2,
         "name": "이성진",
         "attendances": [{
            "id": 555,
            "day": 7,
            "status": "출석"
         }, {
            "id": 666,
            "day": 14,
            "status": "결석"
         }]
      }]
   }
}

Request
PUT - /class/1/attendance
{
   "year": 2021,
   "month": 7,
   "day": 21,
   "status": "결석",
   "attendnaceIds": [1, 555]
}

Response
{ 
   "result" : {
      "stuats": 200,
      "message": "SUCCESS"
   }
}




Memeber

Request
GET - /members

Response
{
  "result": {
     "members": [{
        "id": 1,
        "name": "이한결",
        "age": 24
     }]
  }
}

Request
DELETE - /members/{memberId}

Response
{
  "result": {
     "status": 200,
     "message": "SUCCESS"
  }
}

회원등록 *

Request
POST - /members
{
   "name": "이한결",
   "age": 23
}

Response
{
   "result": {
      "status": 200,
      "message": "SUCCESS"
   }
}

Class 조회

Request
GET - /classes

Response
{
	"result" : {
    	"classes" : [{
 			"id" : c1,
            "name" : "백문초 91년생",
            "trainingDay" : "월",
            "startTime" : "16:00",
            "endTime": "17:00"
            }     
        ]
    }
}

class 삭제

Request
DELETE - /classes/{classId}

Response
{
   "result": {
      "status": 200,
      "message": "SUCCESS"
   }
}

class 등록

Request
POST - /classes
{
	"name" : "창현초 91년생",
    "day"  : "토",
    "time" : "20:00~21:00"
}

Response
{
   "result": {
      "status": 200,
      "message": "SUCCESS"
   }
}
Request
PUT - /classes/{classId}/members
{
   "memberIds": [1, 2, 3, 4, 5]
}


Response
{
   "result": {
      "status": 200,
      "message": "SUCCESS"
   }
}

Table

  • account
    • id
    • pwd
    • name

  • class
    • id
    • name
    • dayOfWeek
    • time
  • member
    • id
    • name
    • age
  • payment
    • id
    • year
    • month
    • status
    • class_id
    • member_id
  • attendance
    • id
    • year
    • month
    • day
    • status
    • class_id
    • member_id

  • class_member_connection
    • id
    • class_id
    • member_id

0개의 댓글