public bool ValidarPagosTodos() { List <Cliente> clietes = _ICLienteService.Get(); clietes.ForEach(cliente => { int SegundoAvisoCont = 0; int PrimerAvisoCont = 0; cliente.facturas.ForEach(Factura => { OperadorFactura op = GetPropValue(Factura.estado); switch (op) { case OperadorFactura.PrimerRecordatorio: PrimerAvisoCont++; break; case OperadorFactura.SegundoRecordatorio: SegundoAvisoCont++; break; } }); if (SegundoAvisoCont > 0) { _estadoFacturaStrategy.Validar(cliente, OperadorFactura.SegundoRecordatorio); } else if (PrimerAvisoCont > 0) { _estadoFacturaStrategy.Validar(cliente, OperadorFactura.PrimerRecordatorio); } }); return(false); }
public bool Validar(Cliente cliente, OperadorFactura op) { try { return(_operators.FirstOrDefault(x => x.Operator == op)?.ValidateEstado(cliente) ?? throw new ArgumentNullException(nameof(op))); } catch (Exception ex) { return(false); } }