public List <Precinto> GetPrecintosLibres() { var dispositivoDao = new DispositivoDAO(); var precintosAsignados = dispositivoDao.FindAll() .Where(c => c.Precinto != null) .Select(c => c.Precinto.Id); return(GetList().Where(p => !precintosAsignados.Contains(p.Id)) .ToList()); }
/// <summary> /// When saving a new parameter type, generates a new configuration detail entry for all devices of the associated type. /// </summary> /// <param name="obj"></param> public override void SaveOrUpdate(TipoParametroDispositivo obj) { var dispositivosDAO = new DispositivoDAO(); var devices = obj.Id > 0 ? new List <Dispositivo>() : dispositivosDAO.GetByTipo(obj.DispositivoTipo); if (obj.Id.Equals(0)) { foreach (var device in devices) { var detail = new DetalleDispositivo { Dispositivo = device, Revision = (device.GetMaxRevision() + 1), TipoParametro = obj, Valor = obj.ValorInicial }; obj.DispositivoDetalle.Add(detail); device.AddDetalleDispositivo(detail); } } base.SaveOrUpdate(obj); }