实现忽略告警和取消忽略告警接口及功能

This commit is contained in:
2025-11-09 22:34:05 +08:00
parent 84fe20396b
commit b94aa6137c
11 changed files with 292 additions and 16 deletions

View File

@@ -7,6 +7,7 @@ import (
"git.huangwc.com/pig/pig-farm-controller/internal/app/service"
"git.huangwc.com/pig/pig-farm-controller/internal/app/webhook"
"git.huangwc.com/pig/pig-farm-controller/internal/domain/alarm"
"git.huangwc.com/pig/pig-farm-controller/internal/domain/device"
domain_notify "git.huangwc.com/pig/pig-farm-controller/internal/domain/notify"
"git.huangwc.com/pig/pig-farm-controller/internal/domain/pig"
@@ -126,6 +127,7 @@ type DomainServices struct {
analysisPlanTaskManager plan.AnalysisPlanTaskManager
planService plan.Service
notifyService domain_notify.Service
alarmService alarm.AlarmService
}
// initDomainServices 初始化所有的领域服务。
@@ -196,6 +198,13 @@ func initDomainServices(ctx context.Context, cfg *config.Config, infra *Infrastr
taskFactory,
)
// 告警服务
alarmService := alarm.NewAlarmService(
logs.AddCompName(baseCtx, "AlarmService"),
infra.repos.alarmRepo,
infra.repos.unitOfWork,
)
return &DomainServices{
pigPenTransferManager: pigPenTransferManager,
pigTradeManager: pigTradeManager,
@@ -207,18 +216,20 @@ func initDomainServices(ctx context.Context, cfg *config.Config, infra *Infrastr
planExecutionManager: planExecutionManager,
planService: planService,
notifyService: notifyService,
alarmService: alarmService,
}, nil
}
// AppServices 聚合了所有的应用服务实例。
type AppServices struct {
pigFarmService service.PigFarmService
pigBatchService service.PigBatchService
monitorService service.MonitorService
deviceService service.DeviceService
planService service.PlanService
userService service.UserService
auditService service.AuditService
pigFarmService service.PigFarmService
pigBatchService service.PigBatchService
monitorService service.MonitorService
deviceService service.DeviceService
planService service.PlanService
userService service.UserService
auditService service.AuditService
thresholdAlarmService service.ThresholdAlarmService
}
// initAppServices 初始化所有的应用服务。
@@ -254,14 +265,21 @@ func initAppServices(ctx context.Context, infra *Infrastructure, domainServices
planService := service.NewPlanService(logs.AddCompName(baseCtx, "AppPlanService"), domainServices.planService)
userService := service.NewUserService(logs.AddCompName(baseCtx, "UserService"), infra.repos.userRepo, infra.tokenGenerator, domainServices.notifyService)
// 初始化阈值告警服务
thresholdAlarmService := service.NewThresholdAlarmService(
logs.AddCompName(baseCtx, "ThresholdAlarmService"),
domainServices.alarmService,
)
return &AppServices{
pigFarmService: pigFarmService,
pigBatchService: pigBatchService,
monitorService: monitorService,
deviceService: deviceService,
auditService: auditService,
planService: planService,
userService: userService,
pigFarmService: pigFarmService,
pigBatchService: pigBatchService,
monitorService: monitorService,
deviceService: deviceService,
auditService: auditService,
planService: planService,
userService: userService,
thresholdAlarmService: thresholdAlarmService,
}
}