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 }