metrc

package
v0.0.0-...-62e692c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 15, 2022 License: GPL-3.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	Employees      *EmployeeService
	Facilities     *FacilityService
	Harvests       *HarvestService
	Items          *ItemService
	LabTests       *LabTestService
	Locations      *LocationService
	Packages       *PackageService
	PlantBatches   *PlantBatchService
	Plants         *PlantService
	Sales          *SaleService
	Strains        *StrainService
	Transfers      *TransferService
	UnitsOfMeasure *UnitsOfMeasureService
	// contains filtered or unexported fields
}

func NewClient

func NewClient(config *Config) *Client

type Config

type Config struct {
	Production bool
	APIKey     string
}

type Employee

type Employee struct {
	FullName string      `json:"FullName"`
	License  interface{} `json:"License"`
}

type EmployeeListParams

type EmployeeListParams struct {
	LicenseNumber string `json:"licenseNumber"`
}

type EmployeeService

type EmployeeService struct {
	// contains filtered or unexported fields
}

func NewEmployeeService

func NewEmployeeService(sling *sling.Sling, config *Config) *EmployeeService

func (*EmployeeService) List

func (s *EmployeeService) List(userApiKey string, params *EmployeeListParams) (*[]Employee, *http.Response, error)

type Facility

type Facility struct {
	HireDate              string        `json:"HireDate"`
	IsOwner               bool          `json:"IsOwner"`
	IsManager             bool          `json:"IsManager"`
	Occupations           []interface{} `json:"Occupations"`
	Name                  string        `json:"Name"`
	Alias                 string        `json:"Alias"`
	DisplayName           string        `json:"DisplayName"`
	CredentialedDate      string        `json:"CredentialedDate"`
	SupportActivationDate interface{}   `json:"SupportActivationDate"`
	SupportExpirationDate interface{}   `json:"SupportExpirationDate"`
	SupportLastPaidDate   interface{}   `json:"SupportLastPaidDate"`
	FacilityType          interface{}   `json:"FacilityType"`
	License               struct {
		Number      string `json:"Number"`
		StartDate   string `json:"StartDate"`
		EndDate     string `json:"EndDate"`
		LicenseType string `json:"LicenseType"`
	} `json:"License"`
}

type FacilityService

type FacilityService struct {
	// contains filtered or unexported fields
}

func NewFacilityService

func NewFacilityService(sling *sling.Sling, config *Config) *FacilityService

func (*FacilityService) List

func (s *FacilityService) List(userApiKey string) (*[]Facility, *http.Response, error)

type Harvest

type Harvest struct {
	ID                     int           `json:"Id"`
	Name                   string        `json:"Name"`
	HarvestType            string        `json:"HarvestType"`
	SourceStrainCount      int           `json:"SourceStrainCount"`
	SourceStrainNames      interface{}   `json:"SourceStrainNames"`
	Strains                []interface{} `json:"Strains"`
	DryingLocationID       int           `json:"DryingLocationId"`
	DryingLocationName     string        `json:"DryingLocationName"`
	DryingLocationTypeName interface{}   `json:"DryingLocationTypeName"`
	PatientLicenseNumber   interface{}   `json:"PatientLicenseNumber"`
	CurrentWeight          float64       `json:"CurrentWeight"`
	TotalWasteWeight       float64       `json:"TotalWasteWeight"`
	PlantCount             int           `json:"PlantCount"`
	TotalWetWeight         float64       `json:"TotalWetWeight"`
	TotalRestoredWeight    float64       `json:"TotalRestoredWeight"`
	PackageCount           int           `json:"PackageCount"`
	TotalPackagedWeight    float64       `json:"TotalPackagedWeight"`
	UnitOfWeightName       string        `json:"UnitOfWeightName"`
	LabTestingState        interface{}   `json:"LabTestingState"`
	LabTestingStateDate    interface{}   `json:"LabTestingStateDate"`
	IsOnHold               bool          `json:"IsOnHold"`
	HarvestStartDate       string        `json:"HarvestStartDate"`
	FinishedDate           interface{}   `json:"FinishedDate"`
	ArchivedDate           interface{}   `json:"ArchivedDate"`
	LastModified           time.Time     `json:"LastModified"`
}

func (*Harvest) WasteTypes

func (s *Harvest) WasteTypes(userApiKey string) (*[]HarvestWasteType, *http.Response, error)

type HarvestGetByIDParams

type HarvestGetByIDParams struct {
	LicenseNumber string `json:"licenseNumber"`
}

type HarvestListParams

type HarvestListParams struct {
	LicenseNumber     string `json:"licenseNumber"`
	LastModifiedStart string `json:"lastModifiedStart"`
	LastModifiedEnd   string `json:"lastModifiedEnd"`
}

type HarvestService

type HarvestService struct {
	// contains filtered or unexported fields
}

func NewHarvestService

func NewHarvestService(sling *sling.Sling, config *Config) *HarvestService

func (*HarvestService) GetByID

func (s *HarvestService) GetByID(userApiKey string, params *HarvestGetByIDParams) (*Harvest, *http.Response, error)

func (*HarvestService) List

func (s *HarvestService) List(userApiKey string, params *HarvestListParams) (*[]Harvest, *http.Response, error)

type HarvestWasteType

type HarvestWasteType struct {
	Name string `json:"Name"`
}

type Item

