Files
smart-search-back/internal/service/interfaces.go
vallyenfail 6d238a96ec
Some checks failed
Deploy Smart Search Backend Test / deploy (push) Has been cancelled
add service
2026-01-19 16:24:33 +03:00

40 lines
1.5 KiB
Go

package service
import (
"context"
"git.techease.ru/Smart-search/smart-search-back/internal/model"
"github.com/google/uuid"
)
type AuthService interface {
Register(ctx context.Context, email, password, name, phone string, inviteCode int64, ip, userAgent string) (accessToken, refreshToken string, err error)
Login(ctx context.Context, email, password, ip, userAgent string) (accessToken, refreshToken string, err error)
Refresh(ctx context.Context, refreshToken string) (string, error)
Validate(ctx context.Context, accessToken string) (int, error)
Logout(ctx context.Context, accessToken string) error
}
type UserService interface {
GetInfo(ctx context.Context, userID int) (*UserInfo, error)
GetBalance(ctx context.Context, userID int) (float64, error)
GetStatistics(ctx context.Context, userID int) (*Statistics, error)
}
type InviteService interface {
Generate(ctx context.Context, userID, maxUses, ttlDays int) (*model.InviteCode, error)
GetInfo(ctx context.Context, code int64) (*model.InviteCode, error)
}
type RequestService interface {
CreateTZ(ctx context.Context, userID int, requestTxt string) (uuid.UUID, string, error)
ApproveTZ(ctx context.Context, requestID uuid.UUID, tzText string, userID int) ([]*model.Supplier, error)
GetMailingList(ctx context.Context, userID int) ([]*model.Request, error)
GetMailingListByID(ctx context.Context, requestID uuid.UUID, userID int) (*model.RequestDetail, error)
}
type SupplierService interface {
ExportExcel(ctx context.Context, requestID uuid.UUID, userID int) ([]byte, error)
}