Files

34 lines
727 B
Go

package repo
import (
"gorm.io/gorm"
"work_cation/models"
)
type baseCardRepo struct{}
var BaseCard *baseCardRepo
func (*baseCardRepo) FindAll(db *gorm.DB) []models.BaseCard {
var cards []models.BaseCard
db.Find(&cards)
return cards
}
func (*baseCardRepo) Find(db *gorm.DB, uuid string) models.BaseCard {
var card models.BaseCard
db.Where("uuid = ?", uuid).Find(&card)
return card
}
func (*baseCardRepo) CreateOrSave(db *gorm.DB, baseCard *models.BaseCard) error {
var card models.BaseCard
if err := db.Where("uuid = ?", baseCard.UUID).Find(&card).Error; err != nil {
return err
}
if card.UUID != "" {
return db.Where("uuid = ?", baseCard.UUID).Save(baseCard).Error
}
return db.Create(baseCard).Error
}