type Item struct {
	ID                                  int         `json:"Id"`
	Name                                string      `json:"Name"`
	ProductCategoryName                 string      `json:"ProductCategoryName"`
	ProductCategoryType                 string      `json:"ProductCategoryType"`
	QuantityType                        string      `json:"QuantityType"`
	DefaultLabTestingState              string      `json:"DefaultLabTestingState"`
	UnitOfMeasureName                   string      `json:"UnitOfMeasureName"`
	ApprovalStatus                      string      `json:"ApprovalStatus"`
	ApprovalStatusDateTime              time.Time   `json:"ApprovalStatusDateTime"`
	StrainID                            int         `json:"StrainId"`
	StrainName                          string      `json:"StrainName"`
	AdministrationMethod                interface{} `json:"AdministrationMethod"`
	UnitCbdPercent                      interface{} `json:"UnitCbdPercent"`
	UnitCbdContent                      interface{} `json:"UnitCbdContent"`
	UnitCbdContentUnitOfMeasureName     interface{} `json:"UnitCbdContentUnitOfMeasureName"`
	UnitCbdContentDose                  interface{} `json:"UnitCbdContentDose"`
	UnitCbdContentDoseUnitOfMeasureName interface{} `json:"UnitCbdContentDoseUnitOfMeasureName"`
	UnitThcPercent                      interface{} `json:"UnitThcPercent"`
	UnitThcContent                      interface{} `json:"UnitThcContent"`
	UnitThcContentUnitOfMeasureName     interface{} `json:"UnitThcContentUnitOfMeasureName"`
	UnitThcContentDose                  interface{} `json:"UnitThcContentDose"`
	UnitThcContentDoseUnitOfMeasureName interface{} `json:"UnitThcContentDoseUnitOfMeasureName"`
	UnitVolume                          interface{} `json:"UnitVolume"`
	UnitVolumeUnitOfMeasureName         interface{} `json:"UnitVolumeUnitOfMeasureName"`
	UnitWeight                          interface{} `json:"UnitWeight"`
	UnitWeightUnitOfMeasureName         interface{} `json:"UnitWeightUnitOfMeasureName"`
	ServingSize                         interface{} `json:"ServingSize"`
	SupplyDurationDays                  interface{} `json:"SupplyDurationDays"`
	NumberOfDoses                       interface{} `json:"NumberOfDoses"`
	UnitQuantity                        interface{} `json:"UnitQuantity"`
	UnitQuantityUnitOfMeasureName       interface{} `json:"UnitQuantityUnitOfMeasureName"`
	PublicIngredients                   interface{} `json:"PublicIngredients"`
	Description                         interface{} `json:"Description"`
	IsUsed                              bool        `json:"IsUsed"`
}

type ItemBrand

type ItemBrand struct {
	Name   string `json:"Name"`
	Status string `json:"Status"`
}

type ItemBrandParams

type ItemBrandParams struct {
	LicenseNumber string `json:"licenseNumber"`
}

type ItemCategoriesParams

type ItemCategoriesParams struct {
	LicenseNumber string `json:"licenseNumber"`
}

type ItemCategory

type ItemCategory struct {
	Name                         string `json:"Name"`
	ProductCategoryType          string `json:"ProductCategoryType"`
	QuantityType                 string `json:"QuantityType"`
	RequiresStrain               bool   `json:"RequiresStrain"`
	RequiresItemBrand            bool   `json:"RequiresItemBrand"`
	RequiresAdministrationMethod bool   `json:"RequiresAdministrationMethod"`
	RequiresUnitCbdPercent       bool   `json:"RequiresUnitCbdPercent"`
	RequiresUnitCbdContent       bool   `json:"RequiresUnitCbdContent"`
	RequiresUnitCbdContentDose   bool   `json:"RequiresUnitCbdContentDose"`
	RequiresUnitThcPercent       bool   `json:"RequiresUnitThcPercent"`
	RequiresUnitThcContent       bool   `json:"RequiresUnitThcContent"`
	RequiresUnitThcContentDose   bool   `json:"RequiresUnitThcContentDose"`
	RequiresUnitVolume           bool   `json:"RequiresUnitVolume"`
	RequiresUnitWeight           bool   `json:"RequiresUnitWeight"`
	RequiresServingSize          bool   `json:"RequiresServingSize"`
	RequiresSupplyDurationDays   bool   `json:"RequiresSupplyDurationDays"`
	RequiresNumberOfDoses        bool   `json:"RequiresNumberOfDoses"`
	RequiresPublicIngredients    bool   `json:"RequiresPublicIngredients"`
	RequiresDescription          bool   `json:"RequiresDescription"`
	RequiresProductPhotos        int    `json:"RequiresProductPhotos"`
	RequiresLabelPhotos          int    `json:"RequiresLabelPhotos"`
	RequiresPackagingPhotos      int    `json:"RequiresPackagingPhotos"`
	CanContainSeeds              bool   `json:"CanContainSeeds"`
	CanBeRemediated              bool   `json:"CanBeRemediated"`
	CanBeDestroyed               bool   `json:"CanBeDestroyed"`
}

type ItemGetByIDParams

type ItemGetByIDParams struct {
	LicenseNumber string `json:"licenseNumber"`
}

type ItemListParams

type ItemListParams struct {
	LicenseNumber string `json:"licenseNumber"`
}

type ItemService

type ItemService struct {
	// contains filtered or unexported fields
}

func NewItemService

func NewItemService(sling *sling.Sling, config *Config) *ItemService

func (*ItemService) Brands

func (s *ItemService) Brands(userApiKey string, params *ItemBrandParams) ([]ItemBrand, *http.Response, error)

func (*ItemService) Categories

func (s *ItemService) Categories(userApiKey string, params *ItemCategoriesParams) ([]ItemCategory, *http.Response, error)

func (*ItemService) GetByID

func (s *ItemService) GetByID(userApiKey string, params *ItemGetByIDParams) (*Item, *http.Response, error)

func (*ItemService) List

func (s *ItemService) List(userApiKey string, params *ItemListParams) ([]Item, *http.Response, error)

type LabTestResult

type LabTestResult struct {
	PackageID                int         `json:"PackageId"`
	LabTestResultID          int         `json:"LabTestResultId"`
	LabFacilityLicenseNumber string      `json:"LabFacilityLicenseNumber"`
	LabFacilityName          string      `json:"LabFacilityName"`
	SourcePackageLabel       string      `json:"SourcePackageLabel"`
	ProductName              string      `json:"ProductName"`
	ProductCategoryName      string      `json:"ProductCategoryName"`
	TestPerformedDate        string      `json:"TestPerformedDate"`
	OverallPassed            bool        `json:"OverallPassed"`
	RevokedDate              interface{} `json:"RevokedDate"`
	ResultReleased           bool        `json:"ResultReleased"`
	ResultReleaseDateTime    time.Time   `json:"ResultReleaseDateTime"`
	TestTypeName             string      `json:"TestTypeName"`
	TestPassed               bool        `json:"TestPassed"`
	TestResultLevel          float64     `json:"TestResultLevel"`
	TestComment              string      `json:"TestComment"`
	TestInformationalOnly    bool        `json:"TestInformationalOnly"`
	LabTestDetailRevokedDate interface{} `json:"LabTestDetailRevokedDate"`
}

