// Code generated by go-swagger; DO NOT EDIT. // (c) 2012-2020 by Taxnexus, Inc. // All rights reserved worldwide. // Proprietary product; unlicensed use is not allowed package sfgate_models // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command import ( "context" "github.com/go-openapi/errors" "github.com/go-openapi/strfmt" "github.com/go-openapi/swag" ) // Account account // // swagger:model Account type Account struct { // Account Number Accountnumber string `json:"accountnumber,omitempty"` // The marketing orgin of this account Accountsource string `json:"accountsource,omitempty"` // Active Active bool `json:"active,omitempty"` // For tax authorities, this account's administrative level, e.g. Local, County, State or Federal Administrativelevel string `json:"administrativelevel,omitempty"` // Rollup Tax Amount Amount float64 `json:"amount,omitempty"` // Amount Invoiced Amountinvoiced float64 `json:"amountinvoiced,omitempty"` // Amount Paid Amountpaid float64 `json:"amountpaid,omitempty"` // Annual Revenue Estimate Annualrevenue float64 `json:"annualrevenue,omitempty"` // Account Balance Balance float64 `json:"balance,omitempty"` // billingaddress Billingaddress *Address `json:"billingaddress,omitempty"` // Contact ID Billingcontactid string `json:"billingcontactid,omitempty"` // Billing Preference Billingpreference string `json:"billingpreference,omitempty"` // businessaddress Businessaddress *Address `json:"businessaddress,omitempty"` // Is this a cannabis customer? Cannabiscustomer bool `json:"cannabiscustomer,omitempty"` // Channel Program Level Name Channelprogramlevelname string `json:"channelprogramlevelname,omitempty"` // Channel Program Name Channelprogramname string `json:"channelprogramname,omitempty"` // Client End Date Clientenddate string `json:"clientenddate,omitempty"` // Client Start Date Clientstartdate string `json:"clientstartdate,omitempty"` // The Company ID of this Account Companyid string `json:"companyid,omitempty"` // The Id of the geo coordinates of this account Coordinateid string `json:"coordinateid,omitempty"` // Created By User ID Createdbyid string `json:"createdbyid,omitempty"` // Created Date Createddate string `json:"createddate,omitempty"` // Customer ID from source system Customerid string `json:"customerid,omitempty"` // Customer Priority Customerpriority string `json:"customerpriority,omitempty"` // D-n-B Company Dandbcompanyid string `json:"dandbcompanyid,omitempty"` // This Account's 'Doing Business As' name Dba string `json:"dba,omitempty"` // defaultaddress Defaultaddress *Address `json:"defaultaddress,omitempty"` // Default Backend ID Defaultbackendid string `json:"defaultbackendid,omitempty"` // Default Delivery Address Contact ID Defaultdeliverycontactid string `json:"defaultdeliverycontactid,omitempty"` // Default End User Contact ID Defaultenduserid string `json:"defaultenduserid,omitempty"` // Description Description string `json:"description,omitempty"` // D-U-N-S Number Dunsnumber string `json:"dunsnumber,omitempty"` // EIN Ein string `json:"ein,omitempty"` // Main Account Email Email string `json:"email,omitempty"` // Enrollment Status Enrollmentstatus string `json:"enrollmentstatus,omitempty"` // Fax Fax string `json:"fax,omitempty"` // Taxnexus Account Id ID string `json:"id,omitempty"` // Industry Industry string `json:"industry,omitempty"` // Customer Portal Account Iscustomerportal bool `json:"iscustomerportal,omitempty"` // Partner Account Ispartner bool `json:"ispartner,omitempty"` // ISP Customer? Ispcustomer bool `json:"ispcustomer,omitempty"` // Data.com Key Jigsaw string `json:"jigsaw,omitempty"` // Last Modified By User ID Lastmodifiedbyid string `json:"lastmodifiedbyid,omitempty"` // Last Modified Date Lastmodifieddate string `json:"lastmodifieddate,omitempty"` // MSP Customer? Mspcustomer bool `json:"mspcustomer,omitempty"` // NAICS Code Naicscode string `json:"naicscode,omitempty"` // NAICS Description Naicsdesc string `json:"naicsdesc,omitempty"` // Account Name Name string `json:"name,omitempty"` // Employee Count Estimate Numberofemployees int64 `json:"numberofemployees,omitempty"` // Number of Locations Estimate Numberoflocations int64 `json:"numberoflocations,omitempty"` // Open Charges Opencharges float64 `json:"opencharges,omitempty"` // Vendor Order Contact ID Ordercontactid string `json:"ordercontactid,omitempty"` // Order Email Orderemail string `json:"orderemail,omitempty"` // Account Owner User ID Ownerid string `json:"ownerid,omitempty"` // Ownership Ownership string `json:"ownership,omitempty"` // Parent Foreign Key Parentfk string `json:"parentfk,omitempty"` // Parent Account Parentid string `json:"parentid,omitempty"` // Phone Phone string `json:"phone,omitempty"` // The ID of the Place situs record that applies to this Account Placeid string `json:"placeid,omitempty"` // Tax Preparer Contact ID Preparerid string `json:"preparerid,omitempty"` // Rating Rating string `json:"rating,omitempty"` // Rating Engine identifier Ratingengineid string `json:"ratingengineid,omitempty"` // External Reference ID Ref string `json:"ref,omitempty"` // Rollup Revenue Base Revenuebase float64 `json:"revenuebase,omitempty"` // Rollup Revenue Net Revenuenet float64 `json:"revenuenet,omitempty"` // Rollup Revenue Not Taxable Revenuenottaxable float64 `json:"revenuenottaxable,omitempty"` // shippingaddress Shippingaddress *Address `json:"shippingaddress,omitempty"` // Shipping Census Tract Shippingcensustract string `json:"shippingcensustract,omitempty"` // Shipping Contact ID Shippingcontactid string `json:"shippingcontactid,omitempty"` // Shipping County Shippingcounty string `json:"shippingcounty,omitempty"` // SIC Code Sic string `json:"sic,omitempty"` // SIC Description Sicdesc string `json:"sicdesc,omitempty"` // Account Site Site string `json:"site,omitempty"` // Account Status Status string `json:"status,omitempty"` // Tax Exemption Taxexemption string `json:"taxexemption,omitempty"` // Rollup Tax On Tax Taxontax float64 `json:"taxontax,omitempty"` // Telecom Customer? Telecomcustomer bool `json:"telecomcustomer,omitempty"` // tenant identifier Tenantid string `json:"tenantid,omitempty"` // Ticker Symbol Tickersymbol string `json:"tickersymbol,omitempty"` // Tradestyle Tradestyle string `json:"tradestyle,omitempty"` // Type Type string `json:"type,omitempty"` // Unapplied Payments Unappliedpayments float64 `json:"unappliedpayments,omitempty"` // Rollup Unit Base Unitbase float64 `json:"unitbase,omitempty"` // Upsell Opportunity Upsellopportunity string `json:"upsellopportunity,omitempty"` // Website Website string `json:"website,omitempty"` // WHMCS Client ID Whmcsclientid int64 `json:"whmcsclientid,omitempty"` // Xero Contact ID Xerocontactid string `json:"xerocontactid,omitempty"` // Year Started Yearstarted string `json:"yearstarted,omitempty"` } // Validate validates this account func (m *Account) Validate(formats strfmt.Registry) error { var res []error if err := m.validateBillingaddress(formats); err != nil { res = append(res, err) } if err := m.validateBusinessaddress(formats); err != nil { res = append(res, err) } if err := m.validateDefaultaddress(formats); err != nil { res = append(res, err) } if err := m.validateShippingaddress(formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } func (m *Account) validateBillingaddress(formats strfmt.Registry) error { if swag.IsZero(m.Billingaddress) { // not required return nil } if m.Billingaddress != nil { if err := m.Billingaddress.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("billingaddress") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("billingaddress") } return err } } return nil } func (m *Account) validateBusinessaddress(formats strfmt.Registry) error { if swag.IsZero(m.Businessaddress) { // not required return nil } if m.Businessaddress != nil { if err := m.Businessaddress.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("businessaddress") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("businessaddress") } return err } } return nil } func (m *Account) validateDefaultaddress(formats strfmt.Registry) error { if swag.IsZero(m.Defaultaddress) { // not required return nil } if m.Defaultaddress != nil { if err := m.Defaultaddress.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("defaultaddress") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("defaultaddress") } return err } } return nil } func (m *Account) validateShippingaddress(formats strfmt.Registry) error { if swag.IsZero(m.Shippingaddress) { // not required return nil } if m.Shippingaddress != nil { if err := m.Shippingaddress.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("shippingaddress") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("shippingaddress") } return err } } return nil } // ContextValidate validate this account based on the context it is used func (m *Account) ContextValidate(ctx context.Context, formats strfmt.Registry) error { var res []error if err := m.contextValidateBillingaddress(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidateBusinessaddress(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidateDefaultaddress(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidateShippingaddress(ctx, formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } func (m *Account) contextValidateBillingaddress(ctx context.Context, formats strfmt.Registry) error { if m.Billingaddress != nil { if err := m.Billingaddress.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("billingaddress") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("billingaddress") } return err } } return nil } func (m *Account) contextValidateBusinessaddress(ctx context.Context, formats strfmt.Registry) error { if m.Businessaddress != nil { if err := m.Businessaddress.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("businessaddress") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("businessaddress") } return err } } return nil } func (m *Account) contextValidateDefaultaddress(ctx context.Context, formats strfmt.Registry) error { if m.Defaultaddress != nil { if err := m.Defaultaddress.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("defaultaddress") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("defaultaddress") } return err } } return nil } func (m *Account) contextValidateShippingaddress(ctx context.Context, formats strfmt.Registry) error { if m.Shippingaddress != nil { if err := m.Shippingaddress.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("shippingaddress") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("shippingaddress") } return err } } return nil } // MarshalBinary interface implementation func (m *Account) MarshalBinary() ([]byte, error) { if m == nil { return nil, nil } return swag.WriteJSON(m) } // UnmarshalBinary interface implementation func (m *Account) UnmarshalBinary(b []byte) error { var res Account if err := swag.ReadJSON(b, &res); err != nil { return err } *m = res return nil }