updated auto

This commit is contained in:
2025-10-12 12:11:32 -04:00
parent e6e13b7559
commit c69d48dd74
3 changed files with 77 additions and 10 deletions

View File

@@ -1,7 +1,6 @@
from sqlalchemy import (Column, INTEGER, from sqlalchemy import (Column, INTEGER,
DECIMAL, TEXT, DECIMAL, TEXT,
VARCHAR, TIMESTAMP, DATE) VARCHAR, DATE)
import datetime
from database import Base from database import Base

View File

@@ -163,3 +163,59 @@ async def delete_ticket(ticket_id: int):
session.commit() session.commit()
return {"ok": True}, 200 return {"ok": True}, 200
@router.post("/auto/create/nopreauth/{autoid}")
async def create_auto_ticket_no_preauth(autoid: int, request: Request):
request_body = await request.json()
gallons_delivered = request_body['gallons_delivered']
gallons_delivered = Decimal(gallons_delivered)
payment_type = 1
payment_card_id = 0
payment_status = 3
get_auto_delivery = (session
.query(Auto_Delivery)
.filter(Auto_Delivery.id == autoid)
.first())
get_todays_price = (session.query(Pricing_Oil_Oil)
.order_by(Pricing_Oil_Oil.id.desc())
.first())
gallons_put_in_home = Decimal(gallons_delivered)
todays_price = Decimal(get_todays_price.price_for_customer)
total_amount = gallons_put_in_home * todays_price
create_new_ticket = Tickets_Auto_Delivery(
customer_id = get_auto_delivery.customer_id,
account_number = get_auto_delivery.account_number,
customer_town = get_auto_delivery.customer_town,
customer_state = get_auto_delivery.customer_state,
customer_address = get_auto_delivery.customer_address,
customer_zip =get_auto_delivery.customer_zip,
customer_full_name = get_auto_delivery.customer_full_name,
oil_prices_id = get_todays_price.id,
gallons_delivered = gallons_delivered,
price_per_gallon = get_todays_price.price_for_customer,
total_amount_customer = total_amount,
fill_date = date.today(),
payment_type = payment_type,
payment_card_id = payment_card_id,
payment_status = payment_status,
)
session.add(create_new_ticket)
session.commit() # Commit all changes in one transaction
return ({
"ok": True,
"auto_ticket_id":create_new_ticket.id
}), 200

View File

@@ -16,20 +16,19 @@ router = APIRouter(
) )
@router.get("/all/customers", status_code=200) @router.get("/all/customers", status_code=200)
def get_delivery_customers(): def get_delivery_customers():
automatics = ( automatics = (
session.query(Auto_Delivery) session.query(Auto_Delivery)
.filter(Auto_Delivery.auto_status.in_([1, 3])) .filter(Auto_Delivery.auto_status.in_([1, 3]))
.order_by(Auto_Delivery.estimated_gallons_left.asc()) .order_by(Auto_Delivery.estimated_gallons_left.asc())
.limit(1) .all()
) )
return JSONResponse(content=jsonable_encoder(automatics), status_code=200) return JSONResponse(content=jsonable_encoder(automatics), status_code=200)
@router.get("/driver/{driver_employee_id}", status_code=200) @router.get("/driver/{driver_employee_id}", status_code=200)
def get_delivery_for_specific_driver(driver_employee_id: int): def get_delivery_for_specific_driver(driver_employee_id: int):
@@ -73,15 +72,15 @@ def get_auto_by_ticket(delivery_id_order):
.filter(Tickets_Auto_Delivery.id == delivery_id_order) .filter(Tickets_Auto_Delivery.id == delivery_id_order)
.first() .first()
) )
return JSONResponse(content=jsonable_encoder(get_delivery), status_code=200) return JSONResponse(content=jsonable_encoder(get_delivery), status_code=200)
@router.get("/all/profile/{customer_id}", status_code=200) @router.get("/all/profile/{customer_id}", status_code=200)
def get_autos_customers(customer_id, db: Session = Depends(get_db)): def get_autos_customers(customer_id):
get_delivery = ( get_delivery = (
db.query(Tickets_Auto_Delivery) session.query(Tickets_Auto_Delivery)
.filter(Tickets_Auto_Delivery.customer_id == customer_id) .filter(Tickets_Auto_Delivery.customer_id == customer_id)
.order_by(Tickets_Auto_Delivery.id.desc()) .order_by(Tickets_Auto_Delivery.id.desc())
.limit(5) .limit(5)
@@ -90,11 +89,24 @@ def get_autos_customers(customer_id, db: Session = Depends(get_db)):
return JSONResponse(content=jsonable_encoder(get_delivery), status_code=200) return JSONResponse(content=jsonable_encoder(get_delivery), status_code=200)
@router.get("/all/profile/profile/{customer_id}", status_code=200)
def get_autos_customers(customer_id):
get_delivery = (
session.query(Tickets_Auto_Delivery)
.filter(Tickets_Auto_Delivery.customer_id == customer_id)
.order_by(Tickets_Auto_Delivery.id.desc())
.limit(25)
.all()
)
return JSONResponse(content=jsonable_encoder(get_delivery), status_code=200)
@router.put("/update_status/{auto_id}", status_code=200) @router.put("/update_status/{auto_id}", status_code=200)
def update_auto_status(auto_id: int, db: Session = Depends(get_db)): def update_auto_status(auto_id: int):
update_status = ( update_status = (
db.query(Auto_Delivery) session.query(Auto_Delivery)
.filter(Auto_Delivery.id == auto_id) .filter(Auto_Delivery.id == auto_id)
.first() .first()
) )