44 lines
988 B
V
44 lines
988 B
V
module biz
|
|
import base
|
|
|
|
import freeflowuniverse.herolib.data.ourtime
|
|
|
|
|
|
// CompanyStatus represents the status of a company
|
|
pub enum CompanyStatus {
|
|
active
|
|
inactive
|
|
suspended
|
|
}
|
|
|
|
// BusinessType represents the type of a business
|
|
pub enum BusinessType {
|
|
coop
|
|
single
|
|
twin
|
|
starter
|
|
global
|
|
}
|
|
|
|
// Company represents a company registered in the Freezone
|
|
pub struct Company {
|
|
base.Base // Provides id u32, creation_time, mod_time, comments []u32
|
|
pub mut:
|
|
// id u32 is provided by base.Base
|
|
name string
|
|
registration_number string
|
|
incorporation_date ourtime.OurTime
|
|
fiscal_year_end string
|
|
email string
|
|
phone string
|
|
website string
|
|
address string
|
|
business_type BusinessType
|
|
industry string
|
|
description string
|
|
status CompanyStatus
|
|
// created_at is provided by base.Base.creation_time
|
|
// updated_at is provided by base.Base.mod_time
|
|
shareholders []Shareholder
|
|
}
|