package model import ( "kng_feed_api/database" ) type Product struct { CodeUT10 string `gorm:"size:6;not null; unique; index; primaryKey" json:"code_ut10"` Name string `gorm:"size:100" json:"name"` Manufacturer string `gorm:"size:50" json:"manufacturer"` ArticleNumber string `gorm:"size:50" json:"article_number"` Brand string `gorm:"size:100" json:"brand"` Unit string `gorm:"size:50" json:"unit"` GroupLimit string `gorm:"size:2" json:"group_limit"` GroupPrice string `gorm:"size:50" json:"group_price"` NumberCatalog string `gorm:"size:50" json:"number_catalog"` NumberDrawing string `gorm:"size:50" json:"number_drawing"` NumberBrand string `gorm:"size:10" json:"number_brand"` NumberPrefix string `gorm:"size:4" json:"number_prefix"` NumberArticle string `gorm:"size:25" json:"number_article"` NumberSuffix string `gorm:"size:3" json:"number_suffix"` CategoryId string `gorm:"size:5" json:"categoryId"` } type ProductsArray struct { Products []Product `binding:"dive" json:"products"` } func GetAllProducts() ([]Product, error) { var products []Product result := database.Database.Find(&products) if result.Error != nil { return products, result.Error } return products, nil } func GetProductsCount() (int, error) { var products []Product result := database.Database.Find(&products) if result.Error != nil { return 0, result.Error } return int(result.RowsAffected), nil } func (product *Product) Save() (*Product, error) { err := database.Database.Save(&product).Error if err != nil { return &Product{}, err } return product, nil }