Skip to content

brazil

database.models.brazil.StateAcronym

Bases: StrEnum

Source code in database/models/brazil.py
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
@enum
class StateAcronym(StrEnum):
	AC = 'AC'
	AL = 'AL'
	AP = 'AP'
	AM = 'AM'
	BA = 'BA'
	CE = 'CE'
	DF = 'DF'
	ES = 'ES'
	GO = 'GO'
	MA = 'MA'
	MT = 'MT'
	MS = 'MS'
	MG = 'MG'
	PA = 'PA'
	PB = 'PB'
	PR = 'PR'
	PE = 'PE'
	PI = 'PI'
	RJ = 'RJ'
	RN = 'RN'
	RS = 'RS'
	RO = 'RO'
	RR = 'RR'
	SC = 'SC'
	SP = 'SP'
	SE = 'SE'
	TO = 'TO'

database.models.brazil.StateAcronymName

Bases: StrEnum

Source code in database/models/brazil.py
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
class StateAcronymName(StrEnum):
	AC = 'Acre'
	AL = 'Alagoas'
	AP = 'Amapá'
	AM = 'Amazonas'
	BA = 'Bahia'
	CE = 'Ceará'
	DF = 'Distrito Federal'
	ES = 'Espírito Santo'
	GO = 'Goiás'
	MA = 'Maranhão'
	MT = 'Mato Grosso'
	MS = 'Mato Grosso do Sul'
	MG = 'Minas Gerais'
	PA = 'Pará'
	PB = 'Paraíba'
	PR = 'Paraná'
	PE = 'Pernambuco'
	PI = 'Piauí'
	RJ = 'Rio de Janeiro'
	RN = 'Rio Grande do Norte'
	RS = 'Rio Grande do Sul'
	RO = 'Rondônia'
	RR = 'Roraima'
	SC = 'Santa Catarina'
	SP = 'São Paulo'
	SE = 'Sergipe'
	TO = 'Tocantins'

database.models.brazil.StateBase

Bases: SQLModel

Source code in database/models/brazil.py
95
96
97
class StateBase(SQLModel):
	acronym: StateAcronym = Field(unique=True)
	name: str | None

database.models.brazil.StateCreate

Bases: StateBase

Source code in database/models/brazil.py
100
101
class StateCreate(StateBase):
	name: str

database.models.brazil.State

Bases: StateCreate

Source code in database/models/brazil.py
104
105
106
107
class State(StateCreate, table=True):
	__tablename__ = 'states'

	id: UUID | None = Field(default_factory=uuid4, primary_key=True)

database.models.brazil.CityBase

Bases: SQLModel

Source code in database/models/brazil.py
110
111
112
113
class CityBase(SQLModel):
	ibge: PositiveInt = Field(unique=True)
	name: str | None
	ddd: int | None = None

database.models.brazil.CityCreate

Bases: CityBase

Source code in database/models/brazil.py
116
117
class CityCreate(CityBase):
	name: str

database.models.brazil.City

Bases: CityCreate

Source code in database/models/brazil.py
120
121
122
123
class City(CityCreate, table=True):
	__tablename__ = 'cities'

	id: UUID | None = Field(default_factory=uuid4, primary_key=True)

database.models.brazil.AddressBase

Bases: SQLModel

Source code in database/models/brazil.py
132
133
134
135
136
class AddressBase(SQLModel):
	zipcode: int | None = Field(None, gt=1_000_000, lt=99_999_999)
	neighborhood: str | None = None
	complement: str | None = None
	coordinates: Coordinates | None = None

database.models.brazil.Address

Bases: AddressBase

Source code in database/models/brazil.py
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
class Address(AddressBase, table=True):
	__tablename__ = 'addresses'

	id: UUID = Field(default_factory=uuid4, primary_key=True)

	zipcode: int = Field(unique=True, gt=1_000_000, lt=99_999_999)

	state_id: UUID = Field(foreign_key='states.id')
	state: State = Relationship(sa_relationship_kwargs={'lazy': 'selectin'})

	city_id: UUID = Field(foreign_key='cities.id')
	city: City = Relationship(sa_relationship_kwargs={'lazy': 'selectin'})

	neighborhood: str
	complement: str | None = None
	coordinates: Coordinates | None = Field(None, nullable=True, sa_type=JSONB)

	updated_at: datetime | None = Field(
		default_factory=datetime.now,
		nullable=False,
		sa_column_kwargs={
			'onupdate': datetime.now,
		},
	)