Imóvel
Sobre a entidade Imóvel.
A entidade imóvel representa um imóvel dentro da plataforma imobiliária.
Propriedades
A entidade imóvel possui as seguintes propriedades:
property.go
type Property struct {
ID uuid.UUID
Status Status
Kind Kind
WaterID string
EnergyID string
UserID uuid.UUID
OwnerID uuid.UUID
Address *types.Address
}
Tipos
Status
O status do imóvel pode ser um dos seguintes:
property.go
type Status string
const (
StatusAvailable Status = "Disponível"
StatusOccupied Status = "Ocupado"
StatusUnavailable Status = "Indisponível"
StatusReserved Status = "Reservado"
StatusRenovating Status = "Reformando"
)
Address
O endereço do imóvel é representado por uma estrutura que contém os seguintes campos:
address.go
type Address struct {
FullAddress string
MiniAddress string
Street string
Number string
Neighborhood string
Complement string
City string
State string
ZipCode string
}
DTOs
A entidade Usuário possui os seguintes DTOs:
DTO
O DTO de imóvel é utilizado para representar a resposta de um imóvel na plataforma. Ele contém os seguintes campos:
dto.go
type DTO struct {
ID string `json:"id"`
Status Status `json:"status"`
Kind Kind `json:"kind"`
WaterID string `json:"water_id"`
EnergyID string `json:"energy_id"`
OwnerID string `json:"owner_id"`
Address types.AddressDTO `json:"address"`
}
CreateDTO
O DTO de criação de imóvel é utilizado para criar um novo imóvel na plataforma. Ele contém os seguintes campos:
dto.go
type CreateDTO struct {
Status Status `json:"status"`
Kind Kind `json:"kind"`
WaterID string `json:"water_id"`
EnergyID string `json:"energy_id"`
Address *types.AddressCreateDTO `json:"address"`
}