lib/api/devops/devops_models/ingest.go

447 lines
11 KiB
Go

// Code generated by go-swagger; DO NOT EDIT.
// (c) 2012-2020 by Telnexus LLC
// All rights reserved worldwide.
// Proprietary product; unlicensed use is not allowed
package devops_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"
"encoding/json"
"github.com/go-openapi/errors"
"github.com/go-openapi/strfmt"
"github.com/go-openapi/swag"
"github.com/go-openapi/validate"
)
// Ingest A record of the Ingest of information into Telnexus
//
// swagger:model Ingest
type Ingest struct {
// Account ID
// Required: true
AccountID *string `json:"AccountID"`
// Rollup Tax Amount
Amount float64 `json:"Amount,omitempty"`
// Backend ID
BackendID string `json:"BackendID,omitempty"`
// Company ID
CompanyID string `json:"CompanyID,omitempty"`
// Telnexus User ID
CreatedByID string `json:"CreatedByID,omitempty"`
// Date of Job Creation
CreatedDate string `json:"CreatedDate,omitempty"`
// Ingest Description
Description string `json:"Description,omitempty"`
// End Date
EndDate string `json:"EndDate,omitempty"`
// Filename
Filename string `json:"Filename,omitempty"`
// Record Id
ID string `json:"ID,omitempty"`
// Ingest Date
IngestDate string `json:"IngestDate,omitempty"`
// Ingest Failure Reason
IngestFailureReason string `json:"IngestFailureReason,omitempty"`
// Ingest Type
// Enum: [fabric internal suretax taxnexus-api]
IngestType string `json:"IngestType,omitempty"`
// Invoice Count
InvoiceCount int64 `json:"InvoiceCount,omitempty"`
// Job ID
JobID string `json:"JobID,omitempty"`
// Telnexus User ID
LastModifiedByID string `json:"LastModifiedByID,omitempty"`
// Last Modified Date
LastModifiedDate string `json:"LastModifiedDate,omitempty"`
// metrc last modified end
MetrcLastModifiedEnd string `json:"MetrcLastModifiedEnd,omitempty"`
// metrc last modified start
MetrcLastModifiedStart string `json:"MetrcLastModifiedStart,omitempty"`
// License
MetrcLicense string `json:"MetrcLicense,omitempty"`
// metrc salesreceipt ID
MetrcSalesreceiptID int64 `json:"MetrcSalesreceiptID,omitempty"`
// State Code
MetrcState string `json:"MetrcState,omitempty"`
// Ingest Object Type
// Required: true
// Enum: [account cash-receipt contact invoice order po quote]
ObjectType *string `json:"ObjectType"`
// PO Count
POCount int64 `json:"POCount,omitempty"`
// Parent Foreign Key
ParentFK string `json:"ParentFK,omitempty"`
// Period ID
PeriodID string `json:"PeriodID,omitempty"`
// Post Failure Reason
PostFalureReason string `json:"PostFalureReason,omitempty"`
// Rating Engine ID
RatingEngineID string `json:"RatingEngineID,omitempty"`
// Source System Reference
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"`
// The Saga ID used to link log entries and transactions
SagaID string `json:"SagaID,omitempty"`
// The type of Saga transaction being performed
SagaType string `json:"SagaType,omitempty"`
// The source system that generated this job
// Enum: [api fabric taxnexus telnexus]
Source string `json:"Source,omitempty"`
// Start Date
StartDate string `json:"StartDate,omitempty"`
// Ingest Status
// Enum: [failed_accounting failed_existing failed_glpost failed_invoice failed_po ingested new posted queued rated rejected]
Status string `json:"Status,omitempty"`
// Rollup Tax
Tax float64 `json:"Tax,omitempty"`
// Rollup Tax On Tax
TaxOnTax float64 `json:"TaxOnTax,omitempty"`
// Tax Transaction Count
TaxTransactionCount int64 `json:"TaxTransactionCount,omitempty"`
// Template
TemplateID string `json:"TemplateID,omitempty"`
// ID of the Tenant that owns this Object Instance
TenantID string `json:"TenantID,omitempty"`
// Rollup Unit Base
UnitBase int64 `json:"UnitBase,omitempty"`
}
// Validate validates this ingest
func (m *Ingest) Validate(formats strfmt.Registry) error {
var res []error
if err := m.validateAccountID(formats); err != nil {
res = append(res, err)
}
if err := m.validateIngestType(formats); err != nil {
res = append(res, err)
}
if err := m.validateObjectType(formats); err != nil {
res = append(res, err)
}
if err := m.validateSource(formats); err != nil {
res = append(res, err)
}
if err := m.validateStatus(formats); err != nil {
res = append(res, err)
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}
func (m *Ingest) validateAccountID(formats strfmt.Registry) error {
if err := validate.Required("AccountID", "body", m.AccountID); err != nil {
return err
}
return nil
}
var ingestTypeIngestTypePropEnum []interface{}
func init() {
var res []string
if err := json.Unmarshal([]byte(`["fabric","internal","suretax","taxnexus-api"]`), &res); err != nil {
panic(err)
}
for _, v := range res {
ingestTypeIngestTypePropEnum = append(ingestTypeIngestTypePropEnum, v)
}
}
const (
// IngestIngestTypeFabric captures enum value "fabric"
IngestIngestTypeFabric string = "fabric"
// IngestIngestTypeInternal captures enum value "internal"
IngestIngestTypeInternal string = "internal"
// IngestIngestTypeSuretax captures enum value "suretax"
IngestIngestTypeSuretax string = "suretax"
// IngestIngestTypeTaxnexusDashAPI captures enum value "taxnexus-api"
IngestIngestTypeTaxnexusDashAPI string = "taxnexus-api"
)
// prop value enum
func (m *Ingest) validateIngestTypeEnum(path, location string, value string) error {
if err := validate.EnumCase(path, location, value, ingestTypeIngestTypePropEnum, true); err != nil {
return err
}
return nil
}
func (m *Ingest) validateIngestType(formats strfmt.Registry) error {
if swag.IsZero(m.IngestType) { // not required
return nil
}
// value enum
if err := m.validateIngestTypeEnum("IngestType", "body", m.IngestType); err != nil {
return err
}
return nil
}
var ingestTypeObjectTypePropEnum []interface{}
func init() {
var res []string
if err := json.Unmarshal([]byte(`["account","cash-receipt","contact","invoice","order","po","quote"]`), &res); err != nil {
panic(err)
}
for _, v := range res {
ingestTypeObjectTypePropEnum = append(ingestTypeObjectTypePropEnum, v)
}
}
const (
// IngestObjectTypeAccount captures enum value "account"
IngestObjectTypeAccount string = "account"
// IngestObjectTypeCashDashReceipt captures enum value "cash-receipt"
IngestObjectTypeCashDashReceipt string = "cash-receipt"
// IngestObjectTypeContact captures enum value "contact"
IngestObjectTypeContact string = "contact"
// IngestObjectTypeInvoice captures enum value "invoice"
IngestObjectTypeInvoice string = "invoice"
// IngestObjectTypeOrder captures enum value "order"
IngestObjectTypeOrder string = "order"
// IngestObjectTypePo captures enum value "po"
IngestObjectTypePo string = "po"
// IngestObjectTypeQuote captures enum value "quote"
IngestObjectTypeQuote string = "quote"
)
// prop value enum
func (m *Ingest) validateObjectTypeEnum(path, location string, value string) error {
if err := validate.EnumCase(path, location, value, ingestTypeObjectTypePropEnum, true); err != nil {
return err
}
return nil
}
func (m *Ingest) validateObjectType(formats strfmt.Registry) error {
if err := validate.Required("ObjectType", "body", m.ObjectType); err != nil {
return err
}
// value enum
if err := m.validateObjectTypeEnum("ObjectType", "body", *m.ObjectType); err != nil {
return err
}
return nil
}
var ingestTypeSourcePropEnum []interface{}
func init() {
var res []string
if err := json.Unmarshal([]byte(`["api","fabric","taxnexus","telnexus"]`), &res); err != nil {
panic(err)
}
for _, v := range res {
ingestTypeSourcePropEnum = append(ingestTypeSourcePropEnum, v)
}
}
const (
// IngestSourceAPI captures enum value "api"
IngestSourceAPI string = "api"
// IngestSourceFabric captures enum value "fabric"
IngestSourceFabric string = "fabric"
// IngestSourceTaxnexus captures enum value "taxnexus"
IngestSourceTaxnexus string = "taxnexus"
// IngestSourceTelnexus captures enum value "telnexus"
IngestSourceTelnexus string = "telnexus"
)
// prop value enum
func (m *Ingest) validateSourceEnum(path, location string, value string) error {
if err := validate.EnumCase(path, location, value, ingestTypeSourcePropEnum, true); err != nil {
return err
}
return nil
}
func (m *Ingest) validateSource(formats strfmt.Registry) error {
if swag.IsZero(m.Source) { // not required
return nil
}
// value enum
if err := m.validateSourceEnum("Source", "body", m.Source); err != nil {
return err
}
return nil
}
var ingestTypeStatusPropEnum []interface{}
func init() {
var res []string
if err := json.Unmarshal([]byte(`["failed_accounting","failed_existing","failed_glpost","failed_invoice","failed_po","ingested","new","posted","queued","rated","rejected"]`), &res); err != nil {
panic(err)
}
for _, v := range res {
ingestTypeStatusPropEnum = append(ingestTypeStatusPropEnum, v)
}
}
const (
// IngestStatusFailedAccounting captures enum value "failed_accounting"
IngestStatusFailedAccounting string = "failed_accounting"
// IngestStatusFailedExisting captures enum value "failed_existing"
IngestStatusFailedExisting string = "failed_existing"
// IngestStatusFailedGlpost captures enum value "failed_glpost"
IngestStatusFailedGlpost string = "failed_glpost"
// IngestStatusFailedInvoice captures enum value "failed_invoice"
IngestStatusFailedInvoice string = "failed_invoice"
// IngestStatusFailedPo captures enum value "failed_po"
IngestStatusFailedPo string = "failed_po"
// IngestStatusIngested captures enum value "ingested"
IngestStatusIngested string = "ingested"
// IngestStatusNew captures enum value "new"
IngestStatusNew string = "new"
// IngestStatusPosted captures enum value "posted"
IngestStatusPosted string = "posted"
// IngestStatusQueued captures enum value "queued"
IngestStatusQueued string = "queued"
// IngestStatusRated captures enum value "rated"
IngestStatusRated string = "rated"
// IngestStatusRejected captures enum value "rejected"
IngestStatusRejected string = "rejected"
)
// prop value enum
func (m *Ingest) validateStatusEnum(path, location string, value string) error {
if err := validate.EnumCase(path, location, value, ingestTypeStatusPropEnum, true); err != nil {
return err
}
return nil
}
func (m *Ingest) validateStatus(formats strfmt.Registry) error {
if swag.IsZero(m.Status) { // not required
return nil
}
// value enum
if err := m.validateStatusEnum("Status", "body", m.Status); err != nil {
return err
}
return nil
}
// ContextValidate validates this ingest based on context it is used
func (m *Ingest) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
return nil
}
// MarshalBinary interface implementation
func (m *Ingest) MarshalBinary() ([]byte, error) {
if m == nil {
return nil, nil
}
return swag.WriteJSON(m)
}
// UnmarshalBinary interface implementation
func (m *Ingest) UnmarshalBinary(b []byte) error {
var res Ingest
if err := swag.ReadJSON(b, &res); err != nil {
return err
}
*m = res
return nil
}