Fixed errors

This commit is contained in:
2024-04-04 16:37:57 -04:00
parent 6fab39bf86
commit 2a4804ecb2
8 changed files with 103 additions and 65 deletions

View File

@@ -205,6 +205,9 @@ app.register_blueprint(info_blueprint, url_prefix='/info')
from .stats import stats as stats_blueprint from .stats import stats as stats_blueprint
app.register_blueprint(stats_blueprint, url_prefix='/stats') app.register_blueprint(stats_blueprint, url_prefix='/stats')
from .ticket import ticket as ticket_blueprint
app.register_blueprint(ticket_blueprint, url_prefix='/ticket')
with app.app_context(): with app.app_context():
db.configure_mappers() db.configure_mappers()

View File

@@ -6,7 +6,7 @@ from datetime import datetime
from app.classes.pricing import ( from app.classes.pricing import (
Pricing_Oil_Oil, Pricing_Oil_Oil,
Pricing_Oil_Oil_schema) Pricing_Oil_Oil_schema)
from app.classes.admin import Admin_Company, Admin_Company_schema
@admin.route("/oil/create", methods=["POST"]) @admin.route("/oil/create", methods=["POST"])
def create_oil_price(): def create_oil_price():
@@ -36,53 +36,6 @@ def create_oil_price():
}), 200 }), 200
@admin.route("/service/create", methods=["POST"])
def create_service_price():
"""
Changes general labor rates prices
"""
now = datetime.utcnow()
price_service_hour = request.json["price_service_hour"]
price_emergency_service_hourly_rate = request.json["price_emergency_service_hour"]
price_emergency_call = request.json["price_emergency_call"]
price_out_of_oil = request.json["price_out_of_oil"]
price_prime = request.json["price_prime"]
price_cleaning = request.json["price_cleaning"]
price_service = Pricing_Service_General(
price_service_hour=price_service_hour,
price_out_of_oil=price_out_of_oil,
price_emergency_service_hour=price_emergency_service_hourly_rate,
price_prime=price_prime,
price_emergency_call=price_emergency_call,
price_cleaning=price_cleaning,
date=now,
)
db.session.add(price_service)
db.session.commit()
return jsonify({
"ok": True,
'price': price_service.id,
}), 200
@admin.route("/service/get", methods=["GET"])
def get_service_price():
"""
gets service prices
"""
get_service_prices = (db.session
.query(Pricing_Service_General)
.order_by(Pricing_Service_General.date.desc())
.first())
price_schema = Pricing_Service_General_schema(many=False)
return jsonify(price_schema.dump(get_service_prices))
@admin.route("/oil/get", methods=["GET"]) @admin.route("/oil/get", methods=["GET"])
def get_oil_price(): def get_oil_price():
@@ -95,3 +48,13 @@ def get_oil_price():
.first()) .first())
price_schema = Pricing_Oil_Oil_schema(many=False) price_schema = Pricing_Oil_Oil_schema(many=False)
return jsonify(price_schema.dump(get_oil_prices)) return jsonify(price_schema.dump(get_oil_prices))
@admin.route("/company/<int:company_id>", methods=["GET"])
def get_company(company_id):
get_data_company = (db.session
.query(Admin_Company)
.first())
company_schema = Admin_Company_schema(many=False)
return jsonify(company_schema.dump(get_data_company))

View File

@@ -36,9 +36,9 @@ class Delivery_Delivery(db.Model):
# 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
when_ordered = db.Column(db.TIMESTAMP(), default=datetime.utcnow()) when_ordered = db.Column(db.DATE(), default=datetime.utcnow())
# when the delivery date happened # when the delivery date happened
when_delivered = db.Column(db.TIMESTAMP(), default=None) when_delivered = db.Column(db.DATE(), default=None)
# when the delivery is expected ie what day # when the delivery is expected ie what day
expected_delivery_date = db.Column(db.DATE(), default=None) expected_delivery_date = db.Column(db.DATE(), default=None)
# automatic delivery # automatic delivery

25
app/classes/printing.py Normal file
View File

