Peludo Heart is an app to make reservations and order pet products.
Peludo Heart is a veterinarian that offers services and products for pets.
Peludo Heart needed to implement a way to handle orders for its products and services. currently only a notebook is used for annotating.
Peludo Heart needed to show his products and services to existing and new customers through an app.
- Administrator | Doctor
- Doctor assistant
- Accountant (product sales manager)
![organization_map](doc_files/diagrams/business_diagram.png)
- order products and offer services
![use_case_diagram](doc_files/diagrams/use_case.png)
![class_diagram](doc_files/diagrams/class_diagram.png)
HTTP METHOD |
API ENDPOINT |
FUNCTION |
GET |
/products/list/ |
return list of all products |
GET |
/products/list/<slug>/ |
return detail of product by slug |
GET |
/products/related/<id>/ |
return related products of one product by id |
GET |
/products/category/ |
return list of products by category |
GET |
/products/category/<id>/ |
return specific products by category by id |
HTTP METHOD |
API ENDPOINT |
FUNCTION |
POST |
/login/ |
return token and user data |
POST |
/users/ |
create user by phone instead of username |
PUT |
/users/<user_id>/change_password/ |
Update password |
PUT |
/users/<user_id>/ |
Update Phone number |
HTTP METHOD |
API ENDPOINT |
FUNCTION |
GET |
/adoption/ |
return list of pets |
HTTP METHOD |
API ENDPOINT |
FUNCTION |
GET |
/appointments/list/ |
return list of appointments |
POST |
/appointments/ |
create appointment |
UPDATE |
/appointments/ |
update appointment |
Token is required
HTTP METHOD |
API ENDPOINT |
FUNCTION |
GET |
/notifications/ |
get list of notifications |
GET |
/notifications/<notification_id> |
retrive notification by id |
POST |
/notifications/mark-all-as-read/ |
mark all notifications as read |
Token is required
HTTP METHOD |
API ENDPOINT |
FUNCTION |
GET |
/cart/ |
return current shopping cart. if the cart is used return new cart. |
POST |
/cart/ |
add product to the cart by product_id |
PUT |
/cart/cart-item/<int:pk>/ |
update quantity of product in the shopping cart by id of product |
DELETE |
/cart/cart-item/<int:pk>/ |
delete product of the shopping cart by id of product in the cart |
GET |
/cart/<product_id>/ |
verify if the product is in the shopping cart by product_id |
Token is required
HTTP METHOD |
API ENDPOINT |
FUNCTION |
GET |
/orders/ |
return list of orders of the user |
GET |
/orders/<order_code>/ |
return order detail of the user |
POST |
/orders/checkout/ |
create order |
PUT |
/orders/checkout/ |
user can cancel order if the status does not change to received |
Token is required
![sitemap_app](doc_files/diagrams/sitemap.png)
- draw.io (use case, class diagram,sequence)
- Whimsical
- Kanban
![kanban](doc_files/kanban.PNG)
- Postman (test api endpoints)