75 lines
1.6 KiB
Go
75 lines
1.6 KiB
Go
package repository
|
|
|
|
import (
|
|
"codeword/internal/models"
|
|
"context"
|
|
"database/sql"
|
|
)
|
|
|
|
type PromocodeRepository struct {
|
|
queries *sqlcgen.Queries
|
|
pool *sql.DB
|
|
}
|
|
|
|
type PromocodeDeps struct {
|
|
Queries *sqlcgen.Queries
|
|
Pool *sql.DB
|
|
}
|
|
|
|
func NewPromocodeRepository(deps PromocodeDeps) *PromocodeRepository {
|
|
return &PromocodeRepository{
|
|
queries: deps.Queries,
|
|
pool: deps.Pool,
|
|
}
|
|
}
|
|
|
|
func (r *PromocodeRepository) Activate(ctx context.Context, request *models.ActivateReq) (*models.ActivateResp, error) {
|
|
//TODO:IMPLEMENT ME
|
|
|
|
return &models.ActivateResp{}, nil
|
|
|
|
}
|
|
|
|
func (r *PromocodeRepository) Getlist(ctx context.Context, request *models.GetPromoCodesListReq) (*models.GetPromoCodesListResp, error) {
|
|
|
|
rows, err := r.queries.Getlist(ctx, sqlcgen.GetlistParams{
|
|
Page: request.Page,
|
|
Limit: request.Size,
|
|
})
|
|
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return &models.GetPromoCodesListResp{}, nil
|
|
|
|
}
|
|
|
|
func (r *PromocodeRepository) Delete(ctx context.Context) error {
|
|
//TODO:IMPLEMENT ME
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
func (r *PromocodeRepository) Createpromocode(ctx context.Context, request *models.PromoCodeReq) (*models.PromoCode, error) {
|
|
//TODO:IMPLEMENT ME
|
|
|
|
return &models.PromoCode{}, nil
|
|
|
|
}
|
|
|
|
func (r *PromocodeRepository) Editpromocode(ctx context.Context, request *models.EditPromoCodeReq) (*models.PromoCode, error) {
|
|
//TODO:IMPLEMENT ME
|
|
|
|
return &models.PromoCode{}, nil
|
|
|
|
}
|
|
|
|
func (r *PromocodeRepository) Createfastlink(ctx context.Context, request *models.CreateFastLinkReq) (*models.CreateFastLinkResp, error) {
|
|
//TODO:IMPLEMENT ME
|
|
|
|
return &models.CreateFastLinkResp{}, nil
|
|
|
|
}
|