39 lines
1.2 KiB
Go
Executable file
39 lines
1.2 KiB
Go
Executable file
package models
|
|
|
|
import "time"
|
|
|
|
// Company represents an employer organization
|
|
type Company struct {
|
|
ID int `json:"id" db:"id"`
|
|
Name string `json:"name" db:"name"`
|
|
Slug string `json:"slug" db:"slug"`
|
|
Type string `json:"type" db:"type"`
|
|
Document *string `json:"document,omitempty" db:"document"` // Houjin Bangou
|
|
|
|
// Contact
|
|
Address *string `json:"address,omitempty" db:"address"`
|
|
RegionID *int `json:"regionId,omitempty" db:"region_id"`
|
|
CityID *int `json:"cityId,omitempty" db:"city_id"`
|
|
Phone *string `json:"phone,omitempty" db:"phone"`
|
|
Email *string `json:"email,omitempty" db:"email"`
|
|
Website *string `json:"website,omitempty" db:"website"`
|
|
|
|
// Branding
|
|
LogoURL *string `json:"logoUrl,omitempty" db:"logo_url"`
|
|
Description *string `json:"description,omitempty" db:"description"`
|
|
|
|
// Status
|
|
Active bool `json:"active" db:"active"`
|
|
Verified bool `json:"verified" db:"verified"`
|
|
|
|
// Metadata
|
|
CreatedAt time.Time `json:"createdAt" db:"created_at"`
|
|
UpdatedAt time.Time `json:"updatedAt" db:"updated_at"`
|
|
}
|
|
|
|
// CompanyWithLocation includes region and city information
|
|
type CompanyWithLocation struct {
|
|
Company
|
|
RegionName *string `json:"regionName,omitempty"`
|
|
CityName *string `json:"cityName,omitempty"`
|
|
}
|