當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Product.ProductKey方法代碼示例

本文整理匯總了Golang中github.com/PandoCloud/pando-cloud/pkg/models.Product.ProductKey方法的典型用法代碼示例。如果您正苦於以下問題:Golang Product.ProductKey方法的具體用法?Golang Product.ProductKey怎麽用?Golang Product.ProductKey使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/PandoCloud/pando-cloud/pkg/models.Product的用法示例。


在下文中一共展示了Product.ProductKey方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: SaveProduct

// SaveProduct will create a product if the ID field is not initialized
// if ID field is initialized, it will update the conresponding product.
func (r *Registry) SaveProduct(product *models.Product, reply *models.Product) error {
	db, err := getDB()
	if err != nil {
		return err
	}

	err = db.Save(product).Error
	if err != nil {
		return err
	}

	key, err := r.keygen.GenRandomKey(int64(product.ID))
	if err != nil {
		return err
	}

	product.ProductKey = key

	err = db.Save(product).Error
	if err != nil {
		return err
	}

	reply.ID = product.ID
	reply.ProductName = product.ProductName
	reply.ProductDescription = product.ProductDescription
	reply.ProductKey = product.ProductKey
	reply.ProductConfig = product.ProductConfig
	reply.CreatedAt = product.CreatedAt
	reply.UpdatedAt = product.UpdatedAt

	return nil
}
開發者ID:zhouhoo,項目名稱:pando-cloud,代碼行數:35,代碼來源:registry.go

示例2: SaveProduct

// SaveProduct will create a product if the ID field is not initialized
// if ID field is initialized, it will update the conresponding product.
func (r *Registry) SaveProduct(product *models.Product, reply *models.Product) error {
	db, err := getDB()
	if err != nil {
		return err
	}

	err = db.Save(product).Error
	if err != nil {
		return err
	}

	key, err := r.keygen.GenRandomKey(int64(product.ID))
	if err != nil {
		return err
	}

	product.ProductKey = key

	err = db.Save(product).Error
	if err != nil {
		return err
	}

	reply = product
	return nil
}
開發者ID:oskycar,項目名稱:pando-cloud,代碼行數:28,代碼來源:registry.go

示例3: setProduct

func setProduct(target *models.Product, src *models.Product) {
	target.ID = src.ID
	target.ProductName = src.ProductName
	target.ProductDescription = src.ProductDescription
	target.ProductKey = src.ProductKey
	target.ProductConfig = src.ProductConfig
	target.CreatedAt = src.CreatedAt
	target.UpdatedAt = src.UpdatedAt
}
開發者ID:lg0491986,項目名稱:pando-cloud,代碼行數:9,代碼來源:registry.go

示例4: SaveProduct

// SaveProduct will create a product if the ID field is not initialized
// if ID field is initialized, it will update the conresponding product.
func (r *Registry) SaveProduct(product *models.Product, reply *models.Product) error {
	db, err := getDB()
	if err != nil {
		return err
	}

	if product.ID == 0 {
		// create product
		err = db.Save(product).Error
		if err != nil {
			return err
		}

		key, err := r.keygen.GenRandomKey(int64(product.ID))
		if err != nil {
			return err
		}

		product.ProductKey = key
	}

	err = db.Save(product).Error
	if err != nil {
		return err
	}

	cache := getCache()
	cacheKey := fmt.Sprintf("Product:%v", product.ID)
	if _, ok := cache.Get(cacheKey); ok {
		cache.Delete(cacheKey)
	}

	setProduct(reply, product)

	return nil
}
開發者ID:lg0491986,項目名稱:pando-cloud,代碼行數:38,代碼來源:registry.go


注:本文中的github.com/PandoCloud/pando-cloud/pkg/models.Product.ProductKey方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。