207 lines
4.8 KiB
Go
207 lines
4.8 KiB
Go
// 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
|
|
}
|