event to functon handler completed

This commit is contained in:
2025-01-15 19:18:11 +03:00
parent 25539c56cc
commit 76d286b519
55 changed files with 1271 additions and 1092 deletions

View File

@@ -1,7 +1,4 @@
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
from typing import Optional

View File

@@ -1,10 +1,8 @@
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
ListOptions,
)
from typing import Optional
from ApiValidations.Request import PydanticBaseModel, ListOptions
from ApiValidations.handler import BaseModelRegular
class PostCodeValidation:
tr = {

View File

@@ -1,4 +1,4 @@
from api_validations.core_validations import BaseModelRegular
from ApiValidations.Request import BaseModelRegular
class SingleEnumClassKeyValidation:

View File

@@ -1,8 +1,5 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class BuildAreaValidation:

View File

@@ -1,4 +1,5 @@
from api_validations.core_validations import BaseModelRegular
from ApiValidations.Request import BaseModelRegular
from typing import Optional
from pydantic import BaseModel

View File

@@ -1,44 +1,14 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
PydanticBaseModelValidation,
)
from ApiValidations.Request import BaseModelRegular
# from api_validations.validations_request import (
# PydanticBaseModel,
# PydanticBaseModelValidation,
# )
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class BuildLivingSpaceValidation:
tr = {
"person_uu_id": "Kişi UUID'si",
"build_parts_uu_id": "Bina UUID'si",
"occupant_type_uu_id": "Mülk Sahibi UUID'si",
"expiry_starts": "Geçerlilik Başlangıç Tarihi",
"expiry_ends": "Geçerlilik Bitiş Tarihi",
}
en = {
"person_uu_id": "Person UUID",
"build_parts_uu_id": "Build UUID",
"occupant_type_uu_id": "Occupant UUID",
"expiry_starts": "Expiry Starts",
"expiry_ends": "Expiry Ends",
}
class PydanticBaseModelValidationUpdate:
tr = {
**PydanticBaseModelValidation.tr,
"is_tenant_live": "Kiracı mı?",
"build_parts_uu_id": "Bina UUID'si",
"person_uu_id": "Kişi UUID'si",
}
en = {
**PydanticBaseModelValidation.en,
"is_tenant_live": "Is Tenant Live?",
"build_parts_uu_id": "Build UUID",
"person_uu_id": "Person UUID",
}
class InsertBuildLivingSpace(BaseModelRegular, BuildLivingSpaceValidation):
class InsertBuildLivingSpace(BaseModelRegular):
person_uu_id: str
build_parts_uu_id: str
occupant_type_uu_id: str
@@ -46,7 +16,7 @@ class InsertBuildLivingSpace(BaseModelRegular, BuildLivingSpaceValidation):
expiry_ends: Optional[str] = None
class UpdateBuildLivingSpace(PydanticBaseModel, BuildLivingSpaceValidation):
class UpdateBuildLivingSpace(PydanticBaseModel):
is_tenant_live: Optional[bool] = None
build_parts_uu_id: Optional[str] = None
person_uu_id: Optional[str] = None

View File

@@ -1,81 +1,18 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
PydanticBaseModelValidation,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class BuildTypesUpdateValidation:
tr = {
**PydanticBaseModelValidation.tr,
"function_code": "Fonksiyon Kodu",
"type_code": "Tip Kodu",
"lang": "Dil",
"type_name": "Tip Adı",
}
en = {
**PydanticBaseModelValidation.en,
"function_code": "Function Code",
"type_code": "Type Code",
"lang": "Language",
"type_name": "Type Name",
}
class BuildTypesValidation:
tr = {
"function_code": "Fonksiyon Kodu",
"type_code": "Tip Kodu",
"lang": "Dil",
"type_name": "Tip Adı",
}
en = {
"function_code": "Function Code",
"type_code": "Type Code",
"lang": "Language",
"type_name": "Type Name",
}
class InsertBuildTypes(BaseModelRegular, BuildTypesValidation):
class InsertBuildTypes(BaseModelRegular):
function_code: str
type_code: str
lang: str
type_name: str
class UpdateBuildTypes(PydanticBaseModel, BuildTypesUpdateValidation): ...
class UpdateBuildTypes(PydanticBaseModel): ...
class BuildPartsValidation:
tr = {
"address_gov_code": "Adres İl Kodu",
"part_no": "Daire No",
"part_level": "Daire Seviyesi",
"build_part_type_uu_id": "Bina Daire Tipi UUID'si",
"part_code": "Daire Kodu",
"part_gross_size": "Daire Brüt Alanı",
"part_net_size": "Daire Net Alanı",
"default_accessory": "Varsayılan Aksesuar",
"human_livable": "İnsan Yaşanabilir",
"part_direction": "Daire Yönü",
}
en = {
"address_gov_code": "Address Gov Code",
"part_no": "Flat No",
"part_level": "Flat Level",
"build_part_type_uu_id": "Build Flat Type UUID",
"part_code": "Flat Code",
"part_gross_size": "Flat Gross Size",
"part_net_size": "Flat Net Size",
"default_accessory": "Default Accessory",
"human_livable": "Human Livable",
"part_direction": "Flat Direction",
}
class InsertBuildParts(BaseModelRegular, BuildPartsValidation):
class InsertBuildParts(BaseModelRegular):
build_uu_id: str
address_gov_code: str
part_no: int
@@ -90,40 +27,7 @@ class InsertBuildParts(BaseModelRegular, BuildPartsValidation):
ref_id: Optional[str] = None
class UpdateBuildPartsValidation:
tr = {
**PydanticBaseModelValidation.tr,
"address_gov_code": "Adres İl Kodu",
"part_no": "Daire No",
"part_level": "Daire Seviyesi",
"build_part_type_uu_id": "Bina Daire Tipi UUID'si",
"part_code": "Daire Kodu",
"part_gross_size": "Daire Brüt Alanı",
"part_net_size": "Daire Net Alanı",
"default_accessory": "Varsayılan Aksesuar",
"human_livable": "İnsan Yaşanabilir",
"part_direction": "Daire Yönü",
"current_owner_person_uu_id": "Mevcut Sahip Kişi UUID'si",
"current_tenant_person_uu_id": "Mevcut Kiracı Kişi UUID'si",
}
en = {
**PydanticBaseModelValidation.en,
"address_gov_code": "Address Gov Code",
"part_no": "Flat No",
"part_level": "Flat Level",
"build_part_type_uu_id": "Build Flat Type UUID",
"part_code": "Flat Code",
"part_gross_size": "Flat Gross Size",
"part_net_size": "Flat Net Size",
"default_accessory": "Default Accessory",
"human_livable": "Human Livable",
"part_direction": "Flat Direction",
"current_owner_person_uu_id": "Current Owner Person UUID",
"current_tenant_person_uu_id": "Current Tenant Person UUID",
}
class UpdateBuildParts(PydanticBaseModel, UpdateBuildPartsValidation):
class UpdateBuildParts(PydanticBaseModel):
address_gov_code: Optional[str] = None
part_no: Optional[int] = None
part_level: Optional[int] = None

