codeword/internal/repository/promocode.go

75 lines
1.6 KiB
Go
Raw Normal View History

2024-03-03 20:18:42 +00:00
package repository
import (
"codeword/internal/models"
"context"
2024-11-15 11:21:04 +00:00
"database/sql"
2024-03-03 20:18:42 +00:00
)
type PromocodeRepository struct {
2024-11-15 11:21:04 +00:00
queries *sqlcgen.Queries
pool *sql.DB
2024-03-03 20:18:42 +00:00
}
2024-11-15 11:21:04 +00:00
type PromocodeDeps struct {
Queries *sqlcgen.Queries
Pool *sql.DB
2024-03-03 20:18:42 +00:00
}
2024-11-15 11:21:04 +00:00
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) {
2024-03-03 20:18:42 +00:00
//TODO:IMPLEMENT ME
2024-11-15 11:21:04 +00:00
return &models.ActivateResp{}, nil
2024-03-03 20:18:42 +00:00
}
2024-11-15 11:21:04 +00:00
func (r *PromocodeRepository) Getlist(ctx context.Context, request *models.GetPromoCodesListReq) (*models.GetPromoCodesListResp, error) {
2024-03-03 20:18:42 +00:00
2024-11-15 11:21:04 +00:00
rows, err := r.queries.Getlist(ctx, sqlcgen.GetlistParams{
Page: request.Page,
Limit: request.Size,
})
if err != nil {
return nil, err
}
return &models.GetPromoCodesListResp{}, nil
2024-03-03 20:18:42 +00:00
}
2024-11-15 11:21:04 +00:00
func (r *PromocodeRepository) Delete(ctx context.Context) error {
2024-03-03 20:18:42 +00:00
//TODO:IMPLEMENT ME
2024-11-15 11:21:04 +00:00
return nil
2024-03-03 20:18:42 +00:00
}
2024-11-15 11:21:04 +00:00
func (r *PromocodeRepository) Createpromocode(ctx context.Context, request *models.PromoCodeReq) (*models.PromoCode, error) {
2024-03-03 20:18:42 +00:00
//TODO:IMPLEMENT ME
2024-11-15 11:21:04 +00:00
return &models.PromoCode{}, nil
2024-03-03 20:18:42 +00:00
}
2024-11-15 11:21:04 +00:00
func (r *PromocodeRepository) Editpromocode(ctx context.Context, request *models.EditPromoCodeReq) (*models.PromoCode, error) {
2024-03-03 20:18:42 +00:00
//TODO:IMPLEMENT ME
2024-11-15 11:21:04 +00:00
return &models.PromoCode{}, nil
2024-03-03 20:18:42 +00:00
}
2024-11-15 11:21:04 +00:00
func (r *PromocodeRepository) Createfastlink(ctx context.Context, request *models.CreateFastLinkReq) (*models.CreateFastLinkResp, error) {
2024-03-03 20:18:42 +00:00
//TODO:IMPLEMENT ME
2024-11-15 11:21:04 +00:00
return &models.CreateFastLinkResp{}, nil
2024-03-03 20:18:42 +00:00
}