first commit

This commit is contained in:
2026-01-17 15:21:41 -05:00
commit b93d41c1ae
36 changed files with 3391 additions and 0 deletions

65
models/customer.py Normal file
View File

@@ -0,0 +1,65 @@
from sqlalchemy import Column, Integer, String, Boolean, DECIMAL, TIMESTAMP, DATE, TEXT, VARCHAR, JSON
from . import Base
class Customer_Customer(Base):
__tablename__ = 'customer_customer'
__table_args__ = {"schema": "public"}
id = Column(Integer, primary_key=True, autoincrement=True, unique=False)
auth_net_profile_id = Column(String, unique=True, index=True, nullable=True)
account_number = Column(VARCHAR(25))
customer_last_name = Column(VARCHAR(250))
customer_first_name = Column(VARCHAR(250))
customer_town = Column(VARCHAR(140))
customer_state = Column(Integer)
customer_zip = Column(VARCHAR(25))
customer_first_call = Column(TIMESTAMP())
customer_email = Column(VARCHAR(500))
customer_automatic = Column(Integer)
customer_phone_number = Column(VARCHAR(25))
customer_home_type = Column(Integer)
customer_apt = Column(VARCHAR(140))
customer_address = Column(VARCHAR(1000))
company_id = Column(Integer)
customer_latitude = Column(VARCHAR(250))
customer_longitude = Column(VARCHAR(250))
correct_address = Column(Boolean)
class Customer_Description(Base):
__tablename__ = 'customer_description'
__table_args__ = {"schema": "public"}
id = Column(Integer, primary_key=True, autoincrement=True, unique=False)
customer_id = Column(Integer)
account_number = Column(VARCHAR(25))
company_id = Column(Integer)
fill_location = Column(Integer)
description = Column(VARCHAR(2000))
class Customer_Tank_Inspection(Base):
__tablename__ = 'customer_tank'
__table_args__ = {"schema": "public"}
id = Column(Integer, primary_key=True, autoincrement=True, unique=False)
customer_id = Column(Integer)
last_tank_inspection = Column(DATE)
tank_status = Column(Boolean)
outside_or_inside = Column(Boolean)
tank_size = Column(Integer)
tank_images = Column(Integer, default=0) # Number of image sets uploaded (each set = 3 images)
tank_image_upload_dates = Column(JSON, default=list) # List of upload dates for each set
class Customer_Stats(Base):
__tablename__ = 'stats_customer'
__table_args__ = {"schema": "public"}
id = Column(Integer, primary_key=True, autoincrement=True, unique=False)
customer_id = Column(Integer)
total_calls = Column(Integer, default=0)
service_calls_total = Column(Integer, default=0)
service_calls_total_spent = Column(DECIMAL(6, 2), default=0.00)
service_calls_total_profit = Column(DECIMAL(6, 2), default=0.00)
oil_deliveries = Column(Integer, default=0)
oil_total_gallons = Column(DECIMAL(6, 2), default=0.00)
oil_total_spent = Column(DECIMAL(6, 2), default=0.00)
oil_total_profit = Column(DECIMAL(6, 2), default=0.00)