type LabTestResultParams

type LabTestResultParams struct {
	PackageID     string `json:"packageId"`
	LicenseNumber string `json:"licenseNumber"`
}

type LabTestService

type LabTestService struct {
	// contains filtered or unexported fields
}

func NewLabTestService

func NewLabTestService(sling *sling.Sling, config *Config) *LabTestService

func (*LabTestService) Results

func (s *LabTestService) Results(userApiKey string, params *LabTestResultParams) ([]LabTestResult, *http.Response, error)

func (*LabTestService) States

func (s *LabTestService) States(userApiKey string) ([]string, *http.Response, error)

func (*LabTestService) Types

func (s *LabTestService) Types(userApiKey string) ([]LabTestType, *http.Response, error)

type LabTestType

type LabTestType struct {
	ID                   int         `json:"Id"`
	Name                 string      `json:"Name"`
	RequiresTestResult   bool        `json:"RequiresTestResult"`
	InformationalOnly    bool        `json:"InformationalOnly"`
	AlwaysPasses         bool        `json:"AlwaysPasses"`
	LabTestResultMode    int         `json:"LabTestResultMode"`
	LabTestResultMinimum interface{} `json:"LabTestResultMinimum"`
	LabTestResultMaximum interface{} `json:"LabTestResultMaximum"`
	DependencyMode       int         `json:"DependencyMode"`
}

type Location

type Location struct {
	ID               int    `json:"Id"`
	Name             string `json:"Name"`
	LocationTypeID   int    `json:"LocationTypeId"`
	LocationTypeName string `json:"LocationTypeName"`
	ForPlantBatches  bool   `json:"ForPlantBatches"`
	ForPlants        bool   `json:"ForPlants"`
	ForHarvests      bool   `json:"ForHarvests"`
	ForPackages      bool   `json:"ForPackages"`
}

type LocationService

type LocationService struct {
	// contains filtered or unexported fields
}

func NewLocationService

func NewLocationService(sling *sling.Sling, config *Config) *LocationService

func (*LocationService) GetByID

func (s *LocationService) GetByID(userApiKey string, id int) (*Location, *http.Response, error)

func (*LocationService) List

func (s *LocationService) List(userApiKey string) ([]Location, *http.Response, error)

func (*LocationService) Types

func (s *LocationService) Types(userApiKey string) ([]LocationType, *http.Response, error)

type LocationType

type LocationType struct {
	ID              int    `json:"Id"`
	Name            string `json:"Name"`
	ForPlantBatches bool   `json:"ForPlantBatches"`
	ForPlants       bool   `json:"ForPlants"`
	ForHarvests     bool   `json:"ForHarvests"`
	ForPackages     bool   `json:"ForPackages"`
}

type Package

type Package struct {
	ID                                int         `json:"Id"`
	Label                             string      `json:"Label"`
	PackageType                       string      `json:"PackageType"`
	SourceHarvestCount                int         `json:"SourceHarvestCount"`
	SourcePackageCount                int         `json:"SourcePackageCount"`
	SourceProcessingJobCount          int         `json:"SourceProcessingJobCount"`
	SourceHarvestNames                interface{} `json:"SourceHarvestNames"`
	LocationID                        interface{} `json:"LocationId"`
	LocationName                      interface{} `json:"LocationName"`
	LocationTypeName                  interface{} `json:"LocationTypeName"`
	Quantity                          float64     `json:"Quantity"`
	UnitOfMeasureName                 string      `json:"UnitOfMeasureName"`
	UnitOfMeasureAbbreviation         string      `json:"UnitOfMeasureAbbreviation"`
	PatientLicenseNumber              interface{} `json:"PatientLicenseNumber"`
	ItemFromFacilityLicenseNumber     interface{} `json:"ItemFromFacilityLicenseNumber"`
	ItemFromFacilityName              interface{} `json:"ItemFromFacilityName"`
	Note                              interface{} `json:"Note"`
	PackagedDate                      string      `json:"PackagedDate"`
	InitialLabTestingState            string      `json:"InitialLabTestingState"`
	LabTestingState                   string      `json:"LabTestingState"`
	LabTestingStateDate               string      `json:"LabTestingStateDate"`
	IsProductionBatch                 bool        `json:"IsProductionBatch"`
	ProductionBatchNumber             interface{} `json:"ProductionBatchNumber"`
	SourceProductionBatchNumbers      interface{} `json:"SourceProductionBatchNumbers"`
	IsTradeSample                     bool        `json:"IsTradeSample"`
	IsTradeSamplePersistent           bool        `json:"IsTradeSamplePersistent"`
	SourcePackageIsTradeSample        bool        `json:"SourcePackageIsTradeSample"`
	IsDonation                        bool        `json:"IsDonation"`
	IsDonationPersistent              bool        `json:"IsDonationPersistent"`
	SourcePackageIsDonation           bool        `json:"SourcePackageIsDonation"`
	IsTestingSample                   bool        `json:"IsTestingSample"`
	IsProcessValidationTestingSample  bool        `json:"IsProcessValidationTestingSample"`
	ProductRequiresRemediation        bool        `json:"ProductRequiresRemediation"`
	ContainsRemediatedProduct         bool        `json:"ContainsRemediatedProduct"`
	RemediationDate                   interface{} `json:"RemediationDate"`
	ReceivedDateTime                  interface{} `json:"ReceivedDateTime"`
	ReceivedFromManifestNumber        interface{} `json:"ReceivedFromManifestNumber"`
	ReceivedFromFacilityLicenseNumber interface{} `json:"ReceivedFromFacilityLicenseNumber"`
	ReceivedFromFacilityName          interface{} `json:"ReceivedFromFacilityName"`
	IsOnHold                          bool        `json:"IsOnHold"`
	ArchivedDate                      interface{} `json:"ArchivedDate"`
	FinishedDate                      interface{} `json:"FinishedDate"`
	LastModified                      time.Time   `json:"LastModified"`
	Item                              struct {
		ID                                  int         `json:"Id"`
		Name                                string      `json:"Name"`
		ProductCategoryName                 string      `json:"ProductCategoryName"`
		ProductCategoryType                 int         `json:"ProductCategoryType"`
		QuantityType                        int         `json:"QuantityType"`
		DefaultLabTestingState              int         `json:"DefaultLabTestingState"`
		UnitOfMeasureName                   interface{} `json:"UnitOfMeasureName"`
		ApprovalStatus                      int         `json:"ApprovalStatus"`
		ApprovalStatusDateTime              time.Time   `json:"ApprovalStatusDateTime"`
		StrainID                            interface{} `json:"StrainId"`
		StrainName                          interface{} `json:"StrainName"`
		AdministrationMethod                interface{} `json:"AdministrationMethod"`
		UnitCbdPercent                      interface{} `json:"UnitCbdPercent"`
		UnitCbdContent                      interface{} `json:"UnitCbdContent"`
		UnitCbdContentUnitOfMeasureName     interface{} `json:"UnitCbdContentUnitOfMeasureName"`
		UnitCbdContentDose                  interface{} `json:"UnitCbdContentDose"`
		UnitCbdContentDoseUnitOfMeasureName interface{} `json:"UnitCbdContentDoseUnitOfMeasureName"`
		UnitThcPercent                      interface{} `json:"UnitThcPercent"`
		UnitThcContent                      interface{} `json:"UnitThcContent"`
		UnitThcContentUnitOfMeasureName     interface{} `json:"UnitThcContentUnitOfMeasureName"`
		UnitThcContentDose                  interface{} `json:"UnitThcContentDose"`
		UnitThcContentDoseUnitOfMeasureName interface{} `json:"UnitThcContentDoseUnitOfMeasureName"`
		UnitVolume                          interface{} `json:"UnitVolume"`
		UnitVolumeUnitOfMeasureName         interface{} `json:"UnitVolumeUnitOfMeasureName"`
		UnitWeight                          interface{} `json:"UnitWeight"`
		UnitWeightUnitOfMeasureName         interface{} `json:"UnitWeightUnitOfMeasureName"`
		ServingSize                         interface{} `json:"ServingSize"`
		SupplyDurationDays                  interface{} `json:"SupplyDurationDays"`
		NumberOfDoses                       interface{} `json:"NumberOfDoses"`
		UnitQuantity                        interface{} `json:"UnitQuantity"`
		UnitQuantityUnitOfMeasureName       interface{} `json:"UnitQuantityUnitOfMeasureName"`
		PublicIngredients                   interface{} `json:"PublicIngredients"`
		Description                         interface{} `json:"Description"`
		IsUsed                              bool        `json:"IsUsed"`
	} `json:"Item"`
}

