package repositories import ( "app/models" "gorm.io/gorm" ) type Carts interface { Create(*models.Carts) error GetCart(id uint) (*models.Carts, error) } type Carts_repository struct { DB *gorm.DB } func newCartsRepository(db *gorm.DB) Carts { return &Carts_repository{DB: db} } func (r *Carts_repository) Create(carts *models.Carts) error { if err := r.DB.Create(&carts).Error; err != nil { return err } return nil } func (r *Carts_repository) GetCart(id uint) (*models.Carts, error) { var cart models.Carts if err := r.DB.Where("is_removed = ?", false).Where("user_id = ?", id).First(&cart).Error; err != nil { return nil, err } return &cart, nil }