55from dependencies import get_db , get_queue
66from scheduler import create_scheduler
77from schemas import ItemRequestSchema , ItemResponseSchema , ItemUpdateSchema
8- from schemas import PaymentResponseSchema , PaymentRequestSchema , PaymentIssuedRequestSchema
8+ from schemas import PaymentResponseSchema , PaymentRequestSchema
99from models import Item , Payment
10- from tasks import fill_file_with_hw , check_payment
10+ from tasks import fill_file_with_hw , check_payments , issue_paid_item
1111
1212app = FastAPI (dependencies = [Depends (get_db )],
1313 on_startup = [create_scheduler ])
1414
1515
16- @app .get (' /health' )
16+ @app .get (" /health" )
1717def health () -> dict :
18- return {' status' : 'ok' }
18+ return {" status" : "ok" }
1919
2020
21- @app .get ("/items /{item_id}" , response_model = ItemResponseSchema )
21+ @app .get ("/get-item /{item_id}" , response_model = ItemResponseSchema )
2222def get_item (item_id : int ) -> dict :
2323 item = Item .get_by_id (item_id )
2424
@@ -27,7 +27,7 @@ def get_item(item_id: int) -> dict:
2727 return response .dict ()
2828
2929
30- @app .get ("/items/ " , response_model = List [ItemResponseSchema ])
30+ @app .get ("/get- items-list " , response_model = List [ItemResponseSchema ])
3131def get_items_list ():
3232 items_list = Item .select ()
3333
@@ -36,8 +36,8 @@ def get_items_list():
3636 return response
3737
3838
39- @app .post ("/items " , response_model = ItemResponseSchema )
40- def create_items (item_body : ItemRequestSchema ) -> dict :
39+ @app .post ("/create-item " , response_model = ItemResponseSchema )
40+ def create_item (item_body : ItemRequestSchema ) -> dict :
4141 item = Item .create (title = item_body .title ,
4242 price = item_body .price ,
4343 category = item_body .category ,
@@ -49,15 +49,15 @@ def create_items(item_body: ItemRequestSchema) -> dict:
4949 return response .dict ()
5050
5151
52- @app .delete ("/items /{item_id}" )
52+ @app .delete ("/delete-item /{item_id}" )
5353def delete_item (item_id : int ):
5454 item_to_delete = Item .get_by_id (item_id )
5555 item_to_delete .delete_instance ()
5656
57- return {' operation result' : ' record deleted' }
57+ return {" operation result" : " record deleted" }
5858
5959
60- @app .patch ("/items /{item_id}" )
60+ @app .patch ("/update-item /{item_id}" )
6161def update_item (item_id : int , item_body : ItemUpdateSchema ):
6262 item_to_update = Item .get_by_id (item_id )
6363
@@ -68,53 +68,33 @@ def update_item(item_id: int, item_body: ItemUpdateSchema):
6868 item_to_update .description = item_body .description
6969 item_to_update .save ()
7070
71- return {' operation result' : ' record updated' }
71+ return {" operation result" : " record updated" }
7272
7373
74- @app .post ("/payment" , response_model = PaymentResponseSchema )
74+ @app .post ("/create- payment" , response_model = PaymentResponseSchema )
7575def create_payment (payment_body : PaymentRequestSchema ) -> dict :
7676 payment = Payment .create (item_id = payment_body .item_id ,
7777 date = datetime .now (),
78- status = ' new' )
78+ status = " new" )
7979
8080 response = PaymentResponseSchema .from_orm (payment )
8181
8282 return response .dict ()
8383
8484
85- @app .post ("/payment/{payment_id}" , response_model = PaymentResponseSchema )
86- def update_payment (payment_id : int ,
87- payment_body : PaymentRequestSchema ) -> dict :
88- payment_to_update = Payment .get_by_id (payment_id )
89- payment_to_update .status = payment_body .status
90- payment_to_update .is_issued = payment_body .is_issued
91-
92- response = PaymentResponseSchema .from_orm (payment_to_update )
93-
94- return response .dict ()
95-
96-
97- @app .post ("/payment-paid/{payment_id}" )
98- def make_payment_paid (payment_id : int ):
85+ @app .post ("/approve-payment/{payment_id}" )
86+ def approve_payment (payment_id : int ):
9987 paid_payment = Payment .get_by_id (payment_id )
100- paid_payment .status = 'paid'
101- # send to stock payment_id
102-
103- return {'operation result' : 'payment processed' }
88+ paid_payment .status = "paid"
89+ paid_payment .save ()
10490
91+ queue = get_queue ()
92+ queue .enqueue (issue_paid_item (payment_id ))
10593
106- @app .post ("/payment-issued-status/{payment_id}" )
107- def set_payment_issued_status (payment_id : int ,
108- payment_issued_body : PaymentIssuedRequestSchema ):
109- paid_payment = Payment .get_by_id (payment_id )
110- paid_payment .status = payment_issued_body .is_issued
111- # if NOT is_issued:
112- # start process to return money
94+ return {"operation result" : "payment processed" }
11395
114- return {}
11596
116-
117- @app .get ("/payments/{days}" , response_model = List [PaymentResponseSchema ])
97+ @app .get ("/get-payments-list/{days}" , response_model = List [PaymentResponseSchema ])
11898def get_payments_list (days : int ):
11999 start_day = datetime .now () - timedelta (days = days )
120100 payments_list = Payment .select ().where (Payment .date >= start_day )
@@ -133,8 +113,8 @@ def run_task():
133113
134114
135115@app .post ("/check-new-payment" )
136- def run_task ():
116+ def check_new_payments ():
137117 queue = get_queue ()
138- queue .enqueue (check_payment )
118+ queue .enqueue (check_payments )
139119
140120 return {}
0 commit comments