@@ -0,0 +1,25 @@
from app import db, ma, login_manager
from datetime import datetime
class Printer_jobs(db.Model):
__tablename__ = "printer_jobs"
id = db.Column(db.Integer,
primary_key=True,
autoincrement=True,
unique=False)
delivery_id = db.Column(db.Integer)
date_added = db.Column(db.Date(), default=datetime.utcnow())
date_completed = db.Column(db.Date(), default=datetime.utcnow())
employee_id = db.Column(db.Integer)
#0 = waiting
#1 = printing
#2 = printed
#3 = error
status = db.Column(db.Integer)

View File

@@ -3,7 +3,8 @@ from flask_login import current_user
from datetime import date, datetime, timedelta from datetime import date, datetime, timedelta
from app.delivery import delivery from app.delivery import delivery
from app import db from app import db
from app.classes.customer import Customer_Customer from app.classes.customer import (Customer_Customer,
Customer_Customer_schema)
from app.classes.delivery import (Delivery_Delivery, from app.classes.delivery import (Delivery_Delivery,
Delivery_Delivery_schema, Delivery_Delivery_schema,
Delivery_Notes_Driver, Delivery_Notes_Driver,
@@ -13,7 +14,7 @@ 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.auth import Auth_User
from app.classes.money import Money_delivery from app.classes.money import Money_delivery
from app.classes.printing import Printer_jobs
@delivery.route("/<int:delivery_id>", methods=["GET"]) @delivery.route("/<int:delivery_id>", methods=["GET"])
@@ -24,7 +25,8 @@ def get_a_delivery(delivery_id):
.query(Delivery_Delivery)\ .query(Delivery_Delivery)\
.filter(Delivery_Delivery.id == delivery_id)\ .filter(Delivery_Delivery.id == delivery_id)\
.first() .first()
get_taxes = db.session.query(Money_delivery).all()
return jsonify({ return jsonify({
"ok": True, "ok": True,
'delivery': { 'delivery': {
@@ -47,6 +49,16 @@ def get_a_delivery(delivery_id):
}, },
}), 200 }), 200
@delivery.route("/past/<int:customer_id>", methods=["GET"])
def get_customer_past_delivery(customer_id):
get_customer_past_delivery = (db.session
.query(Delivery_Delivery)
.filter(Delivery_Delivery.customer_id == customer_id)
.limit(10))
delivery_schema = Delivery_Delivery_schema(many=True)
return jsonify(delivery_schema.dump(get_customer_past_delivery))
@delivery.route("/order/<int:delivery_id>", methods=["GET"]) @delivery.route("/order/<int:delivery_id>", methods=["GET"])
@@ -81,17 +93,27 @@ def update_a_delivery_payment(delivery_id, type_of_payment):
return jsonify({"ok": True}), 200 return jsonify({"ok": True}), 200
@delivery.route("/all", methods=["GET"]) @delivery.route("/all/<int:page>", methods=["GET"])
def get_deliveries_not_delivered_all(): def get_deliveries_not_delivered_all(page):
""" """
This will get deliveries not done This will get deliveries not done
""" """
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 deliveries = (db.session
.query(Delivery_Delivery) .query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status != 1) .filter(Delivery_Delivery.delivery_status != 10)
.filter(Delivery_Delivery.delivery_status != 3) .filter(Delivery_Delivery.delivery_status != 3)
.all()) .order_by(Delivery_Delivery.id.asc())
.limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True) customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries)) return jsonify(customer_schema.dump(deliveries))
@@ -102,6 +124,7 @@ def get_deliveries_from_customer(customer_id, page):
""" """
This will get deliveries not done This will get deliveries not done
""" """
per_page_amount = 50 per_page_amount = 50
if page is None: if page is None:
offset_limit = 0 offset_limit = 0
@@ -119,7 +142,7 @@ def get_deliveries_from_customer(customer_id, page):
customer_schema = Delivery_Delivery_schema(many=True) customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries)) return jsonify(customer_schema.dump(deliveries))
@delivery.route("/all/<int:page>", methods=["GET"]) @delivery.route("/all/order/<int:page>", methods=["GET"])
def get_deliveries_not_delivered(page): def get_deliveries_not_delivered(page):
""" """
@@ -201,13 +224,15 @@ def get_deliveries_outfordelivery(page):
deliveries = (db.session deliveries = (db.session
.query(Delivery_Delivery) .query(Delivery_Delivery)
.filter(Delivery_Delivery.delivery_status == 2) .filter(Delivery_Delivery.expected_delivery_date == date.today())
.order_by(Delivery_Delivery.delivery_status.asc()) .order_by(Delivery_Delivery.delivery_status.asc())
.limit(per_page_amount).offset(offset_limit)) .limit(per_page_amount).offset(offset_limit))
customer_schema = Delivery_Delivery_schema(many=True) customer_schema = Delivery_Delivery_schema(many=True)
return jsonify(customer_schema.dump(deliveries)) return jsonify(customer_schema.dump(deliveries))
@delivery.route("/tommorrow/<int:page>", methods=["GET"]) @delivery.route("/tommorrow/<int:page>", methods=["GET"])
def get_deliveries_tommorrow(page): def get_deliveries_tommorrow(page):
""" """
@@ -359,10 +384,11 @@ def edit_a_delivery(delivery_id):
if not get_delivery: if not get_delivery:
return jsonify({"ok": False}), 200 return jsonify({"ok": False}), 200
else: else:
gallons_ordered = request.json["gallons_ordered"] gallons_ordered = request.json["gallons_ordered"]
delivery_status = request.json["delivery_status"] delivery_status = request.json["delivery_status"]
when_to_deliver = request.json["expected_delivery_date"] when_to_deliver = request.json["expected_delivery_date"]
print(when_to_deliver)
print(request.json["expected_delivery_date"])
dispatcher_notes_taken = request.json["dispatcher_notes_taken"] dispatcher_notes_taken = request.json["dispatcher_notes_taken"]
customer_wants_fill = request.json["customer_asked_for_fill"] customer_wants_fill = request.json["customer_asked_for_fill"]
card_payment = request.json["credit"] card_payment = request.json["credit"]
@@ -527,7 +553,6 @@ def create_a_delivery(user_id):
else: else:
same_day_asked = 0 same_day_asked = 0
date_object = datetime.strptime(when_to_deliver, '%Y-%m-%d').date()
customer_filled_name = get_customer.customer_last_name + ' ' + get_customer.customer_first_name customer_filled_name = get_customer.customer_last_name + ' ' + get_customer.customer_first_name
now = datetime.utcnow() now = datetime.utcnow()
@@ -563,7 +588,7 @@ def create_a_delivery(user_id):
delivery_status=0, delivery_status=0,
when_ordered=now, when_ordered=now,
when_delivered=None, when_delivered=None,
expected_delivery_date=date_object, expected_delivery_date=when_to_deliver,
automatic=get_customer.customer_automatic, automatic=get_customer.customer_automatic,
oil_id=get_today_price.id, oil_id=get_today_price.id,
supplier_price=get_today_price.price_from_supplier, supplier_price=get_today_price.price_from_supplier,