type PackageAdjustReason

type PackageAdjustReason struct {
	Name         string `json:"Name"`
	RequiresNote bool   `json:"RequiresNote"`
}

type PackageService

type PackageService struct {
	// contains filtered or unexported fields
}

func NewPackageService

func NewPackageService(sling *sling.Sling, config *Config) *PackageService

func (*PackageService) AdjustReasons

func (s *PackageService) AdjustReasons(userApiKey string) ([]PackageAdjustReason, *http.Response, error)

func (*PackageService) GetByID

func (s *PackageService) GetByID(userApiKey string, id int) (*Package, *http.Response, error)

func (*PackageService) GetByLabel

func (s *PackageService) GetByLabel(userApiKey string, label string) (*Package, *http.Response, error)

func (*PackageService) List

func (s *PackageService) List(userApiKey string) ([]Package, *http.Response, error)

func (*PackageService) Types

func (s *PackageService) Types(userApiKey string) ([]string, *http.Response, error)

type Plant

type Plant struct {
	ID                                int         `json:"Id"`
	Label                             string      `json:"Label"`
	State                             string      `json:"State"`
	GrowthPhase                       string      `json:"GrowthPhase"`
	PlantBatchID                      int         `json:"PlantBatchId"`
	PlantBatchName                    string      `json:"PlantBatchName"`
	PlantBatchTypeID                  int         `json:"PlantBatchTypeId"`
	PlantBatchTypeName                string      `json:"PlantBatchTypeName"`
	StrainID                          int         `json:"StrainId"`
	StrainName                        string      `json:"StrainName"`
	LocationID                        int         `json:"LocationId"`
	LocationName                      string      `json:"LocationName"`
	LocationTypeName                  interface{} `json:"LocationTypeName"`
	PatientLicenseNumber              interface{} `json:"PatientLicenseNumber"`
	HarvestID                         interface{} `json:"HarvestId"`
	HarvestedUnitOfWeightName         interface{} `json:"HarvestedUnitOfWeightName"`
	HarvestedUnitOfWeightAbbreviation interface{} `json:"HarvestedUnitOfWeightAbbreviation"`
	HarvestedWetWeight                interface{} `json:"HarvestedWetWeight"`
	HarvestCount                      int         `json:"HarvestCount"`
	IsOnHold                          bool        `json:"IsOnHold"`
	PlantedDate                       string      `json:"PlantedDate"`
	VegetativeDate                    string      `json:"VegetativeDate"`
	FloweringDate                     interface{} `json:"FloweringDate"`
	HarvestedDate                     interface{} `json:"HarvestedDate"`
	DestroyedDate                     interface{} `json:"DestroyedDate"`
	DestroyedNote                     interface{} `json:"DestroyedNote"`
	DestroyedByUserName               interface{} `json:"DestroyedByUserName"`
	LastModified                      time.Time   `json:"LastModified"`
}

type PlantAdditive

type PlantAdditive struct {
	AdditiveTypeName      interface{} `json:"AdditiveTypeName"`
	ProductTradeName      string      `json:"ProductTradeName"`
	EpaRegistrationNumber interface{} `json:"EpaRegistrationNumber"`
	ProductSupplier       string      `json:"ProductSupplier"`
	ApplicationDevice     string      `json:"ApplicationDevice"`
	AmountUnitOfMeasure   string      `json:"AmountUnitOfMeasure"`
	TotalAmountApplied    float64     `json:"TotalAmountApplied"`
	PlantBatchID          interface{} `json:"PlantBatchId"`
	PlantBatchName        interface{} `json:"PlantBatchName"`
	PlantCount            int         `json:"PlantCount"`
}

