-
Notifications
You must be signed in to change notification settings - Fork 0
✍🏻 Plan
Sunny Lee edited this page Oct 4, 2023
·
26 revisions
URI | Description |
---|---|
📌 POST /plans | 촬영 일정 예약 신청(최초) |
📌 PUT /plans/deposit | 촬영 일정에 대한 입금 요청 |
📌 PUT /plans/refuse | 촬영 일정 예약 거절 |
📌 PUT /plans/reserve | 촬영 일정에 대한 입금 확인 |
📌 PUT /plans/change | 촬영 일정 변경 요청 |
📌 PUT /plans/delivery | 촬영 최종 완료 및 메일로 파일 전달 |
📌 PUT /plans/cancel | 촬영 일정 취소 |
📌 GET /plans/{planId} | 촬영 개별 조회 |
📌 GET /plans/photographer | 사진작가의 촬영 전체 조회 |
📌 GET /plans/photographer/client | 사진작가의 촬영 전체 조회(클라이언트 화면 정렬에 필요) |
📌 GET /plans/member | 일반고객의 촬영 전체 조회 |
📌 Request Parameters
- Headers: Authorization
Field | Type | Description |
---|---|---|
photographerId | Long | 사진작가 ID |
planDate | LocalDateTime | 예약 날짜 |
time | string | 예약 시간 |
category | string |
COUPLE 커플스냅, FREIND 우정스냅, GRADUATION 졸업스냅, WEDDING 웨딩스냅, FAMILY 가족스냅, ETC 기타 |
people | Long | 인원 |
wishPlace | string | 희망 장소 |
request | string | 요청사항 |
Response Parameters
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
customer | Long | 고객 ID |
photographer | Long | 사진작가 ID |
planDate | LocalDateTime | 예약 날짜 |
category | string |
COUPLE 커플스냅, FREIND 우정스냅, GRADUATION 졸업스냅, WEDDING 웨딩스냅, FAMILY 가족스냅, ETC 기타 |
people | Long | 인원 |
time | string | 예약 시간 |
wishPlace | string | 희망 장소 |
price | Long | 가격 |
request | string | 요청사항 |
status | string | 촬영 진행 상태: REQUEST 예약 신청 |
예시 요청/응답
📌 Request
{
"photographerId" : 19,
"planDate" : "2022-11-01T12:30:00",
"time" : "12:30",
"category" : "FRIEND",
"people" : 4,
"wishPlace" : "이화여자대학교",
"request" : "잘 부탁드립니다!"
}
Response
{
"planId": "f2ce844d-1b18-480f-ac78-548818e5c417",
"customer": 21,
"photographer": 19,
"planDate": "2022-11-01T12:30:00",
"category": "FRIEND",
"people": 4,
"time" : "12:30",
"wishPlace": "이화여자대학교",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
}
📌 Request Parameters
- Headers: Authorization
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
price | Long | 가격 |
placeName | string | 촬영 장소 |
placeAddress | string | 촬영 주소 |
message | string | 입금 계좌 포함한 메세지 내용 |
Response Parameters
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
customer | Long | 고객 ID |
photographer | Long | 사진작가 ID |
planDate | LocalDateTime | 예약 날짜 |
category | string |
COUPLE 커플스냅, FREIND 우정스냅, GRADUATION 졸업스냅, WEDDING 웨딩스냅, FAMILY 가족스냅, ETC 기타 |
people | Long | 인원 |
wishPlace | string | 희망 장소 |
time | string | 예약 시간 |
request | string | 요청사항 |
price | Long | 가격 |
placeName | string | 촬영 장소 |
placeAddress | string | 촬영 주소 |
message | string | 입금 계좌 포함한 메세지 내용 |
status | string | 촬영 진행 상태: DEPOSIT 입금 요청 |
예시 요청/응답
📌 Request
{
"planId" : "57351f46-e6b7-4fd6-b826-174a71a71284",
"price" : 120000,
"placeName" : "여의도 한강공원",
"placeAddress" : "서울특별시 영등포구 여의동로 330",
"message" : "입금 계좌는 국민은행 1234-5678입니다."
}
Response
{
"planId": "57351f46-e6b7-4fd6-b826-174a71a71284",
"customer": 25,
"photographer": 14,
"planDate": "2022-11-10 12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"time" : "12:30",
"request": "잘 부탁드립니다!",
"price": 120000,
"placeName": "여의도 한강공원",
"placeAddress": "서울특별시 영등포구 여의동로 330",
"message": "입금 계좌는 국민은행 1234-5678입니다.",
"status": "DEPOSIT"
}
📌 Request Parameters
- Headers: Authorization
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
contents | string | 거절 사유 포함한 메세지 내용 |
Response Parameters
Field | Type | Description |
---|---|---|
status | number | 200 |
code | string | OK |
message | string | 스냅 사진 촬영 예약 거절 및 취소 |
details | string | 사진 작가가 스냅 사진 촬영 예약을 거절했습니다. |
예시 요청/응답
📌 Request
{
"planId" : "57351f46-e6b7-4fd6-b826-174a71a71284",
"contents" : "안녕하세요^^ 진심을 담아 자연스러운 모습을 담아내는 해피스냅입니다. 신청해주신 날은 다른 일정이 있어서 촬영이 어려울 것 같아요ㅜㅜ 혹시 11월 15일이나 17일은 어떠신가요? 날짜 괜찮으시다면 다시 예약 신청 부탁드립니다! 좋은 하루 보내세요~ 감사합니다^^"
}
Response
{
"status": 200,
"code": "OK",
"message": "스냅 사진 촬영 예약 거절 및 취소",
"details": "사진 작가가 스냅 사진 촬영 예약을 거절했습니다."
}
📌 Request Parameters
- Headers: Authorization
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
contents | string | 촬영 안내사항 포함한 메세지 내용 |
Response Parameters
Field | Type | Description |
---|---|---|
status | number | 200 |
code | string | OK |
message | string | 스냅 사진 예약이 완료되었습니다. |
details | string | 사진 작가가 촬영에 대한 입금을 확인했고, 촬영 일정을 픽스했습니다. |
예시 요청/응답
📌 Request
{
"planId" : "57351f46-e6b7-4fd6-b826-174a71a71284",
"contents" : "입금 확인되었습니다. 촬영 시 소품은 자유롭게 사용 가능합니다! 촬영일에 뵙겠습니다^^"
}
Response
{
"status": 200,
"code": "OK",
"message": "스냅 사진 예약이 완료되었습니다.",
"details": "사진 작가가 촬영에 대한 입금을 확인했고, 촬영 일정을 픽스했습니다."
}
📌 Request Parameters
- Headers: Authorization
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
reason | string | 메세지 내용: 일정 변경 사유 |
planDate | LocalDateTime | 변경 요청한 예약 날짜 |
time | string | 변경 요청한 예약 시간 |
people | Long | 변경 요청한 인원 |
Response Parameters
Field | Type | Description |
---|---|---|
status | number | 200 |
code | string | OK |
message | string | 스냅 사진 촬영 일정을 변경 요청했습니다. |
details | string | 일반 고객이 스냅 사진 촬영 일정을 변경 요청했습니다. |
예시 요청/응답
📌 Request
{
"planId" : "f2ce844d-1b18-480f-ac78-548818e5c417",
"reason" : "촬영 인원 및 시간 변경",
"planDate" : "2022-11-05T17:00:00",
"time" : "17:00",
"people" : 3
}
Response
{
"status": 200,
"code": "OK",
"message": "스냅 사진 촬영 일정을 변경 요청했습니다.",
"details": "일반 고객이 스냅 사진 촬영 일정을 변경 요청했습니다."
}
📌 Request Parameters
- Headers: Authorization
- Content-Type: multipart/form-data
Key | Value | Description |
---|---|---|
file | string | 고객에게 전달할 스냅 사진 파일 |
json |
planId , contents 로 구성 |
|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
contents | string | 전달할 메세지 내용 |
Response Parameters
Field | Type | Description |
---|---|---|
status | number | 200 |
code | string | OK |
message | string | 스냅 사진 파일을 전달했습니다. |
details | string | 사진 작가가 스냅 사진을 전달했습니다. |
예시 요청/응답
📌 Request
Response
{
"status": 200,
"code": "OK",
"message": "스냅 사진 파일을 전달했습니다.",
"details": "사진 작가가 스냅 사진을 전달했습니다."
}
📌 Request Parameters
- Headers: Authorization
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
reason | string | 취소 사유 포함한 메세지 내용 |
refundAccount | string | 환불받을 계좌 |
Response Parameters
Field | Type | Description |
---|---|---|
status | number | 200 |
code | string | OK |
message | string | 스냅 사진 촬영 일정을 취소했습니다. |
details | string | 사진 작가 혹은 일반 고객이 스냅 사진 촬영 일정을 취소했습니다. |
예시 요청/응답
📌 Request
{
"planId" : "57351f46-e6b7-4fd6-b826-174a71a71284",
"reason" : "개인 일정",
"refundAccount" : "신한은행 2222-4444"
}
Response
{
"status": 200,
"code": "OK",
"message": "스냅 사진 촬영 일정을 취소했습니다.",
"details": "사진 작가 혹은 일반 고객이 스냅 사진 촬영 일정을 취소했습니다."
}
📌 Request Parameters
- Headers: Authorization
Response Parameters
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
customer | Long | 고객 ID |
photographer | Long | 사진작가 ID |
planDate | LocalDateTime | 예약 날짜 |
time | string | 예약 시간 |
category | string |
COUPLE 커플스냅, FREIND 우정스냅, GRADUATION 졸업스냅, WEDDING 웨딩스냅, FAMILY 가족스냅, ETC 기타 |
people | Long | 인원 |
wishPlace | string | 희망 장소 |
request | string | 요청사항 |
price | Long | 가격 |
placeName | string | 촬영 장소 |
placeAddress | string | 촬영 주소 |
x | string | 촬영 x좌표 |
y | string | 촬영 y좌표 |
status | string | 촬영 진행 상태REQUEST , DEPOSIT , REFUSE , RESERVED , TODAY , COMPLETE , DELIVERY , CANCEL
|
messages | 메세지 리스트messageId , isMine , sender , contents 로 구성 |
|
messageId | Long | 메세지 ID |
isMine | boolean | 사용자의 메세지인지(true) 상대의 메세지인지(false)를 구분 |
sender | string | 메세지 전송자의 계정 타입(MEMBER, PHOTOGRAPHER) |
contents | string | 메세지 본문 |
예시 요청/응답
📌 Request
Response
{
"planId": "18ad30a9-3fec-4013-b192-cf7252a42d26",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"x":"127.1111",
"y":"98.3333",
"wishPlace": "한강공원",
"request": "잘 부탁드립니다!",
"price": null,
"placeName": null,
"placeAddress": null,
"status": "DELIVERY",
"messages": [
{
"messageId": 1,
"isMine": true,
"sender": "MEMBER",
"contents": "hey"
},
{
"messageId": 2,
"isMine": true,
"sender": "MEMBER",
"contents": "hey"
},
{
"messageId": 3,
"isMine": true,
"sender": "MEMBER",
"contents": "hey"
},
{
"messageId": 4,
"isMine": false,
"sender": "PHOTOGRAPHER",
"contents": "hey"
},
{
"messageId": 5,
"isMine": false,
"sender": "PHOTOGRAPHER",
"contents": "나는야 사진작가"
}
]
}
📌 Request Parameters
- Headers: Authorization
Response Parameters
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
customer | Long | 고객 ID |
photographer | Long | 사진작가 ID |
planDate | LocalDateTime | 예약 날짜 |
time | string | 예약 시간 |
category | string |
COUPLE 커플스냅, FREIND 우정스냅, GRADUATION 졸업스냅, WEDDING 웨딩스냅, FAMILY 가족스냅, ETC 기타 |
people | Long | 인원 |
wishPlace | string | 희망 장소 |
price | Long | 가격 |
request | string | 요청사항 |
status | string | 촬영 진행 상태REQUEST , DEPOSIT , REFUSE , RESERVED , TODAY , COMPLETE , DELIVERY , CANCEL
|
예시 요청/응답
📌 Request
Response
[
{
"planId": "57351f46-e6b7-4fd6-b826-174a71a71284",
"customer": 25,
"photographer": 14,
"planDate": "2022-11-10 12:30",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price" : 120000,
"request": "잘 부탁드립니다!",
"status": "RESERVED"
},
"..."
]
📌 Request Parameters
- Headers: Authorization
Response Parameters
Field | Type | Description |
---|---|---|
request | 요청된 촬영 일정 리스트 | |
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
customer | Long | 고객 ID |
photographer | Long | 사진작가 ID |
planDate | LocalDateTime | 예약 날짜 |
time | string | 예약 시간 |
category | string |
COUPLE 커플스냅, FREIND 우정스냅, GRADUATION 졸업스냅, WEDDING 웨딩스냅, FAMILY 가족스냅, ETC 기타 |
people | Long | 인원 |
wishPlace | string | 희망 장소 |
price | Long | 가격 |
request | string | 요청사항 |
status | string | 촬영 진행 상태: REQUEST 예약 신청, DEPOSIT 입금 요청 |
response | 예약된 촬영 일정 리스트 | |
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
customer | Long | 고객 ID |
photographer | Long | 사진작가 ID |
planDate | LocalDateTime | 예약 날짜 |
time | string | 예약 시간 |
category | string |
COUPLE 커플스냅, FREIND 우정스냅, GRADUATION 졸업스냅, WEDDING 웨딩스냅, FAMILY 가족스냅, ETC 기타 |
people | Long | 인원 |
wishPlace | string | 희망 장소 |
price | Long | 가격 |
request | string | 요청사항 |
status | string | 촬영 진행 상태: RESERVED 예약 완료, TODAY 촬영 진행, COMPLETE 촬영 완료 |
예시 요청/응답
📌 Request
Response
{
"request": [
{
"planId": "3bdb4bbb-fa41-49dd-a600-8d27eefb222b",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
},
{
"planId": "55db891e-cb1f-439a-bbc9-81eef74fcb30",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
},
{
"planId": "63e57713-dfa7-4020-8b50-4c1b71f37f49",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
},
{
"planId": "a837aae4-8fcf-4b52-b022-f752d987fd4f",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
},
{
"planId": "cfd4d397-43f1-4c80-93cd-cbf21f716cc5",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
},
{
"planId": "ddf82a29-7a15-49e3-ab7f-80afa9610227",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
},
{
"planId": "de054f04-e875-4596-8348-f55a6ba73108",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
},
{
"planId": "f1079490-792d-4a61-97a2-21291c846831",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T12:30:00",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "REQUEST"
}
],
"reserved": [
{
"planId": "5c510b42-a682-4f94-9854-2ba0942530e7",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T00:00:00",
"time" : "00:00",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "TODAY"
},
{
"planId": "67abe74e-208c-4f8d-b995-05baac263062",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T00:00:00",
"time" : "00:00",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "TODAY"
},
{
"planId": "b1649bec-20f3-4424-b3b7-c8d9aca97ca2",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T00:00:00",
"time" : "00:00",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "TODAY"
},
{
"planId": "f8328bf9-9f99-4576-950f-09c8203f8a00",
"customer": 7,
"photographer": 1,
"planDate": "2023-09-15T00:00:00",
"time" : "00:00",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price": null,
"request": "잘 부탁드립니다!",
"status": "COMPLETE"
}
]
}
📌 Request Parameters
- Headers: Authorization
Response Parameters
Field | Type | Description |
---|---|---|
planId | uuid | 촬영 일정을 개별적으로 구별하는 ID |
customer | Long | 고객 ID |
photographer | Long | 사진작가 ID |
planDate | LocalDateTime | 예약 날짜 |
time | string | 예약 시간 |
category | string |
COUPLE 커플스냅, FREIND 우정스냅, GRADUATION 졸업스냅, WEDDING 웨딩스냅, FAMILY 가족스냅, ETC 기타 |
people | Long | 인원 |
wishPlace | string | 희망 장소 |
price | Long | 가격 |
request | string | 요청사항 |
status | string | 촬영 진행 상태REQUEST , DEPOSIT , REFUSE , RESERVED , TODAY , COMPLETE , DELIVERY , CANCEL
|
예시 요청/응답
📌 Request
Response
[
{
"planId": "57351f46-e6b7-4fd6-b826-174a71a71284",
"customer": 25,
"photographer": 14,
"planDate": "2022-11-10 12:30",
"time" : "12:30",
"category": "COUPLE",
"people": 2,
"wishPlace": "한강공원",
"price" : 120000,
"request": "잘 부탁드립니다!",
"status": "RESERVED"
},
"..."
]