This commit is contained in:
2024-03-28 10:36:00 -04:00
parent 52172812cb
commit 666d0895e4
49 changed files with 225 additions and 744 deletions

192
app/delivery/views.py Normal file → Executable file
View File

@@ -7,14 +7,12 @@ from app.classes.customer import Customer_Customer
from app.classes.delivery import (Delivery_Delivery,
Delivery_Delivery_schema,
Delivery_Notes_Driver,
Delivery_Payment,
Delivery_Payment_schema,
)
from app.classes.employee import Employee_Employee
from app.classes.cards import Card_Card
from app.classes.pricing import Pricing_Oil_Oil
from app.classes.auth import Auth_User
from app.classes.pricing import Pricing_Service_General
@@ -61,15 +59,6 @@ def get_a_specific_delivery(delivery_id):
return jsonify(delivery_schema.dump(get_delivery))
@delivery.route("/order/money/<int:delivery_id>", methods=["GET"])
def get_a_specific_delivery_money(delivery_id):
get_delivery_money = db.session\
.query(Delivery_Payment)\
.filter(Delivery_Payment.id == delivery_id)\
.first()
delivery_schema = Delivery_Payment_schema(many=False)
return jsonify(delivery_schema.dump(get_delivery_money))
@delivery.route("/cash/<int:delivery_id>/<int:type_of_payment>", methods=["PUT"])
@@ -97,11 +86,11 @@ def get_deliveries_not_delivered_all():
This will get deliveries not done
"""
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.delivery_status != 1) \
.filter(Delivery_Delivery.delivery_status != 3) \
.all()
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status != 1)
.filter(Delivery_Delivery.delivery_status != 3)
.all())
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -120,10 +109,10 @@ def get_deliveries_from_customer(customer_id, page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.customer_id == customer_id) \
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.customer_id == customer_id)
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -142,11 +131,11 @@ def get_deliveries_not_delivered(page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session\
.query(Delivery_Delivery)\
.filter(Delivery_Delivery.delivery_status == 0)\
.order_by(Delivery_Delivery.when_ordered.desc())\
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 0)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -164,11 +153,11 @@ def get_deliveries_waiting(page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.delivery_status == 0) \
.order_by(Delivery_Delivery.when_ordered.desc()) \
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 0)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -186,11 +175,11 @@ def get_deliveries_delivered(page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.delivery_status == 1) \
.order_by(Delivery_Delivery.when_ordered.desc()) \
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 1)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -208,15 +197,39 @@ def get_deliveries_outfordelivery(page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.delivery_status == 2) \
.order_by(Delivery_Delivery.when_ordered.desc()) \
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 2)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@delivery.route("/tommorrow/<int:page>", methods=["GET"])
def get_deliveries_tommorrow(page):
"""
This will get deliveries not done
"""
tomm = date.today() + timedelta(days=1)
per_page_amount = 50
if page is None:
offset_limit = 0
elif page == 1:
offset_limit = 0
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.expected_delivery_date == tomm)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@delivery.route("/finalized/<int:page>", methods=["GET"])
def get_deliveries_finalized(page):
"""
@@ -230,11 +243,11 @@ def get_deliveries_finalized(page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.delivery_status == 10) \
.order_by(Delivery_Delivery.when_ordered.desc()) \
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 10)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -254,11 +267,11 @@ def get_deliveries_cancelled(page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.delivery_status == 3) \
.order_by(Delivery_Delivery.when_ordered.desc()) \
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 3)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -277,11 +290,11 @@ def get_deliveries_partial(page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.delivery_status == 4) \
.order_by(Delivery_Delivery.when_ordered.desc()) \
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 4)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -299,11 +312,11 @@ def get_deliveries_issue(page):
else:
offset_limit = (per_page_amount * page) - per_page_amount
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.delivery_status == 5) \
.order_by(Delivery_Delivery.when_ordered.desc()) \
.limit(per_page_amount).offset(offset_limit)
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 5)
.order_by(Delivery_Delivery.when_ordered.desc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@@ -315,27 +328,14 @@ def get_deliveries_today():
This will get today's deliveries
"""
deliveries = db.session \
.query(Delivery_Delivery) \
.filter(Delivery_Delivery.expected_delivery_date == date.today()) \
.all()
deliveries = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.expected_delivery_date == date.today())
.all())
customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries))
@delivery.route("/amount/<int:delivery_id>", methods=["GET"])
def get_deliveries_amount_total(delivery_id):
"""
This will get deliveries totals
"""
delivery_amount = db.session \
.query(Delivery_Payment) \
.filter(Delivery_Payment.delivery_id == delivery_id) \
.all()
delivery_schema = Delivery_Delivery_schema(many=False)
return jsonify(delivery_schema.dump(delivery_amount))
@delivery.route("/edit/<int:delivery_id>", methods=["POST"])
@@ -348,10 +348,10 @@ def edit_a_delivery(delivery_id):
.filter(Delivery_Delivery.id == delivery_id) \
.first()
get_today_price = db.session \
.query(Pricing_Oil_Oil) \
.order_by(Pricing_Oil_Oil.id.desc()) \
.first()
get_today_price = (db.session
.query(Pricing_Oil_Oil)
.order_by(Pricing_Oil_Oil.id.desc())
.first())
get_customer = db.session \
.query(Customer_Customer) \
@@ -460,10 +460,7 @@ def create_a_delivery(user_id):
.order_by(Pricing_Oil_Oil.id.desc())\
.first()
get_service_prices = (db.session
.query(Pricing_Service_General)
.order_by(Pricing_Service_General.id.desc())
.first())
if not get_customer:
return jsonify({"ok": False}), 200
else:
@@ -582,10 +579,9 @@ def create_a_delivery(user_id):
pre_charge_amount=total_precharge_amount,
total_price=precharge_amount,
final_price=0,
driver_last_name = driver_l_name,
driver_first_name = driver_f_name,
driver_employee_id= driver_emp_id,
driver_last_name=driver_l_name,
driver_first_name=driver_f_name,
driver_employee_id=driver_emp_id,
)
db.session.add(new_delivery)
@@ -673,15 +669,15 @@ def delivery_note_driver(delivery_id):
driver_notes = request.json["driver_notes"]
now = datetime.utcnow()
user = db.session\
.query(Auth_User)\
.filter(Auth_User.id == current_user.id)\
.first()
user = (db.session
.query(Auth_User)
.filter(Auth_User.id == current_user.id)
.first())
get_delivery = db.session\
.query(Delivery_Delivery)\
.filter(Delivery_Delivery.id == delivery_id)\
.first()
get_delivery = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.id == delivery_id)
.first())
create_new_note = Delivery_Notes_Driver(
delivery_id=get_delivery.id,