func NewItem(name, desc string, qty int) (*Item, error) {
	id, err := util.StringToHashID(strings.ToLower(name))
	if err != nil {
		return nil, err
	}
	return &Item{
		ID:   id,
		Name: name,
		Desc: desc,
		Qty:  qty,
	}, nil
}
NewItem creates a new item where the ID becomes the HashID of the lowercase name.
package item
import (
	"context"
	"encoding/json"
	"fmt"
	"strconv"
	"strings"
	"github.com/obitech/micro-obs/util"
	ot "github.com/opentracing/opentracing-go"
	"github.com/pkg/errors"
)
type Item struct {
	Name string `json:"name"`
	ID   string `json:"id"`
	Desc string `json:"desc"`
	Qty  int    `json:"qty"`
}
func (i *Item) String() string {
	return fmt.Sprintf("Name:%s ID:%s Desc:%s Qty:%d", i.Name, i.ID, i.Desc, i.Qty)
}