41 lines
1.2 KiB
Go
41 lines
1.2 KiB
Go
package service
|
|
|
|
import (
|
|
"context"
|
|
"go.uber.org/zap"
|
|
"penahub.gitlab.yandexcloud.net/backend/quiz/common.git/model"
|
|
)
|
|
|
|
func (s *Service) DeletingUserUtm(ctx context.Context, request *model.ListDeleteUTMIDsReq) error {
|
|
err := s.repository.AmoRepo.DeletingUserUtm(ctx, request)
|
|
if err != nil {
|
|
s.logger.Error("error deleting user utm", zap.Error(err))
|
|
return err
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (s *Service) SavingUserUtm(ctx context.Context, request *model.SaveUserListUTMReq, accountID string, quizID int) (*model.ListSavedIDUTMResp, error) {
|
|
var utms []model.UTM
|
|
for _, utm := range request.Utms {
|
|
utm.Quizid = int32(quizID)
|
|
utms = append(utms, utm)
|
|
}
|
|
|
|
response, err := s.repository.AmoRepo.SavingUserUtm(ctx, utms, accountID)
|
|
if err != nil {
|
|
s.logger.Error("error saving user utm", zap.Error(err))
|
|
return nil, err
|
|
}
|
|
return response, nil
|
|
}
|
|
|
|
func (s *Service) GettingUserUtm(ctx context.Context, request *model.PaginationReq, accountID string, quizID int) (*model.GetListUserUTMResp, error) {
|
|
response, err := s.repository.AmoRepo.GettingUserUtm(ctx, request, accountID, quizID)
|
|
if err != nil {
|
|
s.logger.Error("error getting user utm with pagination", zap.Error(err))
|
|
return nil, err
|
|
}
|
|
return response, nil
|
|
}
|