add service
All checks were successful
Deploy Smart Search Backend Test / deploy (push) Successful in 2m55s

This commit is contained in:
vallyenfail
2026-01-19 17:20:21 +03:00
parent b56b833680
commit 33b70d1ee4
10 changed files with 117 additions and 83 deletions

View File

@@ -2,9 +2,10 @@ package worker
import (
"context"
"log"
"time"
"go.uber.org/zap"
"git.techease.ru/Smart-search/smart-search-back/internal/repository"
)
@@ -13,13 +14,15 @@ type InviteCleaner struct {
ctx context.Context
ticker *time.Ticker
done chan bool
logger *zap.Logger
}
func NewInviteCleaner(ctx context.Context, inviteRepo repository.InviteRepository) *InviteCleaner {
func NewInviteCleaner(ctx context.Context, inviteRepo repository.InviteRepository, logger *zap.Logger) *InviteCleaner {
return &InviteCleaner{
inviteRepo: inviteRepo,
ctx: ctx,
done: make(chan bool),
logger: logger,
}
}
@@ -36,13 +39,13 @@ func (w *InviteCleaner) Start() {
case <-w.done:
return
case <-w.ctx.Done():
log.Println("Invite cleaner context cancelled, stopping worker")
w.logger.Info("Invite cleaner context cancelled, stopping worker")
return
}
}
}()
log.Println("Invite cleaner worker started (runs every 6 hours)")
w.logger.Info("Invite cleaner worker started (runs every 6 hours)")
}
func (w *InviteCleaner) Stop() {
@@ -53,17 +56,17 @@ func (w *InviteCleaner) Stop() {
case w.done <- true:
default:
}
log.Println("Invite cleaner worker stopped")
w.logger.Info("Invite cleaner worker stopped")
}
func (w *InviteCleaner) deactivateExpiredInvites() {
count, err := w.inviteRepo.DeactivateExpired(w.ctx)
if err != nil {
log.Printf("Error deactivating expired invites: %v", err)
w.logger.Error("Error deactivating expired invites", zap.Error(err))
return
}
if count > 0 {
log.Printf("Deactivated %d expired invite codes", count)
w.logger.Info("Deactivated expired invite codes", zap.Int("count", count))
}
}