本文整理汇总了Golang中github.com/PandoCloud/pando-cloud/pkg/models.Vendor类的典型用法代码示例。如果您正苦于以下问题:Golang Vendor类的具体用法?Golang Vendor怎么用?Golang Vendor使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Vendor类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: addVendor
func addVendor() error {
args := models.Vendor{}
reader := bufio.NewReader(os.Stdin)
fmt.Printf("vendor name: ")
name, err := reader.ReadString('\n')
if err != nil {
return err
}
args.VendorName = strings.Replace(name, "\n", "", -1)
fmt.Printf("vendor description: ")
desc, err := reader.ReadString('\n')
if err != nil {
return err
}
args.VendorDescription = strings.Replace(desc, "\n", "", -1)
reply := &models.Vendor{}
err = server.RPCCallByName("registry", "Registry.SaveVendor", &args, reply)
if err != nil {
return err
}
fmt.Println("=======> vendor created successfully:")
printStruct(reply)
fmt.Println("=======")
return nil
}
示例2: SaveVendor
// SaveVendor will create a vendor if the ID field is not initialized
// if ID field is initialized, it will update the conresponding vendor.
func (r *Registry) SaveVendor(vendor *models.Vendor, reply *models.Vendor) error {
db, err := getDB()
if err != nil {
return err
}
err = db.Save(vendor).Error
if err != nil {
return err
}
key, err := r.keygen.GenRandomKey(int64(vendor.ID))
if err != nil {
return err
}
vendor.VendorKey = key
err = db.Save(vendor).Error
if err != nil {
return err
}
reply = vendor
return nil
}
示例3: SaveVendor
// SaveVendor will create a vendor if the ID field is not initialized
// if ID field is initialized, it will update the conresponding vendor.
func (r *Registry) SaveVendor(vendor *models.Vendor, reply *models.Vendor) error {
db, err := getDB()
if err != nil {
return err
}
err = db.Save(vendor).Error
if err != nil {
return err
}
key, err := r.keygen.GenRandomKey(int64(vendor.ID))
if err != nil {
return err
}
vendor.VendorKey = key
err = db.Save(vendor).Error
if err != nil {
return err
}
reply.ID = vendor.ID
reply.VendorName = vendor.VendorName
reply.VendorDescription = vendor.VendorDescription
reply.VendorKey = vendor.VendorKey
reply.CreatedAt = vendor.CreatedAt
reply.UpdatedAt = vendor.UpdatedAt
return nil
}
示例4: setVendor
func setVendor(target *models.Vendor, src *models.Vendor) {
target.ID = src.ID
target.VendorName = src.VendorName
target.VendorDescription = src.VendorDescription
target.VendorKey = src.VendorKey
target.CreatedAt = src.CreatedAt
target.UpdatedAt = src.UpdatedAt
}
示例5: SaveVendor
// SaveVendor will create a vendor if the ID field is not initialized
// if ID field is initialized, it will update the conresponding vendor.
func (r *Registry) SaveVendor(vendor *models.Vendor, reply *models.Vendor) error {
db, err := getDB()
if err != nil {
return err
}
if vendor.ID == 0 {
// if ID field is not initialized, will generate key first
err = db.Save(vendor).Error
if err != nil {
return err
}
key, err := r.keygen.GenRandomKey(int64(vendor.ID))
if err != nil {
return err
}
vendor.VendorKey = key
}
err = db.Save(vendor).Error
if err != nil {
return err
}
cache := getCache()
cacheKey := fmt.Sprintf("Vendor:%v", vendor.ID)
if _, ok := cache.Get(cacheKey); ok {
cache.Delete(cacheKey)
}
setVendor(reply, vendor)
return nil
}