// Code generated by go-swagger; DO NOT EDIT. // All Code Copyright(c) 2018-2021 by Taxnexus, Inc. // All rights reserved worldwide. // Proprietary product; unlicensed use is not allowed package geo_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" "strconv" "github.com/go-openapi/errors" "github.com/go-openapi/strfmt" "github.com/go-openapi/swag" ) // Country country // // swagger:model Country type Country struct { // Account AccountID string `json:"AccountID,omitempty"` // Rollup Amount Amount float64 `json:"Amount,omitempty"` // Code Code string `json:"Code,omitempty"` // Contact ContactID string `json:"ContactID,omitempty"` // The Taxnexus ID of the user who created this record CreatedByID string `json:"CreatedByID,omitempty"` // The creation date of this database record CreatedDate string `json:"CreatedDate,omitempty"` // Enrollment Status EnrollmentStatus string `json:"EnrollmentStatus,omitempty"` // Taxnexus Record Id ID string `json:"ID,omitempty"` // Interest Interest float64 `json:"Interest,omitempty"` // The Taxnexus ID of the user last modified this record LastModifiedByID string `json:"LastModifiedByID,omitempty"` // The last modification date of this database record LastModifiedDate string `json:"LastModifiedDate,omitempty"` // Latitude of the center of this geographic entity Latitude float64 `json:"Latitude,omitempty"` // Longitude of the center of this geographic entity Longitude float64 `json:"Longitude,omitempty"` // Country Name Name string `json:"Name,omitempty"` // The Taxnexus ID of the user who owns this record OwnerID string `json:"OwnerID,omitempty"` // Penalty Penalty float64 `json:"Penalty,omitempty"` // Source System identifier for this record, if any Ref string `json:"Ref,omitempty"` // Reported Adjustments ReportedAdjustments float64 `json:"ReportedAdjustments,omitempty"` // Reported Deductions ReportedDeductions float64 `json:"ReportedDeductions,omitempty"` // Reported Net Revenue ReportedNetRevenue float64 `json:"ReportedNetRevenue,omitempty"` // Reported Rate ReportedRate float64 `json:"ReportedRate,omitempty"` // Reported Revenue ReportedRevenue float64 `json:"ReportedRevenue,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"` // Document Status Status string `json:"Status,omitempty"` // Reported Tax Subtotal float64 `json:"Subtotal,omitempty"` // tax instances TaxInstances []*TaxInstance `json:"TaxInstances"` // Template TemplateID string `json:"TemplateID,omitempty"` // Total Amount TotalAmount float64 `json:"TotalAmount,omitempty"` // Unit Base UnitBase float64 `json:"UnitBase,omitempty"` } // Validate validates this country func (m *Country) Validate(formats strfmt.Registry) error { var res []error if err := m.validateTaxInstances(formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } func (m *Country) validateTaxInstances(formats strfmt.Registry) error { if swag.IsZero(m.TaxInstances) { // not required return nil } for i := 0; i < len(m.TaxInstances); i++ { if swag.IsZero(m.TaxInstances[i]) { // not required continue } if m.TaxInstances[i] != nil { if err := m.TaxInstances[i].Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("TaxInstances" + "." + strconv.Itoa(i)) } return err } } } return nil } // ContextValidate validate this country based on the context it is used func (m *Country) ContextValidate(ctx context.Context, formats strfmt.Registry) error { var res []error if err := m.contextValidateTaxInstances(ctx, formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } func (m *Country) contextValidateTaxInstances(ctx context.Context, formats strfmt.Registry) error { for i := 0; i < len(m.TaxInstances); i++ { if m.TaxInstances[i] != nil { if err := m.TaxInstances[i].ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("TaxInstances" + "." + strconv.Itoa(i)) } return err } } } return nil } // MarshalBinary interface implementation func (m *Country) MarshalBinary() ([]byte, error) { if m == nil { return nil, nil } return swag.WriteJSON(m) } // UnmarshalBinary interface implementation func (m *Country) UnmarshalBinary(b []byte) error { var res Country if err := swag.ReadJSON(b, &res); err != nil { return err } *m = res return nil }