type PlantBatch

type PlantBatch struct {
	ID                    int           `json:"Id"`
	Name                  string        `json:"Name"`
	PlantBatchTypeID      int           `json:"PlantBatchTypeId"`
	PlantBatchTypeName    string        `json:"PlantBatchTypeName"`
	LocationID            interface{}   `json:"LocationId"`
	LocationName          interface{}   `json:"LocationName"`
	LocationTypeName      interface{}   `json:"LocationTypeName"`
	StrainID              int           `json:"StrainId"`
	StrainName            string        `json:"StrainName"`
	PatientLicenseNumber  interface{}   `json:"PatientLicenseNumber"`
	UntrackedCount        int           `json:"UntrackedCount"`
	TrackedCount          int           `json:"TrackedCount"`
	PackagedCount         int           `json:"PackagedCount"`
	HarvestedCount        int           `json:"HarvestedCount"`
	DestroyedCount        int           `json:"DestroyedCount"`
	SourcePackageID       interface{}   `json:"SourcePackageId"`
	SourcePackageLabel    interface{}   `json:"SourcePackageLabel"`
	SourcePlantID         interface{}   `json:"SourcePlantId"`
	SourcePlantLabel      interface{}   `json:"SourcePlantLabel"`
	SourcePlantBatchIds   []interface{} `json:"SourcePlantBatchIds"`
	SourcePlantBatchNames interface{}   `json:"SourcePlantBatchNames"`
	MultiPlantBatch       bool          `json:"MultiPlantBatch"`
	SourcePlantBatchID    int           `json:"SourcePlantBatchId"`
	SourcePlantBatchName  interface{}   `json:"SourcePlantBatchName"`
	PlantedDate           string        `json:"PlantedDate"`
	LastModified          time.Time     `json:"LastModified"`
}

type PlantBatchService

type PlantBatchService struct {
	// contains filtered or unexported fields
}

func NewPlantBatchService

func NewPlantBatchService(sling *sling.Sling, config *Config) *PlantBatchService

func (*PlantBatchService) GetByID

func (s *PlantBatchService) GetByID(userApiKey string, id int, licenseNumber string) (*PlantBatch, *http.Response, error)

func (*PlantBatchService) List

func (s *PlantBatchService) List(userApiKey string, status string) ([]PlantBatch, *http.Response, error)

func (*PlantBatchService) Types

func (s *PlantBatchService) Types(userApiKey string) ([]string, *http.Response, error)

type PlantService

type PlantService struct {
	// contains filtered or unexported fields
}

func NewPlantService

func NewPlantService(sling *sling.Sling, config *Config) *PlantService

func (*PlantService) AdditiveTypes

func (s *PlantService) AdditiveTypes(userApiKey string) ([]string, *http.Response, error)

func (*PlantService) Additives

func (s *PlantService) Additives(userApiKey string) ([]PlantAdditive, *http.Response, error)

func (*PlantService) GetByID

func (s *PlantService) GetByID(userApiKey string, id int) (*Plant, *http.Response, error)

func (*PlantService) GetByLabel

func (s *PlantService) GetByLabel(userApiKey string, label string) (*Plant, *http.Response, error)

func (*PlantService) GrowthPhases

func (s *PlantService) GrowthPhases(userApiKey string) ([]string, *http.Response, error)

func (*PlantService) List

func (s *PlantService) List(userApiKey string) ([]Plant, *http.Response, error)

func (*PlantService) WasteMethods

func (s *PlantService) WasteMethods(userApiKey string) ([]PlantWasteMethod, *http.Response, error)

func (*PlantService) WasteReasons

func (s *PlantService) WasteReasons(userApiKey string) ([]PlantWasteReason, *http.Response, error)

type PlantWasteMethod

type PlantWasteMethod struct {
	Name string `json:"Name"`
}

type PlantWasteReason

type PlantWasteReason struct {
	Name         string `json:"Name"`
	RequiresNote bool   `json:"RequiresNote"`
}

type SaleReceipt

type SaleReceipt struct {
	ID                     int           `json:"Id"`
	ReceiptNumber          interface{}   `json:"ReceiptNumber"`
	SalesDateTime          string        `json:"SalesDateTime"`
	SalesCustomerType      string        `json:"SalesCustomerType"`
	PatientLicenseNumber   interface{}   `json:"PatientLicenseNumber"`
	CaregiverLicenseNumber interface{}   `json:"CaregiverLicenseNumber"`
	IdentificationMethod   interface{}   `json:"IdentificationMethod"`
	TotalPackages          int           `json:"TotalPackages"`
	TotalPrice             float64       `json:"TotalPrice"`
	Transactions           []interface{} `json:"Transactions"`
	IsFinal                bool          `json:"IsFinal"`
	ArchivedDate           interface{}   `json:"ArchivedDate"`
	RecordedDateTime       time.Time     `json:"RecordedDateTime"`
	RecordedByUserName     interface{}   `json:"RecordedByUserName"`
	LastModified           time.Time     `json:"LastModified"`
}

type SaleService

type SaleService struct {
	// contains filtered or unexported fields
}

func NewSaleService

func NewSaleService(sling *sling.Sling, config *Config) *SaleService

func (*SaleService) CustomerTypes

func (s *SaleService) CustomerTypes(userApiKey string) ([]string, *http.Response, error)

func (*SaleService) Receipt

func (s *SaleService) Receipt(userApiKey string) (*SaleReceipt, *http.Response, error)

func (*SaleService) Receipts

func (s *SaleService) Receipts(userApiKey string) ([]SaleReceipt, *http.Response, error)

func (*SaleService) TransactionDetails

func (s *SaleService) TransactionDetails(userApiKey string) ([]SaleTransactionDetails, *http.Response, error)

func (*SaleService) Transactions

func (s *SaleService) Transactions(userApiKey string) ([]SaleTransaction, *http.Response, error)

