major claude changes
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
import logging
|
||||
from fastapi import APIRouter, Request, HTTPException
|
||||
from datetime import date
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
from database import session
|
||||
from decimal import Decimal
|
||||
|
||||
@@ -52,7 +55,7 @@ async def update_auto(autoid: int, request: Request):
|
||||
return {"ok": True, "message": "Delivery confirmed and customer factor refined successfully."}
|
||||
|
||||
except Exception as e:
|
||||
print(str(e))
|
||||
logger.error(str(e))
|
||||
session.rollback()
|
||||
raise HTTPException(status_code=500, detail=f"An internal error occurred: {str(e)}")
|
||||
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
from fastapi import APIRouter
|
||||
import logging
|
||||
from fastapi import APIRouter, Depends
|
||||
from fastapi.responses import JSONResponse
|
||||
from fastapi.encoders import jsonable_encoder
|
||||
from database import session
|
||||
|
||||
from app.models.auto import Auto_Delivery, Tickets_Auto_Delivery
|
||||
from app.models.delivery import Delivery
|
||||
from app.models.auth import Auth_User
|
||||
from app.auth import get_current_user
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
|
||||
@@ -17,8 +22,8 @@ router = APIRouter(
|
||||
|
||||
|
||||
@router.get("/all/customers", status_code=200)
|
||||
def get_delivery_customers():
|
||||
|
||||
def get_delivery_customers(current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"GET /delivery/all/customers - User: {current_user.username}")
|
||||
automatics = (
|
||||
session.query(Auto_Delivery)
|
||||
.filter(Auto_Delivery.auto_status.in_([1, 3]))
|
||||
@@ -27,10 +32,11 @@ def get_delivery_customers():
|
||||
)
|
||||
|
||||
return JSONResponse(content=jsonable_encoder(automatics), 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, current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"GET /delivery/driver/{driver_employee_id} - User: {current_user.username}")
|
||||
automatics = (
|
||||
session.query(Delivery)
|
||||
.filter(Delivery.driver_employee_id == driver_employee_id)
|
||||
@@ -40,9 +46,10 @@ def get_delivery_for_specific_driver(driver_employee_id: int):
|
||||
)
|
||||
|
||||
return JSONResponse(content=jsonable_encoder(automatics), status_code=200)
|
||||
|
||||
|
||||
@router.get("/delivery/{ticket_id}", status_code=200)
|
||||
def get_delivery_by_openticket(ticket_id):
|
||||
def get_delivery_by_openticket(ticket_id, current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"GET /delivery/delivery/{ticket_id} - User: {current_user.username}")
|
||||
get_delivery = (
|
||||
session.query(Auto_Delivery)
|
||||
.filter(Auto_Delivery.id == ticket_id)
|
||||
@@ -50,10 +57,11 @@ def get_delivery_by_openticket(ticket_id):
|
||||
)
|
||||
|
||||
return JSONResponse(content=jsonable_encoder(get_delivery), status_code=200)
|
||||
|
||||
|
||||
|
||||
@router.get("/finddelivery/{ticket_id}", status_code=200)
|
||||
def get_delivery_by_openticket(ticket_id):
|
||||
def get_delivery_by_findticket(ticket_id, current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"GET /delivery/finddelivery/{ticket_id} - User: {current_user.username}")
|
||||
get_delivery = (
|
||||
session.query(Auto_Delivery)
|
||||
.filter(Auto_Delivery.open_ticket_id == ticket_id)
|
||||
@@ -61,11 +69,12 @@ def get_delivery_by_openticket(ticket_id):
|
||||
)
|
||||
|
||||
return JSONResponse(content=jsonable_encoder(get_delivery), status_code=200)
|
||||
|
||||
|
||||
|
||||
|
||||
@router.get("/autoticket/{delivery_id_order}", status_code=200)
|
||||
def get_auto_by_ticket(delivery_id_order):
|
||||
def get_auto_by_ticket(delivery_id_order, current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"GET /delivery/autoticket/{delivery_id_order} - User: {current_user.username}")
|
||||
get_delivery = (
|
||||
session.query(Tickets_Auto_Delivery)
|
||||
.filter(Tickets_Auto_Delivery.id == delivery_id_order)
|
||||
@@ -73,11 +82,11 @@ def get_auto_by_ticket(delivery_id_order):
|
||||
)
|
||||
|
||||
return JSONResponse(content=jsonable_encoder(get_delivery), status_code=200)
|
||||
|
||||
|
||||
|
||||
@router.get("/all/profile/{customer_id}", status_code=200)
|
||||
def get_autos_customers(customer_id):
|
||||
|
||||
def get_autos_customers(customer_id, current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"GET /delivery/all/profile/{customer_id} - User: {current_user.username}")
|
||||
get_delivery = (
|
||||
session.query(Tickets_Auto_Delivery)
|
||||
.filter(Tickets_Auto_Delivery.customer_id == customer_id)
|
||||
@@ -89,8 +98,8 @@ def get_autos_customers(customer_id):
|
||||
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):
|
||||
|
||||
def get_autos_customers_extended(customer_id, current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"GET /delivery/all/profile/profile/{customer_id} - User: {current_user.username}")
|
||||
get_delivery = (
|
||||
session.query(Tickets_Auto_Delivery)
|
||||
.filter(Tickets_Auto_Delivery.customer_id == customer_id)
|
||||
@@ -103,8 +112,8 @@ def get_autos_customers(customer_id):
|
||||
|
||||
|
||||
@router.get("/auto/customer/{customer_id}", status_code=200)
|
||||
def get_auto_delivery_by_customer(customer_id):
|
||||
|
||||
def get_auto_delivery_by_customer(customer_id, current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"GET /delivery/auto/customer/{customer_id} - User: {current_user.username}")
|
||||
get_auto_delivery = (
|
||||
session.query(Auto_Delivery)
|
||||
.filter(Auto_Delivery.customer_id == customer_id)
|
||||
@@ -115,7 +124,8 @@ def get_auto_delivery_by_customer(customer_id):
|
||||
|
||||
|
||||
@router.put("/update_status/{auto_id}", status_code=200)
|
||||
def update_auto_status(auto_id: int):
|
||||
def update_auto_status(auto_id: int, current_user: Auth_User = Depends(get_current_user)):
|
||||
logger.info(f"PUT /delivery/update_status/{auto_id} - User: {current_user.username}")
|
||||
update_status = (
|
||||
session.query(Auto_Delivery)
|
||||
.filter(Auto_Delivery.id == auto_id)
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import logging
|
||||
from fastapi import APIRouter
|
||||
from fastapi.responses import JSONResponse
|
||||
from fastapi.encoders import jsonable_encoder
|
||||
@@ -9,6 +10,8 @@ from decimal import Decimal
|
||||
from app.models.auto import Auto_Delivery, Tickets_Auto_Delivery, Auto_Temp
|
||||
from app.models.delivery import Delivery
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
# Constants from fuel_estimator
|
||||
HOT_WATER_DAILY_USAGE = Decimal('1.0')
|
||||
K_FACTOR_SMOOTHING_WEIGHT = Decimal('0.7')
|
||||
@@ -33,6 +36,7 @@ def fix_customer_last_delivered():
|
||||
|
||||
Returns statistics and a list of changes made.
|
||||
"""
|
||||
logger.info("GET /fixstuff/lastdelivered - Fixing customer last delivered dates")
|
||||
auto_deliveries = session.query(Auto_Delivery).all()
|
||||
changes = []
|
||||
total_customers = len(auto_deliveries)
|
||||
@@ -76,6 +80,7 @@ def estimate_customer_gallons(update_db: int):
|
||||
Multiple deliveries: use historical average. Includes address and scaling factor.
|
||||
When update_db=1, updates estimated_gallons_left and house_factor in database.
|
||||
"""
|
||||
logger.info(f"GET /fixstuff/estimate_gallons/{update_db} - Estimating customer gallons (update_db={update_db})")
|
||||
auto_deliveries = session.query(Auto_Delivery).all()
|
||||
estimates = []
|
||||
for ad in auto_deliveries:
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import logging
|
||||
from fastapi import APIRouter
|
||||
from fastapi.responses import JSONResponse
|
||||
from fastapi.encoders import jsonable_encoder
|
||||
@@ -10,6 +11,8 @@ from app.models.customer import Customer_Customer, Customer_estimate_gallons
|
||||
from app.models.delivery import Delivery
|
||||
from app.models.auto import Auto_Temp
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
# Constants from fuel_estimator
|
||||
HOT_WATER_DAILY_USAGE = Decimal('1.0')
|
||||
K_FACTOR_SMOOTHING_WEIGHT = Decimal('0.7')
|
||||
@@ -42,6 +45,7 @@ def fix_customer_last_delivered():
|
||||
|
||||
Returns statistics and a list of changes made.
|
||||
"""
|
||||
logger.info("GET /fixstuff_customer/lastdelivered - Fixing customer last delivered dates")
|
||||
session.rollback() # Reset any aborted transaction state
|
||||
customer_estimates = session.query(Customer_estimate_gallons).all()
|
||||
changes = []
|
||||
@@ -87,6 +91,7 @@ def estimate_customer_gallons(update_db: int):
|
||||
Multiple deliveries: use historical average. Includes address and scaling factor.
|
||||
When update_db=1, updates estimated_gallons_left and house_factor in database.
|
||||
"""
|
||||
logger.info(f"GET /fixstuff_customer/estimate_gallons/{update_db} - Estimating customer gallons (update_db={update_db})")
|
||||
session.rollback() # Reset any aborted transaction state
|
||||
|
||||
# Check if weather data is available
|
||||
@@ -235,6 +240,7 @@ def estimate_customer_gallons_specific(customer_id: int):
|
||||
Estimates current gallons for a specific regular customer based on delivery history and weather.
|
||||
Returns estimation data for the specified customer only.
|
||||
"""
|
||||
logger.info(f"GET /fixstuff_customer/estimate_gallons/customer/{customer_id} - Estimating gallons for specific customer")
|
||||
session.rollback() # Reset any aborted transaction state
|
||||
|
||||
# Check if weather data is available
|
||||
@@ -386,6 +392,7 @@ def populate_customer_estimates():
|
||||
|
||||
Returns statistics on records created.
|
||||
"""
|
||||
logger.info("GET /fixstuff_customer/populate_estimates - Populating customer estimates")
|
||||
session.rollback() # Reset any aborted transaction state
|
||||
|
||||
# Get all regular customers (customer_automatic == 0)
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
import logging
|
||||
from fastapi import APIRouter, HTTPException
|
||||
from database import session
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
from app.script.fuel_estimator import FuelEstimator
|
||||
from app.script.temp_getter import fetch_and_store_daily_temp
|
||||
from app.script.fuel_estimator_customer import FuelEstimatorCustomer
|
||||
@@ -45,7 +48,7 @@ def update_all_customer_fuel_levels_auto():
|
||||
except Exception as e:
|
||||
session.rollback()
|
||||
# Log the exception e
|
||||
print(str(e))
|
||||
logger.error(str(e))
|
||||
return {"ok": False, "message": "An internal error occurred."}
|
||||
|
||||
|
||||
@@ -63,5 +66,5 @@ def update_all_customer_fuel_levels_normal():
|
||||
except Exception as e:
|
||||
session.rollback()
|
||||
# Log the exception e
|
||||
print(str(e))
|
||||
logger.error(str(e))
|
||||
return {"ok": False, "message": "An internal error occurred."}
|
||||
|
||||
Reference in New Issue
Block a user