using AgroBase.Services.Operadores; using System; using System.Linq; using static AgroBase.Models.Enums; namespace AgroBase.Models { public class DispositivosModel { } public class DispositivoDetalhesModel { public DateTime CriadoEm { get; set; } = DateTime.Now; public T_Code Dispositivo { get; set; } public string Mod_ID { get; set; } public string Endereco { get; set; } public string Versao { get; set; } public TipoConexao Tipo { get { if (Endereco.Contains("USB")) { return TipoConexao.USB; } else if (Endereco.Contains("COM")) { return TipoConexao.PortaCOM; } else if (Endereco.Contains(".")) { return TipoConexao.Ethernet; } else if (Endereco.Contains("CAN")) { return TipoConexao.CAN; } else { return TipoConexao.Desconhecido; } } } public StatusModulo Status { get { return HealthWorkerService.ModulosSaude.FirstOrDefault(x => x.modulo == Dispositivo)?.status ?? StatusModulo.Desconectado; } } public double Saude { get { return HealthWorkerService.ModulosSaude.FirstOrDefault(x => x.modulo == Dispositivo)?.saude ?? 0; } } public string Erros { get { var motivos = HealthWorkerService.ModulosSaude.FirstOrDefault(x => x.modulo == Dispositivo)?.motivos ?? new System.Collections.Generic.List(); return string.Join(", ", motivos); } } } }