From 98a2c94083f620ba91b974f441ea55b3f105b53e Mon Sep 17 00:00:00 2001 From: Edwin Eames Date: Sat, 28 Dec 2024 15:54:08 -0500 Subject: [PATCH] bug fixes. added auto table --- app/classes/auto.py | 2 +- app/customer/views.py | 148 ++++++++++++++++++++++++------------------ 2 files changed, 87 insertions(+), 63 deletions(-) diff --git a/app/classes/auto.py b/app/classes/auto.py index 97f1592..999c939 100755 --- a/app/classes/auto.py +++ b/app/classes/auto.py @@ -84,7 +84,7 @@ class Tickets_Auto_Delivery(db.Model): customer_address = db.Column(db.VARCHAR(1000)) customer_zip = db.Column(db.VARCHAR(25)) customer_full_name = db.Column(db.VARCHAR(250)) - + fill_date = db.Column(db.DATE()) oil_prices_id = db.Column(db.INTEGER()) gallons_delivered = db.Column(db.DECIMAL(6, 2)) diff --git a/app/customer/views.py b/app/customer/views.py index 38cb446..c9497a5 100755 --- a/app/customer/views.py +++ b/app/customer/views.py @@ -179,6 +179,7 @@ def create_customer(): response_customer_zip = str(response_customer_zip) response_customer_state = int(response_customer_state) + if response_customer_state == 0: the_state = 'MA' elif response_customer_state == 1: @@ -235,71 +236,85 @@ def create_customer(): user_lat =None user_long = None cor_ad = False - - new_customer = Customer_Customer( - account_number=made_account_number, - customer_last_name=response_customer_last_name, - customer_first_name=response_customer_first_name, - customer_town=response_customer_town, - customer_state=response_customer_state, - customer_zip=response_customer_zip, - customer_first_call=now, - customer_email=response_customer_email, - customer_automatic=0, - customer_home_type=int_customer_home_type, - customer_phone_number=customer_phone_number, - customer_address=customer_address, - customer_apt=customer_apt, - company_id=1, - customer_latitude=user_lat, - customer_longitude=user_long, - correct_address=cor_ad - ) - db.session.add(new_customer) - db.session.flush() - create_stats_customer = Stats_Customer( - customer_id = new_customer.id, - total_calls = 0, - service_calls_total = 0, - service_calls_total_spent = 0, - service_calls_total_profit = 0, - oil_deliveries = 0, - oil_total_gallons = 0, - oil_total_spent = 0, - oil_total_profit = 0, - ) - db.session.add(create_stats_customer) + + see_if_customer_exists = (db.session + .query(Customer_Customer) + .filter(Customer_Customer.response_customer_last_name) + .filter(Customer_Customer.response_customer_first_name) + .filter(Customer_Customer.customer_phone_number) + .first()) + if see_if_customer_exists is not None: + return jsonify({ + "ok": False, + 'customer': see_if_customer_exists.id + }), 200 + else: - new_description = Customer_Description( - customer_id = new_customer.id, - account_number = made_account_number, - description = customer_description_msg, - fill_location=None, - company_id=1, - ) - db.session.add(new_description) + new_customer = Customer_Customer( + account_number=made_account_number, + customer_last_name=response_customer_last_name, + customer_first_name=response_customer_first_name, + customer_town=response_customer_town, + customer_state=response_customer_state, + customer_zip=response_customer_zip, + customer_first_call=now, + customer_email=response_customer_email, + customer_automatic=0, + customer_home_type=int_customer_home_type, + customer_phone_number=customer_phone_number, + customer_address=customer_address, + customer_apt=customer_apt, + company_id=1, + customer_latitude=user_lat, + customer_longitude=user_long, + correct_address=cor_ad + ) + db.session.add(new_customer) + db.session.flush() - new_tank = Customer_Tank_Inspection( - customer_id = new_customer.id, - last_tank_inspection=None, - tank_status = False, - outside_or_inside = True, - tank_size=275, - ) - db.session.add(new_tank) + create_stats_customer = Stats_Customer( + customer_id = new_customer.id, + total_calls = 0, + service_calls_total = 0, + service_calls_total_spent = 0, + service_calls_total_profit = 0, + oil_deliveries = 0, + oil_total_gallons = 0, + oil_total_spent = 0, + oil_total_profit = 0, + ) + db.session.add(create_stats_customer) + + new_description = Customer_Description( + customer_id = new_customer.id, + account_number = made_account_number, + description = customer_description_msg, + fill_location=None, + company_id=1, + ) + db.session.add(new_description) - - db.session.commit() + new_tank = Customer_Tank_Inspection( + customer_id = new_customer.id, + last_tank_inspection=None, + tank_status = False, + outside_or_inside = True, + tank_size=275, + ) + db.session.add(new_tank) - return jsonify({ - "ok": True, - 'user': { - 'user_id': new_customer.id, - 'user_name': new_customer.customer_last_name, - 'user_email': new_customer.customer_email, - }, - }), 200 + + db.session.commit() + + return jsonify({ + "ok": True, + 'user': { + 'user_id': new_customer.id, + 'user_name': new_customer.customer_last_name, + 'user_email': new_customer.customer_email, + }, + }), 200 @@ -477,6 +492,7 @@ def customer_automatic_assignment(customer_id): .query(Customer_Tank_Inspection) .filter(Customer_Tank_Inspection.customer_id == customer_id) .first()) + if get_customer.customer_automatic == 1: # customer becomes will call get_customer.customer_automatic = 0 @@ -547,8 +563,14 @@ def edit_customer_tank(customer_id): .query(Customer_Tank_Inspection) .filter(Customer_Tank_Inspection.customer_id == customer_id) .first()) - + get_auto_info = (db.session + .query(Auto_Delivery) + .filter(Auto_Delivery.customer_id == customer_id) + .first()) + + response_tank_status = request.json["tank_status"] + if response_tank_status == 'true': get_customer_tank.tank_status = True @@ -574,9 +596,11 @@ def edit_customer_tank(customer_id): get_customer_tank.last_tank_inspection = response_last_tank_inspection get_customer_tank.tank_size = response_tank_size - + get_auto_info.tank_size = response_tank_size get_customer_description.fill_location = response_customer_fill_location + + db.session.add(get_customer_description) db.session.add(get_customer)