major claude changes
This commit is contained in:
@@ -1,8 +1,12 @@
|
||||
import logging
|
||||
from flask import request, jsonify
|
||||
from flask_login import current_user
|
||||
from datetime import date, datetime, timedelta
|
||||
from app.delivery import delivery
|
||||
from app import db
|
||||
from app.common.decorators import login_required as common_login_required
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
from sqlalchemy import or_
|
||||
from app.classes.customer import (Customer_Customer)
|
||||
from app.classes.delivery import (Delivery_Delivery,
|
||||
@@ -20,6 +24,7 @@ from app.classes.auto import Tickets_Auto_Delivery, Tickets_Auto_Delivery_schema
|
||||
|
||||
# This endpoint is fine, but I've added some comments for clarity.
|
||||
@delivery.route("/updatestatus", methods=["GET"])
|
||||
@common_login_required
|
||||
def move_deliveries():
|
||||
"""
|
||||
Batch updates delivery statuses based on their expected delivery date relative to today.
|
||||
@@ -28,6 +33,7 @@ def move_deliveries():
|
||||
- Future deliveries -> "Waiting" (0)
|
||||
- Past-due deliveries -> "Pending" (9)
|
||||
"""
|
||||
logger.info("GET /delivery/updatestatus - Batch updating delivery statuses")
|
||||
counter = 0
|
||||
today = date.today()
|
||||
tomorrow = today + timedelta(days=1)
|
||||
@@ -84,10 +90,12 @@ def move_deliveries():
|
||||
|
||||
|
||||
@delivery.route("/<int:delivery_id>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_a_delivery(delivery_id):
|
||||
"""
|
||||
Get a single delivery's details.
|
||||
"""
|
||||
logger.info(f"GET /delivery/{delivery_id} - Fetching delivery")
|
||||
get_delivery = db.session.query(Delivery_Delivery).filter(Delivery_Delivery.id == delivery_id).first()
|
||||
if not get_delivery:
|
||||
return jsonify({"ok": False, "error": "Delivery not found"}), 404
|
||||
@@ -101,8 +109,9 @@ def get_a_delivery(delivery_id):
|
||||
|
||||
|
||||
@delivery.route("/past1/<int:customer_id>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_customer_past_delivery1(customer_id):
|
||||
|
||||
logger.info(f"GET /delivery/past1/{customer_id} - Fetching customer past deliveries (first 5)")
|
||||
get_customer_past_delivery = (db.session
|
||||
.query(Delivery_Delivery)
|
||||
.filter(Delivery_Delivery.customer_id == customer_id)
|
||||
@@ -114,8 +123,9 @@ def get_customer_past_delivery1(customer_id):
|
||||
|
||||
|
||||
@delivery.route("/past2/<int:customer_id>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_customer_past_delivery2(customer_id):
|
||||
|
||||
logger.info(f"GET /delivery/past2/{customer_id} - Fetching customer past deliveries (next 5)")
|
||||
get_customer_past_delivery = (db.session
|
||||
.query(Delivery_Delivery)
|
||||
.filter(Delivery_Delivery.customer_id == customer_id)
|
||||
@@ -127,7 +137,9 @@ def get_customer_past_delivery2(customer_id):
|
||||
return jsonify(delivery_schema.dump(get_customer_past_delivery))
|
||||
|
||||
@delivery.route("/auto/<int:customer_id>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_customer_auto_delivery(customer_id):
|
||||
logger.info(f"GET /delivery/auto/{customer_id} - Fetching customer auto deliveries")
|
||||
get_customer_past_delivery = (db.session
|
||||
.query(Tickets_Auto_Delivery)
|
||||
.filter(Tickets_Auto_Delivery.customer_id == customer_id)
|
||||
@@ -140,6 +152,7 @@ def get_customer_auto_delivery(customer_id):
|
||||
|
||||
|
||||
@delivery.route("/order/<int:delivery_id>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_a_specific_delivery(delivery_id):
|
||||
"""
|
||||
Get a single delivery by its ID.
|
||||
@@ -155,6 +168,7 @@ def get_a_specific_delivery(delivery_id):
|
||||
|
||||
|
||||
@delivery.route("/cash/<int:delivery_id>/<int:type_of_payment>", methods=["PUT"])
|
||||
@common_login_required
|
||||
def update_a_delivery_payment(delivery_id, type_of_payment):
|
||||
"""
|
||||
This update a delivery for example if user updates to a fill
|
||||
@@ -175,6 +189,7 @@ def update_a_delivery_payment(delivery_id, type_of_payment):
|
||||
|
||||
|
||||
@delivery.route("/all/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_all(page):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
@@ -200,6 +215,7 @@ def get_deliveries_all(page):
|
||||
|
||||
|
||||
@delivery.route("/customer/<int:customer_id>/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_from_customer(customer_id, page):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
@@ -225,6 +241,7 @@ def get_deliveries_from_customer(customer_id, page):
|
||||
|
||||
|
||||
@delivery.route("/all/order/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_not_delivered(page):
|
||||
|
||||
"""
|
||||
@@ -250,6 +267,7 @@ def get_deliveries_not_delivered(page):
|
||||
|
||||
|
||||
@delivery.route("/waiting/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_waiting(page):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
@@ -278,6 +296,7 @@ def get_deliveries_waiting(page):
|
||||
|
||||
|
||||
@delivery.route("/pending/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_pending(page):
|
||||
"""
|
||||
"""
|
||||
@@ -299,6 +318,7 @@ def get_deliveries_pending(page):
|
||||
return jsonify(customer_schema.dump(deliveries))
|
||||
|
||||
@delivery.route("/outfordelivery/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_outfordelivery(page):
|
||||
"""
|
||||
"""
|
||||
@@ -322,6 +342,7 @@ def get_deliveries_outfordelivery(page):
|
||||
|
||||
|
||||
@delivery.route("/tommorrow/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_tommorrow(page):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
@@ -348,6 +369,7 @@ def get_deliveries_tommorrow(page):
|
||||
|
||||
|
||||
@delivery.route("/finalized/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_finalized(page):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
@@ -372,6 +394,7 @@ def get_deliveries_finalized(page):
|
||||
|
||||
|
||||
@delivery.route("/cancelled/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_cancelled(page):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
@@ -396,6 +419,7 @@ def get_deliveries_cancelled(page):
|
||||
|
||||
|
||||
@delivery.route("/partialdelivery/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_partial(page):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
@@ -420,6 +444,7 @@ def get_deliveries_partial(page):
|
||||
|
||||
|
||||
@delivery.route("/issue/<int:page>", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_issue(page):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
@@ -444,6 +469,7 @@ def get_deliveries_issue(page):
|
||||
|
||||
|
||||
@delivery.route("/time/today", methods=["GET"])
|
||||
@common_login_required
|
||||
def get_deliveries_today():
|
||||
"""
|
||||
This will get today's deliveries
|
||||
@@ -460,10 +486,12 @@ def get_deliveries_today():
|
||||
|
||||
|
||||
@delivery.route("/edit/<int:delivery_id>", methods=["POST"])
|
||||
@common_login_required
|
||||
def edit_a_delivery(delivery_id):
|
||||
"""
|
||||
This will edit a delivery using a delivery id.
|
||||
"""
|
||||
logger.info(f"POST /delivery/edit/{delivery_id} - Editing delivery")
|
||||
data = request.json
|
||||
get_delivery = db.session.query(Delivery_Delivery).filter(Delivery_Delivery.id == delivery_id).first()
|
||||
|
||||
@@ -561,10 +589,12 @@ def edit_a_delivery(delivery_id):
|
||||
|
||||
|
||||
@delivery.route("/create/<int:user_id>", methods=["POST"])
|
||||
@common_login_required
|
||||
def create_a_delivery(user_id):
|
||||
"""
|
||||
This will create a delivery using a customer id
|
||||
"""
|
||||
logger.info(f"POST /delivery/create/{user_id} - Creating delivery for customer")
|
||||
get_customer = db.session\
|
||||
.query(Customer_Customer)\
|
||||
.filter(Customer_Customer.id == user_id)\
|
||||
@@ -600,7 +630,7 @@ def create_a_delivery(user_id):
|
||||
promo_id = request.json["promo_id"]
|
||||
else:
|
||||
promo_id = None
|
||||
except:
|
||||
except (KeyError, TypeError):
|
||||
promo_id = None
|
||||
if promo_id is not None:
|
||||
get_promo_data = (db.session
|
||||
@@ -651,7 +681,7 @@ def create_a_delivery(user_id):
|
||||
card_payment_id = request.json["credit_card_id"]
|
||||
else:
|
||||
card_payment_id = None
|
||||
except:
|
||||
except (KeyError, TypeError):
|
||||
card_payment_id = None
|
||||
|
||||
if card_payment_id is not None:
|
||||
@@ -777,10 +807,12 @@ def create_a_delivery(user_id):
|
||||
|
||||
|
||||
@delivery.route("/cancel/<int:delivery_id>", methods=["POST"])
|
||||
@common_login_required
|
||||
def cancel_a_delivery(delivery_id):
|
||||
"""
|
||||
This will cancel a delivery
|
||||
"""
|
||||
logger.info(f"POST /delivery/cancel/{delivery_id} - Cancelling delivery")
|
||||
get_delivery = db.session\
|
||||
.query(Delivery_Delivery)\
|
||||
.filter(Delivery_Delivery.id == delivery_id)\
|
||||
@@ -794,10 +826,12 @@ def cancel_a_delivery(delivery_id):
|
||||
|
||||
|
||||
@delivery.route("/delivered/<int:delivery_id>", methods=["POST"])
|
||||
@common_login_required
|
||||
def mark_as_delivered(delivery_id):
|
||||
"""
|
||||
This will mark the delivery as delivered
|
||||
"""
|
||||
logger.info(f"POST /delivery/delivered/{delivery_id} - Marking delivery as delivered")
|
||||
# how many gallons delivered
|
||||
gallons_put_into_tank = request.json["gallons_put_into_tank"]
|
||||
# was the tank full or not
|
||||
@@ -819,6 +853,7 @@ def mark_as_delivered(delivery_id):
|
||||
|
||||
|
||||
@delivery.route("/partial/<int:delivery_id>", methods=["POST"])
|
||||
@common_login_required
|
||||
def partial_delivery(delivery_id):
|
||||
"""
|
||||
This will mark the delivery as delivered
|
||||
@@ -842,6 +877,7 @@ def partial_delivery(delivery_id):
|
||||
|
||||
|
||||
@delivery.route("/note/technician/<int:delivery_id>", methods=["PUT"])
|
||||
@common_login_required
|
||||
def delivery_note_driver(delivery_id):
|
||||
|
||||
"""
|
||||
@@ -876,10 +912,12 @@ def delivery_note_driver(delivery_id):
|
||||
|
||||
|
||||
@delivery.route("/delete/<int:delivery_id>", methods=["DELETE"])
|
||||
@common_login_required
|
||||
def delete_call(delivery_id):
|
||||
"""
|
||||
delete a delivery call
|
||||
"""
|
||||
logger.info(f"DELETE /delivery/delete/{delivery_id} - Deleting delivery")
|
||||
get_call_to_delete = (db.session
|
||||
.query(Delivery_Delivery)
|
||||
.filter(Delivery_Delivery.id == delivery_id)
|
||||
@@ -893,6 +931,7 @@ def delete_call(delivery_id):
|
||||
|
||||
|
||||
@delivery.route("/total/<int:delivery_id>", methods=["GET"])
|
||||
@common_login_required
|
||||
def calculate_total(delivery_id):
|
||||
"""
|
||||
This will get deliveries not done
|
||||
|
||||
Reference in New Issue
Block a user