type SaleTransaction

type SaleTransaction struct {
	SalesDate         string  `json:"SalesDate"`
	TotalTransactions int     `json:"TotalTransactions"`
	TotalPackages     int     `json:"TotalPackages"`
	TotalPrice        float64 `json:"TotalPrice"`
}

type SaleTransactionDetails

type SaleTransactionDetails struct {
	PackageID                               int         `json:"PackageId"`
	PackageLabel                            string      `json:"PackageLabel"`
	ProductName                             string      `json:"ProductName"`
	ProductCategoryName                     interface{} `json:"ProductCategoryName"`
	ItemStrainName                          interface{} `json:"ItemStrainName"`
	ItemUnitCbdPercent                      interface{} `json:"ItemUnitCbdPercent"`
	ItemUnitCbdContent                      interface{} `json:"ItemUnitCbdContent"`
	ItemUnitCbdContentUnitOfMeasureName     interface{} `json:"ItemUnitCbdContentUnitOfMeasureName"`
	ItemUnitCbdContentDose                  interface{} `json:"ItemUnitCbdContentDose"`
	ItemUnitCbdContentDoseUnitOfMeasureName interface{} `json:"ItemUnitCbdContentDoseUnitOfMeasureName"`
	ItemUnitThcPercent                      interface{} `json:"ItemUnitThcPercent"`
	ItemUnitThcContent                      interface{} `json:"ItemUnitThcContent"`
	ItemUnitThcContentUnitOfMeasureName     interface{} `json:"ItemUnitThcContentUnitOfMeasureName"`
	ItemUnitThcContentDose                  interface{} `json:"ItemUnitThcContentDose"`
	ItemUnitThcContentDoseUnitOfMeasureName interface{} `json:"ItemUnitThcContentDoseUnitOfMeasureName"`
	ItemUnitVolume                          interface{} `json:"ItemUnitVolume"`
	ItemUnitVolumeUnitOfMeasureName         interface{} `json:"ItemUnitVolumeUnitOfMeasureName"`
	ItemUnitWeight                          interface{} `json:"ItemUnitWeight"`
	ItemUnitWeightUnitOfMeasureName         interface{} `json:"ItemUnitWeightUnitOfMeasureName"`
	ItemServingSize                         interface{} `json:"ItemServingSize"`
	ItemSupplyDurationDays                  interface{} `json:"ItemSupplyDurationDays"`
	ItemUnitQuantity                        interface{} `json:"ItemUnitQuantity"`
	ItemUnitQuantityUnitOfMeasureName       interface{} `json:"ItemUnitQuantityUnitOfMeasureName"`
	QuantitySold                            float64     `json:"QuantitySold"`
	UnitOfMeasureName                       string      `json:"UnitOfMeasureName"`
	UnitOfMeasureAbbreviation               string      `json:"UnitOfMeasureAbbreviation"`
	UnitThcPercent                          interface{} `json:"UnitThcPercent"`
	UnitThcContent                          interface{} `json:"UnitThcContent"`
	UnitWeight                              interface{} `json:"UnitWeight"`
	TotalPrice                              float64     `json:"TotalPrice"`
	SalesDeliveryState                      interface{} `json:"SalesDeliveryState"`
	ArchivedDate                            interface{} `json:"ArchivedDate"`
	RecordedDateTime                        time.Time   `json:"RecordedDateTime"`
	RecordedByUserName                      interface{} `json:"RecordedByUserName"`
	LastModified                            time.Time   `json:"LastModified"`
}

type Strain

type Strain struct {
	ID               int         `json:"Id"`
	Name             string      `json:"Name"`
	TestingStatus    string      `json:"TestingStatus"`
	ThcLevel         interface{} `json:"ThcLevel"`
	CbdLevel         interface{} `json:"CbdLevel"`
	IndicaPercentage float64     `json:"IndicaPercentage"`
	SativaPercentage float64     `json:"SativaPercentage"`
	IsUsed           bool        `json:"IsUsed"`
	Genetics         string      `json:"Genetics"`
}

type StrainService

type StrainService struct {
	// contains filtered or unexported fields
}

func NewStrainService

func NewStrainService(sling *sling.Sling, config *Config) *StrainService

func (*StrainService) GetByID

func (s *StrainService) GetByID(userApiKey string) (*Strain, *http.Response, error)

func (*StrainService) List

func (s *StrainService) List(userApiKey string) ([]Strain, *http.Response, error)

type Transfer