View File

@@ -1,57 +1,9 @@
from typing import Optional
from datetime import datetime
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
PydanticBaseModelValidation,
CrudRecordValidation,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class BuildValidation:
tr = {
**CrudRecordValidation.tr,
"gov_address_code": "Devlet Adres Kodu",
"build_name": "Bina Adı",
"build_types_uu_id": "Bina Tipi",
"build_no": "Bina No",
"max_floor": "Kat Sayısı",
"underground_floor": "Bodrum Kat Sayısı",
"address_uu_id": "Adres",
"build_date": "Yapım Tarihi",
"decision_period_date": "Karar Tarihi",
"tax_no": "Vergi No",
"lift_count": "Asansör Sayısı",
"heating_system": "Isıtma Sistemi",
"cooling_system": "Soğutma Sistemi",
"hot_water_system": "Sıcak Su Sistemi",
"block_service_man_count": "Hizmet Görevlisi Sayısı",
"security_service_man_count": "Güvenlik Görevlisi Sayısı",
"garage_count": "Garaj Sayısı",
}
en = {
**CrudRecordValidation.en,
"gov_address_code": "Government Address Code",
"build_name": "Building Name",
"build_types_uu_id": "Building Type",
"build_no": "Building No",
"max_floor": "Number of Floors",
"underground_floor": "Number of Basement Floors",
"address_uu_id": "Address",
"build_date": "Construction Date",
"decision_period_date": "Decision Date",
"tax_no": "Tax No",
"lift_count": "Number of Elevators",
"heating_system": "Heating System",
"cooling_system": "Cooling System",
"hot_water_system": "Hot Water System",
"block_service_man_count": "Number of Service Officers",
"security_service_man_count": "Number of Security Officers",
"garage_count": "Number of Garages",
}
class InsertBuild(BaseModelRegular, BuildValidation):
class InsertBuild(BaseModelRegular):
gov_address_code: str
build_name: str
@@ -72,18 +24,7 @@ class InsertBuild(BaseModelRegular, BuildValidation):
garage_count: Optional[int] = None
class BuildUpdateValidation:
tr = {
**BuildValidation.tr,
**PydanticBaseModelValidation.tr,
}
en = {
**BuildValidation.en,
**PydanticBaseModelValidation.en,
}
class UpdateBuild(PydanticBaseModel, BuildUpdateValidation):
class UpdateBuild(PydanticBaseModel):
gov_address_code: Optional[str] = None
build_name: Optional[str] = None
build_no: Optional[str] = None

View File

@@ -1,26 +1,8 @@
from typing import Optional, List
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
PydanticBaseModelValidation,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class CompanyValidation:
tr = {
"formal_name": "Resmi Ad",
"company_type": "Şirket Tipi",
"commercial_type": "Ticari Tip",
"tax_no": "Vergi No",
"public_name": "Halka Açık Ad",
"company_tag": "Şirket Etiketi",
"default_lang_type": "Varsayılan Dil Tipi",
"default_money_type": "Varsayılan Para Tipi",
"official_address_uu_id": "Resmi Adres UU ID",
}
class InsertCompany(BaseModelRegular, CompanyValidation):
class InsertCompany(BaseModelRegular):
formal_name: str
company_type: str
commercial_type: str
@@ -33,18 +15,7 @@ class InsertCompany(BaseModelRegular, CompanyValidation):
# parent_uu_id: Optional[int] = None
class CompanyUpdateValidation:
tr = {
**CompanyValidation.tr,
**PydanticBaseModelValidation.tr,
}
en = {
**CompanyValidation.tr,
**PydanticBaseModelValidation.en,
}
class UpdateCompany(PydanticBaseModel, CompanyUpdateValidation):
class UpdateCompany(PydanticBaseModel):
company_uu_id: str
public_name: Optional[str] = None
formal_name: Optional[str] = None
@@ -55,20 +26,7 @@ class UpdateCompany(PydanticBaseModel, CompanyUpdateValidation):
official_address_uu_id: Optional[str] = None
class MatchCompany2CompanyValidation:
tr = {
**PydanticBaseModelValidation.tr,
"match_company_uu_id": "Eşleşen Şirket UU ID",
"duty_uu_id": "Görev UU ID",
}
en = {
**PydanticBaseModelValidation.en,
"match_company_uu_id": "Match Company UU ID",
"duty_uu_id": "Duty UU ID",
}
class MatchCompany2Company(PydanticBaseModel, MatchCompany2CompanyValidation):
class MatchCompany2Company(PydanticBaseModel):
match_company_uu_id: List[str]
duty_uu_id: str
show_only: Optional[bool] = None

View File

@@ -1,6 +1,6 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from ApiValidations.Request import BaseModelRegular
class ListOptionsValidation:

View File

