f304f982c0
modified: main_dc/yalarba/api_yal/go.sum modified: main_dc/yalarba/api_yal/internal/domain/account/dto.go modified: main_dc/yalarba/api_yal/internal/models/account.go modified: main_dc/yalarba/api_yal/internal/models/appeal.go modified: main_dc/yalarba/api_yal/internal/models/comment.go modified: main_dc/yalarba/api_yal/internal/models/feedback.go modified: main_dc/yalarba/api_yal/internal/models/password_reset.go modified: main_dc/yalarba/api_yal/internal/models/rating.go modified: "main_dc/yalarba/api_yal/internal/models/\320\276bject.go" set embedded base model anonimus as realy embedded struct without set name for field base
33 lines
1.3 KiB
Go
33 lines
1.3 KiB
Go
package models
|
|
|
|
import ()
|
|
|
|
type Account struct {
|
|
/*ID, CreatedAt, UpdatedAt, DeletedAt (Update's history)*/
|
|
Base `gorm:"embedded"`
|
|
|
|
// Основная информация
|
|
Email string `gorm:"uniqueIndex;not null" json:"email"`
|
|
PasswordHash string `gorm:"not null" json:"-"`
|
|
FullName string `gorm:"not null;default:'Unknown'" json:"full_name"`
|
|
FirstName string `gorm:"not null;default:'FirstName'" json:"first_name"`
|
|
LastName string `gorm:"not null;default:'LastName'" json:"last_name"`
|
|
Phone string `json:"phone"`
|
|
City string `json:"city"`
|
|
|
|
// Бизнес информация (для владельцев объектов)
|
|
OrganizationForm string `json:"organization_form"` // ИП, ООО и т.д.
|
|
OrganizationName string `json:"organization_name"`
|
|
OrganizationShort string `json:"organization_short"`
|
|
INN string `json:"inn"` // ИНН организации
|
|
PersonalINN string `json:"personal_inn"` // Личный ИНН
|
|
|
|
// Статус
|
|
IsActive bool `gorm:"default:true" json:"is_active"`
|
|
IsVerified bool `gorm:"default:false" json:"is_verified"`
|
|
Role string `gorm:"default:user" json:"role"` // user, admin, moderator
|
|
|
|
// Связь: один Account имеет много Objects
|
|
Objects []Object `gorm:"foreignKey:OwnerID" json:"objects"`
|
|
}
|