updated handler exceptions

This commit is contained in:
2025-01-11 19:40:10 +03:00
parent cecf1e69a2
commit 56b693989d
34 changed files with 571 additions and 1126 deletions

View File

@@ -17,7 +17,7 @@ from sqlalchemy import (
Numeric,
Integer,
)
from sqlalchemy.orm import mapped_column, Mapped, relationship
from sqlalchemy.orm import Mapped, mapped_column, relationship
from api_validations.validations_request import (
InsertDecisionBook,
@@ -26,6 +26,19 @@ from api_validations.validations_request import (
InsertBuildDecisionBookProjects,
)
from databases.sql_models.core_mixin import CrudCollection
from databases.language_models.building.decision_book import (
BuildDecisionBookLanguageModel,
BuildDecisionBookInvitationsLanguageModel,
BuildDecisionBookPersonLanguageModel,
BuildDecisionBookPersonOccupantsLanguageModel,
BuildDecisionBookItemsLanguageModel,
BuildDecisionBookItemsUnapprovedLanguageModel,
BuildDecisionBookPaymentsLanguageModel,
BuildDecisionBookLegalLanguageModel,
BuildDecisionBookProjectsLanguageModel,
BuildDecisionBookProjectPersonLanguageModel,
BuildDecisionBookProjectItemsLanguageModel,
)
class BuildDecisionBook(CrudCollection):
@@ -44,6 +57,7 @@ class BuildDecisionBook(CrudCollection):
__tablename__ = "build_decision_book"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookLanguageModel
decision_book_pdf_path: Mapped[str] = mapped_column(
String, server_default="", nullable=True
@@ -242,6 +256,7 @@ class BuildDecisionBookInvitations(CrudCollection):
__tablename__ = "build_decision_book_invitations"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookInvitationsLanguageModel
build_id: Mapped[int] = mapped_column(Integer, nullable=False)
build_uu_id: Mapped[str] = mapped_column(
@@ -341,6 +356,7 @@ class BuildDecisionBookPerson(CrudCollection):
__tablename__ = "build_decision_book_person"
__exclude__fields__ = []
__enum_list__ = [("management_typecode", "BuildManagementType", "bm")]
__language_model__ = BuildDecisionBookPersonLanguageModel
dues_percent_discount: Mapped[int] = mapped_column(SmallInteger, server_default="0")
dues_fix_discount: Mapped[float] = mapped_column(Numeric(10, 2), server_default="0")
@@ -517,6 +533,7 @@ class BuildDecisionBookPersonOccupants(CrudCollection):
__tablename__ = "build_decision_book_person_occupants"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookPersonOccupantsLanguageModel
build_decision_book_person_id: Mapped[int] = mapped_column(
ForeignKey("build_decision_book_person.id"), nullable=False
@@ -559,6 +576,7 @@ class BuildDecisionBookItems(CrudCollection):
__tablename__ = "build_decision_book_items"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookItemsLanguageModel
item_order: Mapped[int] = mapped_column(
SmallInteger, nullable=False, comment="Order Number of Item"
@@ -799,6 +817,7 @@ class BuildDecisionBookItemsUnapproved(CrudCollection):
__tablename__ = "build_decision_book_items_unapproved"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookItemsUnapprovedLanguageModel
item_objection: Mapped[str] = mapped_column(
Text, nullable=False, comment="Objection Content"
@@ -841,6 +860,7 @@ class BuildDecisionBookPayments(CrudCollection):
__tablename__ = "build_decision_book_payments"
__exclude__fields__ = []
__enum_list__ = [("receive_debit", "DebitTypes", "D")]
__language_model__ = BuildDecisionBookPaymentsLanguageModel
payment_plan_time_periods: Mapped[str] = mapped_column(
String(10), nullable=False, comment="Payment Plan Time Periods"
@@ -951,6 +971,7 @@ class BuildDecisionBookLegal(CrudCollection):
__tablename__ = "build_decision_book_legal"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookLegalLanguageModel
period_start_date: Mapped[TIMESTAMP] = mapped_column(
TIMESTAMP(timezone=True), nullable=False, comment="Start Date of Legal Period"
@@ -1027,6 +1048,7 @@ class BuildDecisionBookProjects(CrudCollection):
__tablename__ = "build_decision_book_projects"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookProjectsLanguageModel
project_no: Mapped[str] = mapped_column(
String(12), nullable=True, comment="Project Number of Decision Book"
@@ -1194,6 +1216,7 @@ class BuildDecisionBookProjectPerson(CrudCollection):
__tablename__ = "build_decision_book_project_person"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookProjectPersonLanguageModel
# __enum_list__ = [("management_typecode", "ProjectTeamTypes", "PTT-EMP")]
dues_percent_discount: Mapped[int] = mapped_column(SmallInteger, server_default="0")
@@ -1226,6 +1249,7 @@ class BuildDecisionBookProjectItems(CrudCollection):
__tablename__ = "build_decision_book_project_items"
__exclude__fields__ = []
__language_model__ = BuildDecisionBookProjectItemsLanguageModel
item_header: Mapped[str] = mapped_column(
String, nullable=False, comment="Item Header"