nats-app/internal/domains/sensors/service.go

56 lines
849 B
Go

package sensors
import (
"log/slog"
"time"
)
type Service struct {
repo Repository
}
func NewService(repo Repository) *Service {
return &Service{
repo: repo,
}
}
func (s *Service) RegisterSensor(sensor Sensor) error {
err := s.repo.CreateSensor(sensor)
if err != nil {
slog.Error("error registering sensor", "error", err)
return err
}
return nil
}
func (s *Service) UpdateSensor(sensor Sensor) error {
s.repo.UpdateSensor(sensor)
return nil
}
func (s *Service) GetSensor(sensorID string) (Sensor, error) {
s.repo.ReadSensor(sensorID)
return Sensor{}, nil
}
func (s *Service) GetValues(sensorID string, from, to time.Time) (Sensor, error) {
s.repo.ReadSensorValues(sensorID, from, to)
return Sensor{}, nil
}
func (s *Service) ListSensors() ([]Sensor, error) {
s.repo.ReadAllSensors()
return []Sensor{}, nil
}