type Transfer struct {
	ID                                 int         `json:"Id"`
	ManifestNumber                     string      `json:"ManifestNumber"`
	ShipmentLicenseType                int         `json:"ShipmentLicenseType"`
	ShipperFacilityLicenseNumber       string      `json:"ShipperFacilityLicenseNumber"`
	ShipperFacilityName                string      `json:"ShipperFacilityName"`
	Name                               interface{} `json:"Name"`
	TransporterFacilityLicenseNumber   string      `json:"TransporterFacilityLicenseNumber"`
	TransporterFacilityName            string      `json:"TransporterFacilityName"`
	DriverName                         string      `json:"DriverName"`
	DriverOccupationalLicenseNumber    string      `json:"DriverOccupationalLicenseNumber"`
	DriverVehicleLicenseNumber         string      `json:"DriverVehicleLicenseNumber"`
	VehicleMake                        string      `json:"VehicleMake"`
	VehicleModel                       string      `json:"VehicleModel"`
	VehicleLicensePlateNumber          string      `json:"VehicleLicensePlateNumber"`
	DeliveryCount                      int         `json:"DeliveryCount"`
	ReceivedDeliveryCount              int         `json:"ReceivedDeliveryCount"`
	PackageCount                       int         `json:"PackageCount"`
	ReceivedPackageCount               int         `json:"ReceivedPackageCount"`
	ContainsPlantPackage               bool        `json:"ContainsPlantPackage"`
	ContainsProductPackage             bool        `json:"ContainsProductPackage"`
	ContainsTradeSample                bool        `json:"ContainsTradeSample"`
	ContainsDonation                   bool        `json:"ContainsDonation"`
	ContainsTestingSample              bool        `json:"ContainsTestingSample"`
	ContainsProductRequiresRemediation bool        `json:"ContainsProductRequiresRemediation"`
	ContainsRemediatedProductPackage   bool        `json:"ContainsRemediatedProductPackage"`
	CreatedDateTime                    string      `json:"CreatedDateTime"`
	CreatedByUserName                  interface{} `json:"CreatedByUserName"`
	LastModified                       time.Time   `json:"LastModified"`
	DeliveryID                         int         `json:"DeliveryId"`
	RecipientFacilityLicenseNumber     string      `json:"RecipientFacilityLicenseNumber"`
	RecipientFacilityName              string      `json:"RecipientFacilityName"`
	ShipmentTypeName                   string      `json:"ShipmentTypeName"`
	ShipmentTransactionType            string      `json:"ShipmentTransactionType"`
	EstimatedDepartureDateTime         string      `json:"EstimatedDepartureDateTime"`
	ActualDepartureDateTime            interface{} `json:"ActualDepartureDateTime"`
	EstimatedArrivalDateTime           string      `json:"EstimatedArrivalDateTime"`
	ActualArrivalDateTime              interface{} `json:"ActualArrivalDateTime"`
	DeliveryPackageCount               int         `json:"DeliveryPackageCount"`
	DeliveryReceivedPackageCount       int         `json:"DeliveryReceivedPackageCount"`
	ReceivedDateTime                   string      `json:"ReceivedDateTime"`
	EstimatedReturnDepartureDateTime   interface{} `json:"EstimatedReturnDepartureDateTime"`
	ActualReturnDepartureDateTime      interface{} `json:"ActualReturnDepartureDateTime"`
	EstimatedReturnArrivalDateTime     interface{} `json:"EstimatedReturnArrivalDateTime"`
	ActualReturnArrivalDateTime        interface{} `json:"ActualReturnArrivalDateTime"`
}

type TransferDelivery

type TransferDelivery struct {
	ID                               int         `json:"Id"`
	RecipientFacilityLicenseNumber   string      `json:"RecipientFacilityLicenseNumber"`
	RecipientFacilityName            string      `json:"RecipientFacilityName"`
	ShipmentTypeName                 string      `json:"ShipmentTypeName"`
	ShipmentTransactionType          string      `json:"ShipmentTransactionType"`
	EstimatedDepartureDateTime       string      `json:"EstimatedDepartureDateTime"`
	ActualDepartureDateTime          interface{} `json:"ActualDepartureDateTime"`
	EstimatedArrivalDateTime         string      `json:"EstimatedArrivalDateTime"`
	ActualArrivalDateTime            interface{} `json:"ActualArrivalDateTime"`
	GrossWeight                      interface{} `json:"GrossWeight"`
	GrossUnitOfWeightID              interface{} `json:"GrossUnitOfWeightId"`
	GrossUnitOfWeightName            interface{} `json:"GrossUnitOfWeightName"`
	PlannedRoute                     string      `json:"PlannedRoute"`
	DeliveryPackageCount             int         `json:"DeliveryPackageCount"`
	DeliveryReceivedPackageCount     int         `json:"DeliveryReceivedPackageCount"`
	ReceivedDateTime                 string      `json:"ReceivedDateTime"`
	EstimatedReturnDepartureDateTime interface{} `json:"EstimatedReturnDepartureDateTime"`
	ActualReturnDepartureDateTime    interface{} `json:"ActualReturnDepartureDateTime"`
	EstimatedReturnArrivalDateTime   interface{} `json:"EstimatedReturnArrivalDateTime"`
	ActualReturnArrivalDateTime      interface{} `json:"ActualReturnArrivalDateTime"`
	RejectedPackagesReturned         bool        `json:"RejectedPackagesReturned"`
}

type TransferDeliveryPackage

type TransferDeliveryPackage struct {
	PackageID                               int         `json:"PackageId"`
	PackageLabel                            string      `json:"PackageLabel"`
	PackageType                             string      `json:"PackageType"`
	SourceHarvestNames                      interface{} `json:"SourceHarvestNames"`
	SourcePackageLabels                     interface{} `json:"SourcePackageLabels"`
	ItemID                                  int         `json:"ItemId"`
	ProductName                             string      `json:"ProductName"`
	ItemName                                string      `json:"ItemName"`
	ProductCategoryName                     string      `json:"ProductCategoryName"`
	ItemCategoryName                        string      `json:"ItemCategoryName"`
	ItemStrainName                          interface{} `json:"ItemStrainName"`
	ItemBrandName                           interface{} `json:"ItemBrandName"`
	ItemUnitCbdPercent                      interface{} `json:"ItemUnitCbdPercent"`
	ItemUnitCbdContent                      interface{} `json:"ItemUnitCbdContent"`
	ItemUnitCbdContentUnitOfMeasureName     interface{} `json:"ItemUnitCbdContentUnitOfMeasureName"`
	ItemUnitCbdContentDose                  interface{} `json:"ItemUnitCbdContentDose"`
	ItemUnitCbdContentDoseUnitOfMeasureName interface{} `json:"ItemUnitCbdContentDoseUnitOfMeasureName"`
	ItemUnitThcPercent                      interface{} `json:"ItemUnitThcPercent"`
	ItemUnitThcContent                      interface{} `json:"ItemUnitThcContent"`
	ItemUnitThcContentUnitOfMeasureName     interface{} `json:"ItemUnitThcContentUnitOfMeasureName"`
	ItemUnitThcContentDose                  interface{} `json:"ItemUnitThcContentDose"`
	ItemUnitThcContentDoseUnitOfMeasureName interface{} `json:"ItemUnitThcContentDoseUnitOfMeasureName"`
	ItemUnitVolume                          interface{} `json:"ItemUnitVolume"`
	ItemUnitVolumeUnitOfMeasureName         interface{} `json:"ItemUnitVolumeUnitOfMeasureName"`
	ItemUnitWeight                          interface{} `json:"ItemUnitWeight"`
	ItemUnitWeightUnitOfMeasureName         interface{} `json:"ItemUnitWeightUnitOfMeasureName"`
	ItemServingSize                         interface{} `json:"ItemServingSize"`
	ItemSupplyDurationDays                  interface{} `json:"ItemSupplyDurationDays"`
	ItemUnitQuantity                        interface{} `json:"ItemUnitQuantity"`
	ItemUnitQuantityUnitOfMeasureName       interface{} `json:"ItemUnitQuantityUnitOfMeasureName"`
	LabTestingState                         string      `json:"LabTestingState"`
	ProductionBatchNumber                   interface{} `json:"ProductionBatchNumber"`
	IsTradeSample                           bool        `json:"IsTradeSample"`
	IsTradeSamplePersistent                 bool        `json:"IsTradeSamplePersistent"`
	SourcePackageIsTradeSample              bool        `json:"SourcePackageIsTradeSample"`
	IsDonation                              bool        `json:"IsDonation"`
	SourcePackageIsDonation                 bool        `json:"SourcePackageIsDonation"`
	IsTestingSample                         bool        `json:"IsTestingSample"`
	ProductRequiresRemediation              bool        `json:"ProductRequiresRemediation"`
	ContainsRemediatedProduct               bool        `json:"ContainsRemediatedProduct"`
	RemediationDate                         interface{} `json:"RemediationDate"`
	ShipmentPackageState                    string      `json:"ShipmentPackageState"`
	ShippedQuantity                         float64     `json:"ShippedQuantity"`
	ShippedUnitOfMeasureName                string      `json:"ShippedUnitOfMeasureName"`
	GrossUnitOfWeightName                   interface{} `json:"GrossUnitOfWeightName"`
	ReceivedQuantity                        float64     `json:"ReceivedQuantity"`
	ReceivedUnitOfMeasureName               string      `json:"ReceivedUnitOfMeasureName"`
}