View File

@@ -53,8 +53,9 @@ def total_deliveries_today_finished():
total_stops = (db.session total_stops = (db.session
.query(Delivery_Delivery) .query(Delivery_Delivery)
.filter(Delivery_Delivery.expected_delivery_date == date.today()) .filter(Delivery_Delivery.expected_delivery_date == date.today())
.filter(or_(Delivery_Delivery.delivery_status == 1),(Delivery_Delivery.delivery_status == 10) .filter(or_(Delivery_Delivery.delivery_status == 1),(Delivery_Delivery.delivery_status == 10))
.count())) .count())
print(total_stops) print(total_stops)
return jsonify({"ok": True, return jsonify({"ok": True,
'data': total_stops, 'data': total_stops,

7
app/ticket/__init__.py Normal file
View File

@@ -0,0 +1,7 @@
# coding=utf-8
from flask import Blueprint
ticket = Blueprint('ticket', __name__)
from . import views

14
app/ticket/views.py Normal file
View File

@@ -0,0 +1,14 @@
from flask import jsonify
from app.ticket import ticket
from app import db
from app.classes.delivery import Delivery_Delivery
@ticket.route("/<int:ticket_id>", methods=["GET"])
def get_ticket_printer_letter(ticket_id):
return jsonify({"ok": True,
}), 200