// Code generated by go-swagger; DO NOT EDIT.

// All Code Copyright(c) 2018-2020 by Taxnexus, Inc.
// All rights reserved worldwide.
// Proprietary product; unlicensed use is not allowed

package metrc_gw_models

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"github.com/go-openapi/strfmt"
	"github.com/go-openapi/swag"
)

// Item item
//
// swagger:model Item
type Item struct {

	// administration method
	AdministrationMethod string `json:"AdministrationMethod,omitempty"`

	// approval status
	ApprovalStatus string `json:"ApprovalStatus,omitempty"`

	// default lab testing state
	DefaultLabTestingState string `json:"DefaultLabTestingState,omitempty"`

	// Id
	ID float64 `json:"Id,omitempty"`

	// ingredients
	Ingredients string `json:"Ingredients,omitempty"`

	// name
	Name string `json:"Name,omitempty"`

	// product category name
	ProductCategoryName string `json:"ProductCategoryName,omitempty"`

	// product category type
	ProductCategoryType string `json:"ProductCategoryType,omitempty"`

	// quantity type
	QuantityType string `json:"QuantityType,omitempty"`

	// serving size
	ServingSize string `json:"ServingSize,omitempty"`

	// unit of measure name
	UnitOfMeasureName string `json:"UnitOfMeasureName,omitempty"`

	// unit weight
	UnitWeight float64 `json:"UnitWeight,omitempty"`

	// unit weight unit of measure name
	UnitWeightUnitOfMeasureName string `json:"UnitWeightUnitOfMeasureName,omitempty"`
}

// Validate validates this item
func (m *Item) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *Item) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *Item) UnmarshalBinary(b []byte) error {
	var res Item
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
