Skip to content

'button: 사용자 옷장 관리 및 코디 어플'의 메인 서버 코드입니다. (Django Rest Framework)

Notifications You must be signed in to change notification settings

cindia3704/Button_Server2

Repository files navigation

ABOUT

logo

Button is an android application for managing user's closet and outfit
Users could take a picture or choose a picture from tha gallery to register his or her own cloth to the application
Users could make an outfit of his or her own using the clothes registered to the application. ( Fitting service virtually )
Moreover, our service's unique selling point would be that it is able to recommend an outfit to the user based on user's event today.
This project was implemented as a team project of Capstone Design(1) course.
Please refer to the user manual for more details to use the application.

Download and Installation

To begin using this template, choose one of the following options to get started:

Project Functions:

  1. Login / Register
  2. Find username and password
  3. My profile page (Modify my info / Change my info / Delete account)
  4. Register my clothes / Change my clothes / Delete my clothes
  5. Make outfit by myself / Modify outfit / Delete outfit
  6. Add friend / delete friend
  7. Make outfit for friend / Mofidy outfit / Delete outfit
  8. Add outfit to calendar / Modify calendar / Delete calendar
  9. Recommend outfit based on user's situation and weather

Things needed to be fixed / improved:

  • Improve Deep learning algorithm for recomending outfit
  • Friend request email form
  • Make a Server with aws
  • Refactor code

API Endpoints

User Related

Request Type Path Method Description
GET user/ READ Get info of al users (모든 사용자 정보 조회)
GET user/{id}/ READ Get info of 1 user (특정 사용자 정보 조회)
PATCH user/{id}/changeInfo/ UPDATE Modify infor of 1 user (사용자 정보 수정)
DELETE user/int:id/delete/ DELETE Delete user(사용자 삭제)
POST login/ - login (로그인)
POST register/ CREATE Create user(회원가입)
POST passwordfind/{useremail}/ UPDATE Find password for a user - random password created (비밀번호 찾기)
POST user/findEmail/{useremail}/ - Find user id (아이디 찾기)
PATCH int:id/changepassword/ - Change password (비밀번호 변경)

Closet Related

Request Type Path Method Description
GET closet/{id}/ READ Get closet info of users (사용자의 옷장 리스트 조회)
POST closet/{id}/ CREATE Get info of al users (사용자의 옷장에 옷 등록)
GET closet/{id}/getseason/{season}/ READ Get closet according to season (계절 별로 옷 리스트 조회)
GET closet/{id}/{cloth_id}/ READ Get Specific cloth info(특정 옷 정보 조회)
PATCH closet/{id}/{cloth_id}/ UPDATE Modify Specific cloth info(특정 옷 정보 수정)
DELETE closet/{id}/{cloth_id}/ UPDATE Delete Specific cloth info(특정 옷 정보 삭제)
GET closet/{id}/{category}/ DELETE Get closet according to category (상의/하의/원피스/아우터 별로 옷 리스트 조회)

Outfit Related

Request Type Path Method Description
GET {id}/outfit/list/ READ Get outfit list of users by that user (사용자가 코디한 아웃핏 리스트 조회)
GET {id}/outfit/alllist/ READ Get all outfit list of users (사용자의 모든 아웃핏 리스트 조회)
GET {id}/outfit/friendlist/ READ Get outfit list of users by friend (사용자의 친구가 코디한 아웃핏 리스트 조회))
PATCH {id}/outfit/list/{outfit_id}/ UPDATE Modify specific outfit (특정 코디 수정)
DELETE {id}/outfit/list/{outfit_id}/ DELETE Delete specific outfit (특정 코디 수정)
POST {id}/{outfit_id}/addcloth/{cloth_id}/ - Add specific cloth to specific outfit (특정 옷 아웃핏에 추가)
POST {id}/{outfit_id}/delcloth/{cloth_id} - Delete specific cloth from specific outfit (특정 옷 아웃핏에서 제거)
GET outfitStatsBest/{id}/ READ Get most worn top 5 outfit (가장 많이 입은 코디 5개)
GET outfitStatsWorst/{id}/ READ Get least worn top 5 outfit (가장 안 입은 코디 5개)

Recommended Outfit Related

Request Type Path Method Description
POST knn/ CREATE Give user situation info(추천알고리즘 사용자 input 올리기)
GET knn/{knn_id}/ READ Get knn result (knn 결과 조회)
POST weekRecommend/{id}/{season}/ CREATE Create recommended outfit for 1 week (추천 코디 정보 조회)
GET getSetRec/ READ Get recommended outfit(추천 코디 정보 조회)

Calendar Related

Request Type Path Method Description
POST addToCalendar/{id}/{outfit_id}/{year}/{month}/{day}/ CREATE Add outfit & diary to calendar(특정 코디 & 다이어리 특정 날짜에 넣기)
GET getCalendar/{id}/{outfit_id}/{year}/{month}/{day}/ READ Get outfit & diary for certain day (특정 날짜에 입은 코디 & 다이어리 가져오기)
GET getCalendar/{id}/ READ Get all calendar for a user(특정 사용자의 모든 캘린더 정보 조회)
PATCH changeCalendar/{id}/{calendar_id}/{outfit_id}/ UPDATE Modify outfit for certain day(특정 날짜의 코디 수정)

Friend Related

Request Type Path Method Description
POST {id}/addfriend/{useremail}/ CREATE add to friend list (친구 추가)
GET friendlist/{id}/ READ Get friend list (친구 리스트 정보 조회)
GET {id}/friendrequest/ READ Get all friend request for a user(특정 사용자의 모든 친구 요정 보기)
POST {id}/friendrequest/{friend_id}/ CREATE accept friend request (친구 요청 수락)
DELETE {id}/friendrequest/{friend_id}/ DELETE delete friend request (친구 요청 거절)

Team members & Roles

Name Role
김지수 cindia3704 Team leader, Application design, Develoment of backend(ALL), Deep learning, Development of front-end
김수민 sO-Omin Application design, Development of front-end(UI implementation & UI design & function implementation)
박지수 jisoo-o Application design, UI design, Deep learning

Image of Application:

그림1그림2그림3그림4그림5그림6그림7그림8그림9

About

'button: 사용자 옷장 관리 및 코디 어플'의 메인 서버 코드입니다. (Django Rest Framework)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published