@@ -1,127 +1,34 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
PydanticBaseModelValidation,
ListOptions,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel, ListOptions
class DecisionBookDecisionBookInvitationsValidation:
tr = {
"build_decision_book_uu_id": "Karar Defteri UUID",
"message": "Mesaj",
"planned_date": "Planlanan Tarih",
}
en = {
"build_decision_book_uu_id": "Decision Book UUID",
"message": "Message",
"planned_date": "Planned Date",
}
class DecisionBookDecisionBookInvitations(
BaseModelRegular, DecisionBookDecisionBookInvitationsValidation
):
class DecisionBookDecisionBookInvitations(BaseModelRegular):
build_decision_book_uu_id: str
message: str
planned_date: str
class DecisionBookDecisionBookInvitationsAttendValidation:
tr = {
"token": "Token",
"is_attend": "Katılacak mı?",
}
en = {
"token": "Token",
"is_attend": "Is Attend?",
}
class DecisionBookDecisionBookInvitationsAttend(
BaseModelRegular, DecisionBookDecisionBookInvitationsAttendValidation
):
class DecisionBookDecisionBookInvitationsAttend(BaseModelRegular):
token: str
is_attend: bool
class DecisionBookDecisionBookInvitationsAssignValidation:
tr = {
"token": "Token",
"build_living_space_uu_id": "Yapı Yaşam Alanı UUID",
"occupant_type_uu_id": "Sakin Tipi UUID",
}
en = {
"token": "Token",
"build_living_space_uu_id": "Build Living Space UUID",
"occupant_type_uu_id": "Occupant Type UUID",
}
class DecisionBookDecisionBookInvitationsAssign(
BaseModelRegular, DecisionBookDecisionBookInvitationsAssignValidation
):
class DecisionBookDecisionBookInvitationsAssign(BaseModelRegular):
token: str
build_living_space_uu_id: str
occupant_type_uu_id: str
class DecisionBookDecisionBookInvitationsUpdateValidation:
tr = {
**PydanticBaseModelValidation.tr,
"token": "Token",
"occupant_type_uu_id": "Sakin Tipi UUID",
}
en = {
**PydanticBaseModelValidation.en,
"token": "Token",
"occupant_type_uu_id": "Occupant Type UUID",
}
class DecisionBookDecisionBookInvitationsUpdate(
PydanticBaseModel, DecisionBookDecisionBookInvitationsUpdateValidation
):
class DecisionBookDecisionBookInvitationsUpdate(PydanticBaseModel):
token: str
occupant_type_uu_id: Optional[str] = None
class ListDecisionBookValidation:
tr = {
"build_decision_book_uu_id": "Karar Defteri UUID",
}
en = {
"build_decision_book_uu_id": "Decision Book UUID",
}
class ListDecisionBook(ListOptions, ListDecisionBookValidation):
class ListDecisionBook(ListOptions):
build_decision_book_uu_id: Optional[str] = None
class InsertDecisionBookValidation:
tr = {
**PydanticBaseModelValidation.tr,
"build_uu_id": "Yapı UUID",
"decision_type": "Karar Tipi",
"meeting_date": "Toplantı Tarihi",
"is_out_sourced": "Dış Kaynak mı?",
"resp_company_fix_wage": "Firma Sabit Ücreti",
"resp_company_uu_id": "Firma UUID",
}
en = {
**PydanticBaseModelValidation.en,
"build_uu_id": "Build UUID",
"decision_type": "Decision Type",
"meeting_date": "Meeting Date",
"is_out_sourced": "Is Out Sourced?",
"resp_company_fix_wage": "Company Fixed Wage",
"resp_company_uu_id": "Company UUID",
}
class InsertDecisionBook(PydanticBaseModel, InsertDecisionBookValidation):
class InsertDecisionBook(PydanticBaseModel):
build_uu_id: str
decision_type: str
meeting_date: str
@@ -131,44 +38,12 @@ class InsertDecisionBook(PydanticBaseModel, InsertDecisionBookValidation):
resp_company_uu_id: Optional[str] = None
class InsertDecisionBookCompletedValidation:
tr = {
"build_decision_book_uu_id": "Karar Defteri UUID",
"meeting_completed_date": "Toplantı Tamamlanma Tarihi",
}
en = {
"build_decision_book_uu_id": "Decision Book UUID",
"meeting_completed_date": "Meeting Completed Date",
}
class InsertDecisionBookCompleted(
BaseModelRegular, InsertDecisionBookCompletedValidation
):
class InsertDecisionBookCompleted(BaseModelRegular):
build_decision_book_uu_id: str
meeting_completed_date: str
class InsertDecisionBookPersonValidation:
tr = {
"person_uu_id": "Kişi UUID",
"build_decision_book_uu_id": "Karar Defteri UUID",
"management_typecode_uu_id": "Yönetim Tipi UUID",
"dues_discount_approval_date": "Aidat İndirim Onay Tarihi",
"dues_fix_discount": "Aidat Sabit İndirim",
"dues_percent_discount": "Aidat Yüzde İndirim",
}
en = {
"person_uu_id": "Person UUID",
"build_decision_book_uu_id": "Decision Book UUID",
"management_typecode_uu_id": "Management Type UUID",
"dues_discount_approval_date": "Dues Discount Approval Date",
"dues_fix_discount": "Dues Fix Discount",
"dues_percent_discount": "Dues Percent Discount",
}
class InsertDecisionBookPerson(BaseModelRegular, InsertDecisionBookPersonValidation):
class InsertDecisionBookPerson(BaseModelRegular):
person_uu_id: str
build_decision_book_uu_id: str
management_typecode_uu_id: str
@@ -178,67 +53,18 @@ class InsertDecisionBookPerson(BaseModelRegular, InsertDecisionBookPersonValidat
dues_percent_discount: Optional[int] = None
class UpdateDecisionBookPersonValidation:
tr = {
**PydanticBaseModelValidation.tr,
"dues_fix_discount": "Aidat Sabit İndirim",
"dues_percent_discount": "Aidat Yüzde İndirim",
}
en = {
**PydanticBaseModelValidation.en,
"dues_fix_discount": "Dues Fix Discount",
"dues_percent_discount": "Dues Percent Discount",
}
class UpdateDecisionBookPerson(PydanticBaseModel, UpdateDecisionBookPersonValidation):
class UpdateDecisionBookPerson(PydanticBaseModel):
dues_fix_discount: Optional[float] = None
dues_percent_discount: Optional[int] = None
class RemoveDecisionBookPersonValidation:
tr = {
"person_uu_id": "Kişi UUID",
"build_decision_book_person_uu_id": "Karar Defteri Kişi UUID",
}
en = {
"person_uu_id": "Person UUID",
"build_decision_book_person_uu_id": "Decision Book Person UUID",
}
class RemoveDecisionBookPerson(PydanticBaseModel, RemoveDecisionBookPersonValidation):
class RemoveDecisionBookPerson(PydanticBaseModel):
person_uu_id: str
build_decision_book_person_uu_id: str
class UpdateDecisionBookValidation:
tr = {
**PydanticBaseModelValidation.tr,
"decision_book_pdf_path": "Karar Defteri PDF Yolu",
"is_out_sourced": "Dış Kaynak mı?",
"contact_agreement_path": "İletişim Anlaşma Yolu",
"contact_agreement_date": "İletişim Anlaşma Tarihi",
"meeting_date": "Toplantı Tarihi",
"decision_type": "Karar Tipi",
"resp_company_fix_wage": "Firma Sabit Ücreti",
"resp_company_uu_id": "Firma UUID",
}
en = {
**PydanticBaseModelValidation.en,
"decision_book_pdf_path": "Decision Book PDF Path",
"is_out_sourced": "Is Out Sourced?",
"contact_agreement_path": "Contact Agreement Path",
"contact_agreement_date": "Contact Agreement Date",
"meeting_date": "Meeting Date",
"decision_type": "Decision Type",
"resp_company_fix_wage": "Company Fixed Wage",
"resp_company_uu_id": "Company UUID",
}
class UpdateDecisionBook(PydanticBaseModel, UpdateDecisionBookValidation):
class UpdateDecisionBook(PydanticBaseModel):
decision_book_pdf_path: Optional[str] = None
is_out_sourced: Optional[bool] = None
contact_agreement_path: Optional[str] = None
@@ -250,34 +76,7 @@ class UpdateDecisionBook(PydanticBaseModel, UpdateDecisionBookValidation):
resp_company_uu_id: Optional[str] = None
class InsertBuildDecisionBookItemsValidation:
tr = {
"token": "Token",
"info_type_uu_id": "Bilgi Tipi UUID",
"item_comment": "Öğe Yorumu / Açıklama",
"currency": "Para Birimi",
"unit_type": "Birim Tipi",
"debit_start_date": "Borç Başlangıç Tarihi",
"debit_end_date": "Borç Bitiş Tarihi",
"unit_price_is_fixed": "Birim Fiyat Sabit mi?",
"unit_price": "Birim Fiyat",
}
en = {
"token": "Token",
"info_type_uu_id": "Info Type UUID",
"item_comment": "Item Comment",
"currency": "Currency",
"unit_type": "Unit Type",
"debit_start_date": "Debit Start Date",
"debit_end_date": "Debit End Date",
"unit_price_is_fixed": "Unit Price Is Fixed?",
"unit_price": "Unit Price",
}
class InsertBuildDecisionBookItems(
BaseModelRegular, InsertBuildDecisionBookItemsValidation
):
class InsertBuildDecisionBookItems(BaseModelRegular):
token: str
info_type_uu_id: str
item_comment: str
@@ -293,64 +92,19 @@ class InsertBuildDecisionBookItems(
# item_objection: Optional[str] = None
class UpdateBuildDecisionBookItemsValidation:
tr = {
**PydanticBaseModelValidation.tr,
"item_comment": "Öğe Yorumu / Açıklama",
"item_objection": "Öğe İtirazı",
}
en = {
**PydanticBaseModelValidation.en,
"item_comment": "Item Comment",
"item_objection": "Item Objection",
}
class UpdateBuildDecisionBookItems(
PydanticBaseModel, UpdateBuildDecisionBookItemsValidation
):
class UpdateBuildDecisionBookItems(PydanticBaseModel):
item_comment: Optional[str] = None
item_objection: Optional[str] = None
class InsertBuildDecisionBookItemDebitsValidation:
tr = {
"build_decision_book_item_uu_id": "Karar Defteri Öğe UUID",
"dues_values": "Aidat Değerleri",
}
en = {
"build_decision_book_item_uu_id": "Decision Book Item UUID",
"dues_values": "Dues Values",
}
class InsertBuildDecisionBookItemDebits(
BaseModelRegular, InsertBuildDecisionBookItemDebitsValidation
):
class InsertBuildDecisionBookItemDebits(BaseModelRegular):
build_decision_book_item_uu_id: str
dues_values: dict
# dues_types_uu_id: str
# decision_taken: Optional[bool] = None
class UpdateBuildDecisionBookItemDebitsValidation:
tr = {
**PydanticBaseModelValidation.tr,
"dues_types_uu_id": "Aidat Tipi UUID",
"dues_values": "Aidat Değerleri",
"decision_taken": "Karar Alındı mı?",
}
en = {
**PydanticBaseModelValidation.en,
"dues_types_uu_id": "Dues Type UUID",
"dues_values": "Dues Values",
"decision_taken": "Decision Taken?",
}
class UpdateBuildDecisionBookItemDebits(
PydanticBaseModel, UpdateBuildDecisionBookItemDebitsValidation
):
class UpdateBuildDecisionBookItemDebits(PydanticBaseModel):
dues_types_uu_id: Optional[str] = None
dues_values: Optional[dict] = None
decision_taken: Optional[bool] = None

View File

@@ -1,28 +1,10 @@
from typing import Optional
from api_validations.validations_request import (
from ApiValidations.Request import (
PydanticBaseModel,
PydanticBaseModelValidation,
)
class DepartmentsPydanticValidation:
tr = {
"department_code": "Department Kodu",
"department_name": "Departman Adı",
"department_description": "Departman Açıklaması",
"company_uu_id": "Şirket UUID",
"parent_department_uu_id": "Üst Departman UUID",
}
en = {
"department_code": "Department Code",
"department_name": "Department Name",
"department_description": "Department Description",
"company_uu_id": "Company UUID",
"parent_department_uu_id": "Parent Department UUID",
}
class DepartmentsPydantic(PydanticBaseModel, PydanticBaseModelValidation):
class DepartmentsPydantic(PydanticBaseModel):
department_code: Optional[str]
department_name: Optional[str]

View File

@@ -1,176 +1,51 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
PydanticBaseModelValidation,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class BindEmployees2PeopleValidation:
tr = {
**PydanticBaseModelValidation.tr,
"staff_uu_id": "Kadro UUID",
"people_uu_id": "Kişi UUID",
"expiry_starts": "Başlangıç Tarihi",
}
en = {
**PydanticBaseModelValidation.en,
"staff_uu_id": "Staff UUID",
"people_uu_id": "People UUID",
"expiry_starts": "Start Date",
}
class BindEmployees2People(PydanticBaseModel, BindEmployees2PeopleValidation):
class BindEmployees2People(PydanticBaseModel):
staff_uu_id: str
people_uu_id: str
expiry_starts: Optional[str] = None
class UnBindEmployees2PeopleValidation:
tr = {
**PydanticBaseModelValidation.tr,
"people_uu_id": "Kişi UUID",
"expiry_ends": "Bitiş Tarihi",
}
en = {
**PydanticBaseModelValidation.en,
"people_uu_id": "People UUID",
"expiry_ends": "End Date",
}
class UnBindEmployees2People(PydanticBaseModel, UnBindEmployees2PeopleValidation):
class UnBindEmployees2People(PydanticBaseModel):
people_uu_id: str
expiry_ends: str
class InsertEmployeesValidation:
tr = {
"staff_uu_id": "Kadro UUID",
"people_uu_id": "Kişi UUID",
}
en = {
"staff_uu_id": "Staff UUID",
"people_uu_id": "People UUID",
}
class InsertEmployees(BaseModelRegular, InsertEmployeesValidation):
class InsertEmployees(BaseModelRegular):
staff_uu_id: str
people_uu_id: Optional[str] = None
class InsertCompanyDutyValidation:
tr = {
"duty_code": "Görev Kodu",
"duty_name": "Görev Adı",
"duty_description": "Görev Açıklaması",
}
en = {
"duty_code": "Duty Code",
"duty_name": "Duty Name",
"duty_description": "Duty Description",
}
class InsertCompanyDuty(BaseModelRegular, InsertCompanyDutyValidation):
class InsertCompanyDuty(BaseModelRegular):
duty_code: str
duty_name: str
duty_description: Optional[str] = None
class SelectDutiesValidation:
tr = {
"duty_uu_id": "Görev UUID",
}
en = {
"duty_uu_id": "Duty UUID",
}
class SelectDuties(BaseModelRegular, SelectDutiesValidation):
class SelectDuties(BaseModelRegular):
duty_uu_id: Optional[str] = None
class InsertDutiesValidation:
tr = {
"duties_uu_id": "Görev UUID",
"department_uu_id": "Departman UUID",
"is_default_duty": "Varsayılan Görev",
}
en = {
"duties_uu_id": "Duty UUID",
"department_uu_id": "Department UUID",
"is_default_duty": "Default Duty",
}
class InsertDuties(BaseModelRegular, InsertDutiesValidation):
class InsertDuties(BaseModelRegular):
duties_uu_id: str
department_uu_id: str
is_default_duty: Optional[bool] = False
class UpdateDutiesValidation:
tr = {
**PydanticBaseModelValidation.tr,
"duties_uu_id": "Görev UUID",
"department_uu_id": "Departman UUID",
"is_default_duty": "Varsayılan Görev",
}
en = {
**PydanticBaseModelValidation.en,
"duties_uu_id": "Duty UUID",
"department_uu_id": "Department UUID",
"is_default_duty": "Default Duty",
}
class UpdateDuties(PydanticBaseModel):
duties_uu_id: Optional[str] = None
department_uu_id: Optional[str] = None
is_default_duty: Optional[bool] = None
class UpdateCompanyDutyValidation:
tr = {
**PydanticBaseModelValidation.tr,
"duty_code": "Görev Kodu",
"duty_name": "Görev Adı",
"duty_description": "Görev Açıklaması",
}
en = {
**PydanticBaseModelValidation.en,
"duty_code": "Duty Code",
"duty_name": "Duty Name",
"duty_description": "Duty Description",
}
class UpdateCompanyDuty(PydanticBaseModel):
duty_code: Optional[str] = None
duty_name: Optional[str] = None
duty_description: Optional[str] = None
class InsertCompanyEmployeesSalariesValidation:
tr = {
"gross_salary": "Brüt Maaş",
"net_salary": "Net Maaş",
"start_date": "Başlangıç Tarihi",
"stop_date": "Bitiş Tarihi",
"people_id": "Kişi ID",
}
en = {
"gross_salary": "Gross Salary",
"net_salary": "Net Salary",
"start_date": "Start Date",
"stop_date": "Stop Date",
"people_id": "People ID",
}
class InsertCompanyEmployeesSalaries(BaseModelRegular):
gross_salary: float
net_salary: float
@@ -179,25 +54,6 @@ class InsertCompanyEmployeesSalaries(BaseModelRegular):
people_id: int
class UpdateCompanyEmployeesSalariesValidation:
tr = {
**PydanticBaseModelValidation.tr,
"gross_salary": "Brüt Maaş",
"net_salary": "Net Maaş",
"start_date": "Başlangıç Tarihi",
"stop_date": "Bitiş Tarihi",
"people_id": "Kişi ID",
}
en = {
**PydanticBaseModelValidation.en,
"gross_salary": "Gross Salary",
"net_salary": "Net Salary",
"start_date": "Start Date",
"stop_date": "Stop Date",
"people_id": "People ID",
}
class UpdateCompanyEmployeesSalaries(PydanticBaseModel):
gross_salary: Optional[float] = None
net_salary: Optional[float] = None
@@ -206,24 +62,8 @@ class UpdateCompanyEmployeesSalaries(PydanticBaseModel):
people_id: Optional[int] = None
class InsertCompanyEmployeesValidation:
tr = {
"employee_description": "Çalışan Açıklaması",
"person_uu_id": "Kişi UUID",
"duty_uu_id": "Görev UUID",
"start_date": "Başlangıç Tarihi",
"stop_date": "Bitiş Tarihi",
}
en = {
"employee_description": "Employee Description",
"person_uu_id": "Person UUID",
"duty_uu_id": "Duty UUID",
"start_date": "Start Date",
"stop_date": "Stop Date",
}
class InsertCompanyEmployees(BaseModelRegular, InsertCompanyEmployeesValidation):
class InsertCompanyEmployees(BaseModelRegular):
employee_description: Optional[str] = None
person_uu_id: str
@@ -233,19 +73,7 @@ class InsertCompanyEmployees(BaseModelRegular, InsertCompanyEmployeesValidation)
stop_date: Optional[str] = None
class UpdateCompanyEmployeesValidation:
tr = {
**PydanticBaseModelValidation.tr,
"stop_date": "Bitiş Tarihi",
"employee_description": "Çalışan Açıklaması",
}
en = {
**PydanticBaseModelValidation.en,
"stop_date": "Stop Date",
"employee_description": "Employee Description",
}
class UpdateCompanyEmployees(PydanticBaseModel, UpdateCompanyEmployeesValidation):
class UpdateCompanyEmployees(PydanticBaseModel):
stop_date: Optional[str] = None
employee_description: Optional[str] = None

View File

@@ -1,5 +1,5 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from ApiValidations.Request import BaseModelRegular
class RegisterEvents2EmployeeValidation:

View File

@@ -1,4 +1,4 @@
from api_validations.core_validations import BaseModelRegular
from ApiValidations.Request import BaseModelRegular
class RegisterModules2OccupantValidation:

View File

@@ -1,29 +1,8 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
PydanticBaseModelValidation,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class InsertPersonValidation:
tr = {
"firstname": "İsim",
"surname": "Soyisim",
"sex_code": "Cinsiyet",
"national_identity_id": "T.C. Kimlik Numarası",
"middle_name": "Orta İsim",
"father_name": "Baba Adı",
"mother_name": "Anne Adı",
"country_code": "Ülke Kodu",
"birth_place": "Doğum Yeri",
"birth_date": "Doğum Tarihi",
"tax_no": "Vergi Numarası",
"ref_id": "Referans ID",
}
class InsertPerson(BaseModelRegular, InsertPersonValidation):
class InsertPerson(BaseModelRegular):
firstname: str
surname: str
sex_code: str
@@ -38,18 +17,7 @@ class InsertPerson(BaseModelRegular, InsertPersonValidation):
ref_id: Optional[str] = None
class UpdatePersonValidation:
tr = {
**PydanticBaseModelValidation.tr,
**InsertPersonValidation.tr,
}
en = {
**PydanticBaseModelValidation.en,
**InsertPersonValidation.tr,
}
class UpdatePerson(PydanticBaseModel, UpdatePersonValidation):
class UpdatePerson(PydanticBaseModel):
firstname: Optional[str] = None
surname: Optional[str] = None
middle_name: Optional[str]

View File

@@ -1,31 +1,8 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
PydanticBaseModelValidation,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class InsertBuildDecisionBookProjectItemsValidation:
tr = {
"build_decision_book_project_uu_id": "Proje UUID",
"item_header": "Başlık",
"item_comment": "ıklama",
"attachment_pdf_path": "Ek Dosya Yolu",
"item_objection": "İtiraz",
}
en = {
"build_decision_book_project_uu_id": "Project UUID",
"item_header": "Header",
"item_comment": "Comment",
"attachment_pdf_path": "Attachment PDF Path",
"item_objection": "Objection",
}
class InsertBuildDecisionBookProjectItems(
BaseModelRegular, InsertBuildDecisionBookProjectItemsValidation
):
class InsertBuildDecisionBookProjectItems(BaseModelRegular):
build_decision_book_project_uu_id: str
item_header: str
item_comment: str
@@ -33,17 +10,6 @@ class InsertBuildDecisionBookProjectItems(
item_objection: Optional[str] = None
class UpdateBuildDecisionBookProjectItemsValidation:
tr = {
**InsertBuildDecisionBookProjectItemsValidation.tr,
**PydanticBaseModelValidation.tr,
}
en = {
**InsertBuildDecisionBookProjectItemsValidation.en,
**PydanticBaseModelValidation.en,
}
class UpdateBuildDecisionBookProjectItems(PydanticBaseModel):
item_header: Optional[str] = None
item_comment: Optional[str] = None
@@ -52,30 +18,7 @@ class UpdateBuildDecisionBookProjectItems(PydanticBaseModel):
build_decision_book_project_uu_id: Optional[str] = None
class InsertBuildDecisionBookProjectPersonValidation:
tr = {
"dues_percent_discount": "İskonto Oranı",
"job_fix_wage": "Sabit Ücret",
"bid_price": "Teklif Fiyatı",
"decision_price": "Karar Fiyatı",
"build_decision_book_project_uu_id": "Proje UUID",
"living_space_uu_id": "Yaşam Alanı UUID",
"project_team_type_uu_id": "Proje Takım Tipi UUID",
}
en = {
"dues_percent_discount": "Discount Rate",
"job_fix_wage": "Fixed Wage",
"bid_price": "Bid Price",
"decision_price": "Decision Price",
"build_decision_book_project_uu_id": "Project UUID",
"living_space_uu_id": "Living Space UUID",
"project_team_type_uu_id": "Project Team Type UUID",
}
class InsertBuildDecisionBookProjectPerson(
BaseModelRegular, InsertBuildDecisionBookProjectPersonValidation
):
class InsertBuildDecisionBookProjectPerson(BaseModelRegular):
dues_percent_discount: Optional[int] = None
job_fix_wage: Optional[float] = None
bid_price: Optional[float] = None
@@ -85,20 +28,7 @@ class InsertBuildDecisionBookProjectPerson(
project_team_type_uu_id: str
class UpdateBuildDecisionBookProjectPersonValidation:
tr = {
**InsertBuildDecisionBookProjectPersonValidation.tr,
**PydanticBaseModelValidation.tr,
}
en = {
**InsertBuildDecisionBookProjectPersonValidation.en,
**PydanticBaseModelValidation.en,
}
class UpdateBuildDecisionBookProjectPerson(
PydanticBaseModel, UpdateBuildDecisionBookProjectPersonValidation
):
class UpdateBuildDecisionBookProjectPerson(PydanticBaseModel):
dues_percent_discount: Optional[int] = None
job_fix_wage: Optional[float] = None
bid_price: Optional[float] = None
@@ -108,47 +38,8 @@ class UpdateBuildDecisionBookProjectPerson(
project_team_type_uu_id: Optional[str] = None
class InsertBuildDecisionBookProjectsValidation:
tr = {
"build_decision_book_item_uu_id": "Karar Defteri UUID",
"project_responsible_person_uu_id": "Proje Sorumlu Kişi UUID",
"project_name": "Proje Adı",
"project_start_date": "Proje Başlangıç Tarihi",
"project_stop_date": "Proje Bitiş Tarihi",
"project_type": "Proje Tipi",
"is_out_sourced": "Dış Kaynak Kullanımı",
"project_note": "Proje Notu",
"decision_book_pdf_path": "Karar Defteri PDF Yolu",
"resp_company_fix_wage": "Firma Sabit Ücreti",
"contact_agreement_path": "İletişim Anlaşması Yolu",
"contact_agreement_date": "İletişim Anlaşması Tarihi",
"meeting_date": "Toplantı Tarihi",
"currency": "Para Birimi",
"bid_price": "Teklif Fiyatı",
"resp_company_uu_id": "Firma UUID",
}
en = {
"build_decision_book_item_uu_id": "Decision Book UUID",
"project_responsible_person_uu_id": "Project Responsible Person UUID",
"project_name": "Project Name",
"project_start_date": "Project Start Date",
"project_stop_date": "Project Stop Date",
"project_type": "Project Type",
"is_out_sourced": "Out Sourced",
"project_note": "Project Note",
"decision_book_pdf_path": "Decision Book PDF Path",
"resp_company_fix_wage": "Company Fixed Wage",
"contact_agreement_path": "Contact Agreement Path",
"contact_agreement_date": "Contact Agreement Date",
"meeting_date": "Meeting Date",
"currency": "Currency",
"bid_price": "Bid Price",
"resp_company_uu_id": "Company UUID",
}
class InsertBuildDecisionBookProjects(
BaseModelRegular, InsertBuildDecisionBookProjectsValidation
BaseModelRegular
):
build_decision_book_item_uu_id: str
project_responsible_person_uu_id: str
@@ -169,19 +60,8 @@ class InsertBuildDecisionBookProjects(
resp_company_uu_id: Optional[str] = None
class UpdateBuildDecisionBookProjectsValidation:
tr = {
**InsertBuildDecisionBookProjectsValidation.tr,
**PydanticBaseModelValidation.tr,
}
en = {
**InsertBuildDecisionBookProjectsValidation.en,
**PydanticBaseModelValidation.en,
}
class UpdateBuildDecisionBookProjects(
PydanticBaseModel, UpdateBuildDecisionBookProjectsValidation
PydanticBaseModel
):
build_decision_book_project_uu_id: str
is_out_sourced: Optional[bool] = False
@@ -196,23 +76,9 @@ class UpdateBuildDecisionBookProjects(
approved_price: Optional[float] = None
class ApprovalsBuildDecisionBookProjectsValidation:
tr = {
"build_decision_book_project_uu_id": "Karar Defteri Proje UUID",
"project_stop_date": "Proje Bitiş Tarihi",
"status_code": "Durum Kodu",
"final_price_list": "Son Fiyat Listesi",
}
en = {
"build_decision_book_project_uu_id": "Decision Book Project UUID",
"project_stop_date": "Project Stop Date",
"status_code": "Status Code",
"final_price_list": "Final Price List",
}
class ApprovalsBuildDecisionBookProjects(
PydanticBaseModel, ApprovalsBuildDecisionBookProjectsValidation
PydanticBaseModel
):
build_decision_book_project_uu_id: str
project_stop_date: str
@@ -222,29 +88,8 @@ class ApprovalsBuildDecisionBookProjects(
)
class InsertBuildDecisionBookProjectItemDebitsValidation:
tr = {
"build_decision_book_project_item_uu_id": "Karar Defteri Proje Öğe UUID",
"payment_date": "Ödeme Tarihi",
"dues_values": "Borç Değerleri",
"is_official": "Resmi Mi?",
"discount_value": "İskonto Oranı",
"discount_fix": "İskonto Sabit",
"decision_taken": "Karar Alındı Mı?",
}
en = {
"build_decision_book_project_item_uu_id": "Decision Book Project Item UUID",
"payment_date": "Payment Date",
"dues_values": "Dues Values",
"is_official": "Is Official?",
"discount_value": "Discount Rate",
"discount_fix": "Discount Fix",
"decision_taken": "Decision Taken?",
}
class InsertBuildDecisionBookProjectItemDebits(
PydanticBaseModel, InsertBuildDecisionBookProjectItemDebitsValidation
PydanticBaseModel
):
build_decision_book_project_item_uu_id: str
payment_date: str
@@ -255,19 +100,8 @@ class InsertBuildDecisionBookProjectItemDebits(
decision_taken: Optional[bool] = None
class UpdateBuildDecisionBookProjectItemDebitsValidation:
tr = {
**InsertBuildDecisionBookProjectItemDebitsValidation.tr,
**PydanticBaseModelValidation.tr,
}
en = {
**InsertBuildDecisionBookProjectItemDebitsValidation.en,
**PydanticBaseModelValidation.en,
}
class UpdateBuildDecisionBookProjectItemDebits(
PydanticBaseModel, UpdateBuildDecisionBookProjectItemDebitsValidation
PydanticBaseModel
):
dues_values: Optional[str] = None
discount_value: Optional[float] = None

View File

@@ -1,8 +1,6 @@
from typing import Optional, List
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
)
from ApiValidations.Request import BaseModelRegular
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class CheckEndpointAccess(BaseModelRegular):

View File

@@ -1,4 +1,4 @@
from api_validations.core_validations import BaseModelRegular
from ApiValidations.Request import BaseModelRegular
class RegisterServices2OccupantValidation:

View File

@@ -1,8 +1,5 @@
from typing import Optional
from api_validations.core_validations import BaseModelRegular
from api_validations.validations_request import (
PydanticBaseModel,
)
from ApiValidations.Request import BaseModelRegular, PydanticBaseModel
class InsertStaffValidation:

View File

@@ -1,7 +1,5 @@
from typing import Optional
from api_validations.validations_request import (
PydanticBaseModel,
)
from ApiValidations.Request import PydanticBaseModel
class InsertUsersValidation:

View File

@@ -0,0 +1,3 @@
from .account_responses import AccountRecordResponse
__all__ = ["AccountRecordResponse"]

View File

@@ -0,0 +1,259 @@
from pydantic import BaseModel
from typing import Optional, List
from datetime import datetime
from decimal import Decimal
from uuid import UUID
from pydantic import BaseModel
class AccountBooksResponse(BaseModel):
"""Response model for account books"""
country: str
branch_type: int
company_id: int
company_uu_id: str
branch_id: Optional[int]
branch_uu_id: Optional[str]
class AccountCodesResponse(BaseModel):
"""Response model for account codes"""
account_code: str
comment_line: str
is_receive_or_debit: bool
product_id: int = 0
nvi_id: str = ""
status_id: int = 0
account_code_seperator: str = "."
system_id: int = 0
locked: bool = False
company_id: Optional[int]
company_uu_id: str
customer_id: Optional[int]
customer_uu_id: str
person_id: Optional[int]
person_uu_id: str
class AccountCodeParserResponse(BaseModel):
"""Response model for account code parser"""
account_code_1: str
account_code_2: str
account_code_3: str
account_code_4: str = ""
account_code_5: str = ""
account_code_6: str = ""
account_code_id: int
account_code_uu_id: str
class AccountMasterResponse(BaseModel):
"""Response model for account master"""
doc_date: datetime
plug_type: str
plug_number: int
special_code: str = ""
authorization_code: str = ""
doc_code: str = ""
doc_type: int = 0
comment_line1: str = ""
comment_line2: str = ""
comment_line3: str = ""
comment_line4: str = ""
comment_line5: str = ""
comment_line6: str = ""
project_code: str = ""
module_no: str = ""
journal_no: int = 0
status_id: int = 0
canceled: bool = False
print_count: int = 0
total_active: Decimal = Decimal("0")
total_passive: Decimal = Decimal("0")
total_active_1: Decimal = Decimal("0")
total_passive_1: Decimal = Decimal("0")
total_active_2: Decimal = Decimal("0")
total_passive_2: Decimal = Decimal("0")
total_active_3: Decimal = Decimal("0")
total_passive_3: Decimal = Decimal("0")
total_active_4: Decimal = Decimal("0")
total_passive_4: Decimal = Decimal("0")
cross_ref: int = 0
data_center_id: str = ""
data_center_rec_num: int = 0
account_header_id: int
account_header_uu_id: str
project_item_id: Optional[int]
project_item_uu_id: Optional[str]
department_id: Optional[int]
department_uu_id: Optional[str]
class AccountDetailResponse(BaseModel):
"""Response model for account detail"""
doc_date: datetime
line_no: int
receive_debit: str
debit: Decimal
department: str = ""
special_code: str = ""
account_ref: int = 0
account_fiche_ref: int = 0
center_ref: int = 0
general_code: str = ""
credit: Decimal = Decimal("0")
currency_type: str = "TL"
exchange_rate: Decimal = Decimal("0")
debit_cur: Decimal = Decimal("0")
credit_cur: Decimal = Decimal("0")
discount_cur: Decimal = Decimal("0")
amount: Decimal = Decimal("0")
cross_account_code: str = ""
inf_index: Decimal = Decimal("0")
not_inflated: int = 0
not_calculated: int = 0
comment_line1: str = ""
comment_line2: str = ""
comment_line3: str = ""
comment_line4: str = ""
comment_line5: str = ""
comment_line6: str = ""
owner_acc_ref: int = 0
from_where: int = 0
orj_eid: int = 0
canceled: int = 0
cross_ref: int = 0
data_center_id: str = ""
data_center_rec_num: str = "0"
status_id: int = 0
plug_type_id: Optional[int]
plug_type_uu_id: str
account_header_id: int
account_header_uu_id: str
account_code_id: int
account_code_uu_id: str
account_master_id: int
account_master_uu_id: str
project_id: Optional[int]
project_uu_id: Optional[str]
class AccountRecordResponse(BaseModel):
"""Response model for account financial records.
This model represents a financial transaction record in the system,
including bank transaction details, amounts, and related metadata.
Attributes:
iban (str): International Bank Account Number
bank_date (datetime): Date when the transaction occurred at the bank
currency_value (Decimal): Original transaction amount
bank_balance (Decimal): Account balance after the transaction
currency (str): Currency code (e.g., "TRY", "USD")
additional_balance (Decimal): Any additional balance adjustments
channel_branch (str): Bank branch or channel where transaction occurred
process_name (str): Name/type of the transaction
process_type (str): Classification of the transaction
process_comment (str): Additional transaction details or notes
bank_reference_code (str): Bank's reference code for the transaction
add_comment_note (Optional[str]): Additional internal notes
is_receipt_mail_send (Optional[bool]): Whether receipt was emailed
found_from (Optional[str]): Source of the transaction record
similarity (Optional[float]): Matching confidence for duplicate detection
remainder_balance (Optional[Decimal]): Remaining balance if partial
bank_date_y (Optional[int]): Year of bank transaction
bank_date_m (Optional[int]): Month of bank transaction
bank_date_w (Optional[int]): Week of bank transaction
bank_date_d (Optional[int]): Day of bank transaction
approving_accounting_record (Optional[bool]): Accounting approval status
accounting_receipt_date (Optional[datetime]): When receipt was processed
accounting_receipt_number (Optional[int]): Receipt reference number
approved_record (Optional[bool]): Whether record is approved
import_file_name (Optional[str]): Source file if imported
receive_debit_uu_id (Optional[str]): Related debit record ID
budget_type_uu_id (Optional[str]): Associated budget type ID
company_uu_id (Optional[str]): Associated company ID
send_company_uu_id (Optional[str]): Sending company ID
customer_id (Optional[str]): Associated customer ID
customer_uu_id (Optional[str]): Associated customer UUID
send_person_uu_id (Optional[str]): Sending person ID
approving_accounting_person_uu_id (Optional[str]): Approver ID
build_parts_uu_id (Optional[str]): Related building part ID
build_decision_book_uu_id (Optional[str]): Related decision book ID
"""
iban: str
bank_date: datetime
currency_value: Decimal
bank_balance: Decimal
currency: str = "TRY"
additional_balance: Decimal = Decimal("0")
channel_branch: str
process_name: str
process_type: str
process_comment: str
bank_reference_code: str
add_comment_note: Optional[str]
is_receipt_mail_send: Optional[bool] = False
found_from: Optional[str]
similarity: Optional[float]
remainder_balance: Optional[Decimal]
bank_date_y: Optional[int]
bank_date_m: Optional[int]
bank_date_w: Optional[int]
bank_date_d: Optional[int]
approving_accounting_record: Optional[bool]
accounting_receipt_date: Optional[datetime]
accounting_receipt_number: Optional[int]
approved_record: Optional[bool]
import_file_name: Optional[str]
receive_debit_uu_id: Optional[str]
budget_type_uu_id: Optional[str]
company_uu_id: Optional[str]
send_company_uu_id: Optional[str]
customer_id: Optional[str]
customer_uu_id: Optional[str]
send_person_uu_id: Optional[str]
approving_accounting_person_uu_id: Optional[str]
build_parts_uu_id: Optional[str]
build_decision_book_uu_id: Optional[str]
class AccountRecordExchangeResponse(BaseModel):
"""Response model for currency exchange records.
This model represents a currency exchange transaction, tracking
exchange rates and converted amounts for financial records.
Attributes:
account_record_id (int): ID of the related account record
account_record_uu_id (str): UUID of the related account record
exchange_rate (Decimal): Applied exchange rate
exchange_currency (str): Target currency code
exchange_value (Decimal): Converted amount
exchange_date (datetime): When the exchange was calculated
"""
account_record_id: int
account_record_uu_id: str
exchange_rate: Decimal
exchange_currency: str = "TRY"
exchange_value: Decimal
exchange_date: datetime
class AccountRecordsListResponse(BaseModel):
"""Response model for account records list endpoint"""
uu_id: UUID
account_name: str
account_code: str
company_id: int
company_uu_id: str
created_at: datetime
updated_at: Optional[datetime]
deleted: bool = False