using ProductionLineMonitor.Application.Services.FaultService.Dtos; using ProductionLineMonitor.Core.Dtos; using ProductionLineMonitor.Core.Models; using ProductionLineMonitor.Web.Services.LineService; using System; using System.Collections.Generic; using System.Text; namespace ProductionLineMonitor.Application.Services.FaultService { public interface IFaultService { void AddMachineFaultComparisons(string faultTopic, IEnumerable machineFaultComparisons); IEnumerable GetAccumulatedFaultTop10ByLine(string lineId, DateTime startTime, DateTime endTime); List GetAccumulatedFaultTopByLine(string lineId, DateTime startTime, DateTime endTime); IEnumerable GetLineFault(string lineId, DateTime startTime, DateTime endTime, int durationThreshold); IEnumerable FaultSplitToHour(IEnumerable lineFaultDtos); IEnumerable FilterDuplicateFaults(IEnumerable lineFaultDtos); List GetMachineFaultsByTop10(string machineId, DateTime day, string keywords); List GetFaultFrequencyTop10(string machineId, DateTime startTime, DateTime endTime, string keywords); List GetFaultFrequencyTop10ByShift(string machineId, DateTime startTime, DateTime endTime, string keywords); } }