package entities import "github.com/google/uuid" type M_User struct { ID uuid.UUID `gorm:"type:uuid;primary_key;default:uuid_generate_v4()" json:"id"` Name string `gorm:"type:varchar(100);not null" json:"name"` Username string `gorm:"type:varchar(100);uniqueIndex;not null" json:"username"` Password string `gorm:"type:varchar(255);not null" json:"password"` Gender string `gorm:"type:varchar(10)" json:"gender"` Address string `gorm:"type:text" json:"address"` Phone string `gorm:"type:varchar(20);index" json:"phone"` Email string `gorm:"type:varchar(255);uniqueIndex;not null" json:"email"` PhotoUrl string `gorm:"type:varchar(255)" json:"photo_url"` ClientID uuid.UUID `gorm:"type:uuid;not null;index" json:"client_id"` MaintenanceGroupUserID uuid.UUID `gorm:"type:uuid;index" json:"maintenance_group_user_id"` LocationID uuid.UUID `gorm:"type:uuid;index" json:"location_id"` Client M_Client `gorm:"foreignKey:ClientID;references:ID"` UserRoles []M_User_Role `gorm:"foreignKey:UserID;references:ID" json:"user_roles"` Roles []M_Role `gorm:"many2many:m_user_roles;foreignKey:ID;joinForeignKey:UserID;References:ID;JoinReferences:RoleID" json:"roles"` UserWarehouses []MUserWarehouseEntity `gorm:"foreignKey:UserID;references:ID" json:"user_warehouses"` Warehouses []MWarehouseEntity `gorm:"many2many:m_user_warehouses;foreignKey:ID;joinForeignKey:UserID;References:ID;JoinReferences:WarehouseID" json:"warehouses"` FullAuditTrail }