type TransferDeliveryRequiredLabTestPackage

type TransferDeliveryRequiredLabTestPackage struct {
	PackageID        int    `json:"PackageId"`
	LabTestBatchID   int    `json:"LabTestBatchId"`
	LabTestBatchName string `json:"LabTestBatchName"`
}

type TransferDeliveryTransporter

type TransferDeliveryTransporter struct {
	TransporterFacilityLicenseNumber string `json:"TransporterFacilityLicenseNumber"`
	TransporterFacilityName          string `json:"TransporterFacilityName"`
	TransporterDirection             int    `json:"TransporterDirection"`
}

type TransferDeliveryTransporterDetails

type TransferDeliveryTransporterDetails struct {
	DriverName                      string      `json:"DriverName"`
	DriverOccupationalLicenseNumber string      `json:"DriverOccupationalLicenseNumber"`
	DriverVehicleLicenseNumber      string      `json:"DriverVehicleLicenseNumber"`
	VehicleMake                     string      `json:"VehicleMake"`
	VehicleModel                    string      `json:"VehicleModel"`
	VehicleLicensePlateNumber       string      `json:"VehicleLicensePlateNumber"`
	ActualDriverStartDateTime       interface{} `json:"ActualDriverStartDateTime"`
}

type TransferDeliveryWholesalePackage

type TransferDeliveryWholesalePackage struct {
	PackageID              int         `json:"PackageId"`
	PackageLabel           string      `json:"PackageLabel"`
	ShipperWholesalePrice  interface{} `json:"ShipperWholesalePrice"`
	ReceiverWholesalePrice interface{} `json:"ReceiverWholesalePrice"`
}

type TransferService

type TransferService struct {
	// contains filtered or unexported fields
}

func NewTransferService

func NewTransferService(sling *sling.Sling, config *Config) *TransferService

func (*TransferService) Deliveries

func (s *TransferService) Deliveries(userApiKey string) ([]TransferDelivery, *http.Response, error)

func (*TransferService) DeliveryPackageStates

func (s *TransferService) DeliveryPackageStates(userApiKey string) ([]string, *http.Response, error)

func (*TransferService) DeliveryPackages

func (s *TransferService) DeliveryPackages(userApiKey string) ([]TransferDeliveryPackage, *http.Response, error)

func (*TransferService) DeliveryRequiredLabTestPackage

func (s *TransferService) DeliveryRequiredLabTestPackage(userApiKey string) ([]TransferDeliveryRequiredLabTestPackage, *http.Response, error)

func (*TransferService) DeliveryTransporterDetails

func (s *TransferService) DeliveryTransporterDetails(userApiKey string) ([]TransferDeliveryTransporterDetails, *http.Response, error)

func (*TransferService) DeliveryTransporters

func (s *TransferService) DeliveryTransporters(userApiKey string) ([]TransferDeliveryTransporter, *http.Response, error)

func (*TransferService) DeliveryWholesalePackages

func (s *TransferService) DeliveryWholesalePackages(userApiKey string) ([]TransferDeliveryWholesalePackage, *http.Response, error)

func (*TransferService) List

func (s *TransferService) List(userApiKey string) ([]Transfer, *http.Response, error)

func (*TransferService) Types

func (s *TransferService) Types(userApiKey string) ([]TransferType, *http.Response, error)

type TransferType

type TransferType struct {
	Name                           string `json:"Name"`
	ForLicensedShipments           bool   `json:"ForLicensedShipments"`
	ForExternalIncomingShipments   bool   `json:"ForExternalIncomingShipments"`
	ForExternalOutgoingShipments   bool   `json:"ForExternalOutgoingShipments"`
	RequiresDestinationGrossWeight bool   `json:"RequiresDestinationGrossWeight"`
	RequiresPackagesGrossWeight    bool   `json:"RequiresPackagesGrossWeight"`
}

type UnitOfMeasure

type UnitOfMeasure struct {
	QuantityType string `json:"QuantityType"`
	Name         string `json:"Name"`
	Abbreviation string `json:"Abbreviation"`
}

type UnitsOfMeasureService

type UnitsOfMeasureService struct {
	// contains filtered or unexported fields
}

func NewUnitsOfMeasureService

func NewUnitsOfMeasureService(sling *sling.Sling, config *Config) *UnitsOfMeasureService

func (*UnitsOfMeasureService) List

func (s *UnitsOfMeasureService) List(userApiKey string) ([]UnitOfMeasure, *http.Response, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL