All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m25s
32 lines
1.0 KiB
Go
32 lines
1.0 KiB
Go
package task
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/hibiken/asynq"
|
|
"go.uber.org/zap"
|
|
|
|
packageexpiryapp "github.com/break/junhong_cmp_fiber/internal/application/packageexpiry"
|
|
)
|
|
|
|
// PackageExpiryReminderHandler 处理每日套餐临期提醒扫描任务。
|
|
type PackageExpiryReminderHandler struct {
|
|
service *packageexpiryapp.ReminderService
|
|
logger *zap.Logger
|
|
}
|
|
|
|
// NewPackageExpiryReminderHandler 创建每日套餐临期提醒扫描任务处理器。
|
|
func NewPackageExpiryReminderHandler(service *packageexpiryapp.ReminderService, logger *zap.Logger) *PackageExpiryReminderHandler {
|
|
return &PackageExpiryReminderHandler{service: service, logger: logger}
|
|
}
|
|
|
|
// Handle 扫描 0 至 15 天临期资产并发布站内通知。
|
|
func (h *PackageExpiryReminderHandler) Handle(ctx context.Context, _ *asynq.Task) error {
|
|
h.logger.Info("开始执行每日套餐临期提醒扫描")
|
|
if err := h.service.Run(ctx); err != nil {
|
|
h.logger.Error("每日套餐临期提醒扫描失败", zap.Error(err))
|
|
return err
|
|
}
|
|
return nil
|
|
}
|