Changes
This commit is contained in:
@@ -33,7 +33,6 @@ class Delivery_Delivery(db.Model):
|
|||||||
# cancelled = 3
|
# cancelled = 3
|
||||||
# partial delivery = 4
|
# partial delivery = 4
|
||||||
# issue = 5
|
# issue = 5
|
||||||
|
|
||||||
# finalized = 10
|
# finalized = 10
|
||||||
delivery_status = db.Column(db.INTEGER)
|
delivery_status = db.Column(db.INTEGER)
|
||||||
# when the call to order took place
|
# when the call to order took place
|
||||||
@@ -58,7 +57,8 @@ class Delivery_Delivery(db.Model):
|
|||||||
# credit = 1
|
# credit = 1
|
||||||
payment_type = db.Column(db.INTEGER)
|
payment_type = db.Column(db.INTEGER)
|
||||||
payment_card_id = db.Column(db.INTEGER)
|
payment_card_id = db.Column(db.INTEGER)
|
||||||
|
cash_recieved = db.Column(db.DECIMAL(50, 2))
|
||||||
|
|
||||||
driver_employee_id = db.Column(db.INTEGER)
|
driver_employee_id = db.Column(db.INTEGER)
|
||||||
driver_first_name = db.Column(db.VARCHAR(140))
|
driver_first_name = db.Column(db.VARCHAR(140))
|
||||||
driver_last_name = db.Column(db.VARCHAR(140))
|
driver_last_name = db.Column(db.VARCHAR(140))
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ from app.classes.pricing import Pricing_Oil_Oil
|
|||||||
from app.classes.auth import Auth_User
|
from app.classes.auth import Auth_User
|
||||||
from app.classes.pricing import Pricing_Service_General
|
from app.classes.pricing import Pricing_Service_General
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@delivery.route("/<int:delivery_id>", methods=["GET"])
|
@delivery.route("/<int:delivery_id>", methods=["GET"])
|
||||||
def get_a_delivery(delivery_id):
|
def get_a_delivery(delivery_id):
|
||||||
"""
|
"""
|
||||||
|
|||||||
@@ -1,44 +1,20 @@
|
|||||||
from flask import request, jsonify
|
from flask import request, jsonify
|
||||||
from flask_login import current_user
|
|
||||||
from datetime import date
|
|
||||||
from app.delivery_data import delivery_data
|
from app.delivery_data import delivery_data
|
||||||
from app import db
|
from app import db
|
||||||
from datetime import datetime
|
|
||||||
from app.classes.customer import Customer_Customer
|
from app.classes.customer import Customer_Customer
|
||||||
from app.classes.delivery import (Delivery_Delivery,
|
from app.classes.delivery import Delivery_Delivery
|
||||||
Delivery_Delivery_schema,
|
from app.classes.employee import Employee_Employee
|
||||||
Delivery_Notes_Driver,
|
|
||||||
Delivery_Payment,
|
|
||||||
Delivery_Payment_schema,
|
|
||||||
)
|
|
||||||
from app.classes.cards import Card_Card
|
from app.classes.cards import Card_Card
|
||||||
from app.classes.pricing import Pricing_Oil_Oil
|
from app.classes.pricing import Pricing_Oil_Oil
|
||||||
from app.classes.auth import Auth_User
|
|
||||||
from app.classes.pricing import Pricing_Service_General
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@delivery_data.route("/pending", methods=["GET"])
|
|
||||||
def pending_delivery():
|
|
||||||
"""
|
|
||||||
Get deliveries that have been delivered
|
|
||||||
"""
|
|
||||||
|
|
||||||
delivery_ticket = (db.session
|
|
||||||
.query(Delivery_Delivery)
|
|
||||||
.filter(Delivery_Delivery.delivery_status!=0)
|
|
||||||
.all())
|
|
||||||
|
|
||||||
|
|
||||||
delivery_schema = Delivery_Delivery_schema(many=True)
|
|
||||||
return jsonify(delivery_schema.dump(delivery_ticket))
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@delivery_data.route("/finalize/<int:delivery_id>", methods=["PUT"])
|
@delivery_data.route("/finalize/<int:delivery_id>", methods=["PUT"])
|
||||||
def finalize_delivery(delivery_id):
|
def office_finalize_delivery(delivery_id):
|
||||||
"""
|
"""
|
||||||
Get deliveries that have been delivered
|
This will make a delivery finalized from the driver
|
||||||
"""
|
"""
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -63,7 +39,6 @@ def finalize_delivery(delivery_id):
|
|||||||
gallons_delivered = request.json["gallons_delivered"]
|
gallons_delivered = request.json["gallons_delivered"]
|
||||||
card_payment = request.json["credit"]
|
card_payment = request.json["credit"]
|
||||||
cash_payment = request.json["cash"]
|
cash_payment = request.json["cash"]
|
||||||
|
|
||||||
if request.json["credit_card_id"]:
|
if request.json["credit_card_id"]:
|
||||||
card_payment_id = request.json["credit_card_id"]
|
card_payment_id = request.json["credit_card_id"]
|
||||||
else:
|
else:
|
||||||
@@ -91,7 +66,6 @@ def finalize_delivery(delivery_id):
|
|||||||
delivery_payment_method = 3
|
delivery_payment_method = 3
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
same_day_info = request.json["same_day"]
|
same_day_info = request.json["same_day"]
|
||||||
if same_day_info is True:
|
if same_day_info is True:
|
||||||
same_day_info = 1
|
same_day_info = 1
|
||||||
@@ -111,6 +85,84 @@ def finalize_delivery(delivery_id):
|
|||||||
get_delivery.payment_card_id = card_id_from_customer
|
get_delivery.payment_card_id = card_id_from_customer
|
||||||
|
|
||||||
get_delivery.delivery_status = 10
|
get_delivery.delivery_status = 10
|
||||||
|
|
||||||
|
db.session.add(get_delivery)
|
||||||
|
db.session.commit()
|
||||||
|
|
||||||
|
return jsonify({
|
||||||
|
"ok": True,
|
||||||
|
'delivery': {
|
||||||
|
'id': get_delivery.id,
|
||||||
|
},
|
||||||
|
}), 200
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@delivery_data.route("/driver/finalize/<int:delivery_id>", methods=["PUT"])
|
||||||
|
def driver_finalize_delivery(delivery_id):
|
||||||
|
"""
|
||||||
|
This will make a delivery finalized from the driver
|
||||||
|
"""
|
||||||
|
|
||||||
|
"""
|
||||||
|
Finalizes a delivery from office
|
||||||
|
"""
|
||||||
|
get_delivery = db.session \
|
||||||
|
.query(Delivery_Delivery) \
|
||||||
|
.filter(Delivery_Delivery.id == delivery_id) \
|
||||||
|
.first()
|
||||||
|
|
||||||
|
get_today_price = db.session \
|
||||||
|
.query(Pricing_Oil_Oil) \
|
||||||
|
.order_by(Pricing_Oil_Oil.id.desc()) \
|
||||||
|
.first()
|
||||||
|
|
||||||
|
|
||||||
|
gallons_delivered = request.json["gallons_delivered"]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if request.json["driver_employee_id"]:
|
||||||
|
delivery_driver_id = request.json["delivery_driver_id"]
|
||||||
|
get_driver = (db.session
|
||||||
|
.query(Employee_Employee)
|
||||||
|
.filter(Employee_Employee.id == delivery_driver_id)
|
||||||
|
.first())
|
||||||
|
same_driver = False
|
||||||
|
else:
|
||||||
|
same_driver = True
|
||||||
|
|
||||||
|
customer_filled = request.json["customer_filled"]
|
||||||
|
if customer_filled is True:
|
||||||
|
customer_filled = 1
|
||||||
|
else:
|
||||||
|
customer_filled = 0
|
||||||
|
|
||||||
|
if request.json["cash_amount"]:
|
||||||
|
cash_amount = request.json["cash_amount"]
|
||||||
|
else:
|
||||||
|
cash_amount = None
|
||||||
|
|
||||||
|
prime_info = request.json["prime"]
|
||||||
|
if prime_info is True:
|
||||||
|
prime_info = 1
|
||||||
|
else:
|
||||||
|
prime_info = 0
|
||||||
|
|
||||||
|
|
||||||
|
get_delivery.gallons_delivered = gallons_delivered
|
||||||
|
get_delivery.prime = prime_info
|
||||||
|
get_delivery.customer_filled = customer_filled
|
||||||
|
get_delivery.cash_recieved = cash_amount
|
||||||
|
|
||||||
|
if same_driver == False:
|
||||||
|
get_delivery.driver_last_name = get_driver.employee_last_name
|
||||||
|
get_delivery.driver_first_name = get_driver.employee_first_name
|
||||||
|
get_delivery.driver_employee_id = get_driver.id
|
||||||
|
|
||||||
|
# update delivery stattus to delivered
|
||||||
|
get_delivery.delivery_status = 1
|
||||||
|
|
||||||
db.session.add(get_delivery)
|
db.session.add(get_delivery)
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
|
|
||||||
|
|||||||
@@ -1,24 +1,34 @@
|
|||||||
from flask import request, jsonify
|
from flask import jsonify
|
||||||
from flask_login import current_user
|
|
||||||
from datetime import date, timedelta, time
|
from datetime import date, timedelta
|
||||||
from app.delivery_status import deliverystatus
|
from app.delivery_status import deliverystatus
|
||||||
from app import db
|
from app import db
|
||||||
|
from sqlalchemy import or_
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from app.classes.customer import Customer_Customer
|
|
||||||
from app.classes.delivery import (Delivery_Delivery,
|
from app.classes.delivery import (Delivery_Delivery,
|
||||||
Delivery_Delivery_schema,
|
Delivery_Delivery_schema,
|
||||||
Delivery_Notes_Driver,
|
|
||||||
Delivery_Payment,
|
|
||||||
Delivery_Payment_schema,
|
|
||||||
)
|
)
|
||||||
from app.classes.cards import Card_Card
|
|
||||||
from app.classes.pricing import Pricing_Oil_Oil
|
|
||||||
from app.classes.auth import Auth_User
|
@deliverystatus.route("/delivered", methods=["GET"])
|
||||||
from app.classes.pricing import Pricing_Service_General
|
def delivered_delivery():
|
||||||
|
"""
|
||||||
|
Get deliveries that have been delivered
|
||||||
|
"""
|
||||||
|
|
||||||
|
delivery_ticket = (db.session
|
||||||
|
.query(Delivery_Delivery)
|
||||||
|
.filter(or_(Delivery_Delivery.delivery_status == 1,
|
||||||
|
Delivery_Delivery.delivery_status == 10))
|
||||||
|
.all())
|
||||||
|
|
||||||
|
|
||||||
|
delivery_schema = Delivery_Delivery_schema(many=True)
|
||||||
|
return jsonify(delivery_schema.dump(delivery_ticket))
|
||||||
|
|
||||||
|
|
||||||
@deliverystatus.route("/today/driver/<int:user_id>", methods=["GET"])
|
@deliverystatus.route("/today/driver/<int:user_id>", methods=["GET"])
|
||||||
def get_deliveries_driver_day(user_id):
|
def get_deliveries_driver_today(user_id):
|
||||||
"""
|
"""
|
||||||
Get deliveries for driver that day
|
Get deliveries for driver that day
|
||||||
"""
|
"""
|
||||||
@@ -31,6 +41,7 @@ def get_deliveries_driver_day(user_id):
|
|||||||
delivery_schema = Delivery_Delivery_schema(many=True)
|
delivery_schema = Delivery_Delivery_schema(many=True)
|
||||||
return jsonify(delivery_schema.dump(get_delivery))
|
return jsonify(delivery_schema.dump(get_delivery))
|
||||||
|
|
||||||
|
|
||||||
@deliverystatus.route("/tommorrow/driver/<int:user_id>", methods=["GET"])
|
@deliverystatus.route("/tommorrow/driver/<int:user_id>", methods=["GET"])
|
||||||
def get_deliveries_driver_tommorrow(user_id):
|
def get_deliveries_driver_tommorrow(user_id):
|
||||||
"""
|
"""
|
||||||
@@ -47,6 +58,7 @@ def get_deliveries_driver_tommorrow(user_id):
|
|||||||
delivery_schema = Delivery_Delivery_schema(many=True)
|
delivery_schema = Delivery_Delivery_schema(many=True)
|
||||||
return jsonify(delivery_schema.dump(get_delivery))
|
return jsonify(delivery_schema.dump(get_delivery))
|
||||||
|
|
||||||
|
|
||||||
@deliverystatus.route("/waiting/driver/<int:user_id>", methods=["GET"])
|
@deliverystatus.route("/waiting/driver/<int:user_id>", methods=["GET"])
|
||||||
def get_deliveries_driver_waiting(user_id):
|
def get_deliveries_driver_waiting(user_id):
|
||||||
"""
|
"""
|
||||||
@@ -55,7 +67,7 @@ def get_deliveries_driver_waiting(user_id):
|
|||||||
get_delivery = (db.session
|
get_delivery = (db.session
|
||||||
.query(Delivery_Delivery)
|
.query(Delivery_Delivery)
|
||||||
.filter(Delivery_Delivery.driver_employee_id == user_id)
|
.filter(Delivery_Delivery.driver_employee_id == user_id)
|
||||||
.filter(Delivery_Delivery.delivery_status == 1)
|
.filter(Delivery_Delivery.delivery_status == 0)
|
||||||
.all())
|
.all())
|
||||||
|
|
||||||
delivery_schema = Delivery_Delivery_schema(many=True)
|
delivery_schema = Delivery_Delivery_schema(many=True)
|
||||||
|
|||||||
Reference in New Issue
Block a user