package app

import (
	"database/sql"
)

// CompanyActivityWrapper wraps the object with workflow params
type CompanyActivityWrapper struct {
	APIKey   string
	SagaID   string
	SagaType string
	//
	AccountID           string
	AccountNumberPrefix string
	BillingAddress      Address
	BillingAdvice       string
	BillingContactID    string
	BillingEmail        string
	BillingPhone        string
	BillingWebsite      string
	CoaTemplateID       string
	ColorAccent1        string
	ColorAccent2        string
	ColorPrimary        string
	CurrentPeriodID     string
	CustomerSuccessID   string
	DefaultAddress      Address
	DefaultCompany      bool
	FontBody            string
	FontHeading         string
	FontHeadingNarrow   string
	FontLink            string
	FontMono            string
	International       bool
	LastAccountNumber   int64
	LastTaxtypeNumber   int64
	Logo                string
	Name                string
	OwnerID             string
	PreparerID          string
	PricebookID         string
	TenantID            string
	UserTechLeadID      string
}

// Company is a DB struct
type Company struct {
	ID                  string
	Account             *Account
	AccountID           string
	AccountNumberPrefix string
	AdvancePeriodID     string
	BillingAddress      *Address
	BillingAdvice       string
	BillingContactID    string
	BillingContact      *Contact
	BillingEmail        string
	BillingPhone        string
	BillingWebsite      string
	CoaTemplateID       string
	ColorAccent1        string
	ColorAccent2        string
	ColorPrimary        string
	ClosedPeriodID      string
	CreatedByID         string
	CreatedDate         sql.NullTime
	CurrentPeriodID     string
	CurrentPeriodStatus string
	CustomerSuccessID   string
	CustomerSuccess     *Contact
	DateClosed          sql.NullTime
	DefaultAddress      *Address
	DefaultCompany      bool
	FontBody            string
	FontHeading         string
	FontHeadingNarrow   string
	FontLink            string
	FontMono            string
	International       bool
	LastAccountNumber   int64
	LastModifiedByID    string
	LastModifiedDate    sql.NullTime
	LastTaxtypeNumber   int64
	Logo                string
	Name                string
	OwnerID             string
	Preparer            *Contact
	PreparerID          string
	PricebookID         string
	TenantID            string
	UserTechLead        *Contact
	UserTechLeadID      string
}
