codeword/internal/service/promocode.go
2024-11-15 14:21:04 +03:00

78 lines
1.8 KiB
Go

package service
import (
"codeword/internal/models"
"codeword/internal/repository"
"context"
)
type PromocodeService struct {
PromocodeRepository *repository.PromocodeRepository
}
func NewPromocodeService(repository *repository.PromocodeRepository) *PromocodeService {
return &PromocodeService{
PromocodeRepository: repository,
}
}
func (s *PromocodeService) Activate(ctx context.Context, request *models.ActivateReq) (*models.ActivateResp, error) {
response, err := s.PromocodeRepository.Activate(ctx, request)
if err != nil {
return nil, err
}
return response, nil
}
func (s *PromocodeService) Getlist(ctx context.Context, request *models.GetPromoCodesListReq) (*models.GetPromoCodesListResp, error) {
response, err := s.PromocodeRepository.Getlist(ctx, request)
if err != nil {
return nil, err
}
return response, nil
}
func (s *PromocodeService) Delete(ctx context.Context) error {
err := s.PromocodeRepository.Delete(ctx)
if err != nil {
return err
}
return nil
}
func (s *PromocodeService) Createpromocode(ctx context.Context, request *models.PromoCodeReq) (*models.PromoCode, error) {
response, err := s.PromocodeRepository.Createpromocode(ctx, request)
if err != nil {
return nil, err
}
return response, nil
}
func (s *PromocodeService) Editpromocode(ctx context.Context, request *models.EditPromoCodeReq) (*models.PromoCode, error) {
response, err := s.PromocodeRepository.Editpromocode(ctx, request)
if err != nil {
return nil, err
}
return response, nil
}
func (s *PromocodeService) Createfastlink(ctx context.Context, request *models.CreateFastLinkReq) (*models.CreateFastLinkResp, error) {
response, err := s.PromocodeRepository.Createfastlink(ctx, request)
if err != nil {
return nil, err
}
return response, nil
}