codeword/internal/repository/promocode_repository.go

26 lines
557 B
Go
Raw Normal View History

2024-01-11 16:29:53 +00:00
package repository
import (
"codeword/internal/models"
"context"
"go.mongodb.org/mongo-driver/mongo"
"time"
)
type PromoCodeRepository struct {
mdb *mongo.Collection
}
func NewPromoCodeRepository(mdb *mongo.Collection) *PromoCodeRepository {
return &PromoCodeRepository{mdb: mdb}
}
func (r *PromoCodeRepository) CreatePromoCode(ctx context.Context, promoCode *models.PromoCode) (*models.PromoCode, error) {
promoCode.CreatedAt = time.Now()
_, err := r.mdb.InsertOne(ctx, promoCode)
if err != nil {
return nil, err
}
return promoCode, nil
}