Example #1
0
 /// <summary>
 /// Verifica si la solicitud es valida segun los distintos evaluadores contenidos
 /// </summary>
 /// <param name="pSolicitud">Solicitud a Evaluar</param>
 /// <returns>Vercadero si la solicitud es valida</returns>
 public bool EsValida(SolicitudPrestamo pSolicitud)
 {
     IEnumerator<IEvaluador> enumerador = Evaluadores.GetEnumerator();
     bool valida = true;
     while (valida && enumerador.MoveNext())
     {
         valida = enumerador.Current.EsValida(pSolicitud);
     }
     return valida;
 }
        public void EsValida_WithAntiguedadMenor_ReturnsFalse()
        {
            string iNombre = "Ramiro";
            string iApellido = "Rivera";
            int iCantidadCuotas = 12;
            double iMonto = 20000;
            double iSueldo = 5500;
            DateTime iFechaNac = new DateTime(1993, 07, 11);
            DateTime iFechaIng = DateTime.Today;

            Empleo iEmpleo = new Empleo(iSueldo, iFechaIng);
            Cliente iCliente = new Cliente(iNombre, iApellido, iFechaNac, iEmpleo);
            iCliente.TipoCliente = TipoCliente.NoCliente;
            SolicitudPrestamo iSolicitudPrestamo = new SolicitudPrestamo(iCliente, iMonto, iCantidadCuotas);

            GestorPrestamos iGestorPrestamos = new GestorPrestamos();
            Assert.IsFalse(iGestorPrestamos.EsValida(iSolicitudPrestamo));
        }
Example #3
0
 /// <summary>
 /// Verifica si la solicitud es valida segun el monto indicado
 /// </summary>
 /// <param name="pSolicitud">Solicitud a evaluar</param>
 /// <returns>Devuelve verdadero si la solicitud es valida</returns>
 bool IEvaluador.EsValida(SolicitudPrestamo pSolicitud)
 {
     return (pSolicitud.Monto <= iMontoMaximo);
 }
Example #4
0
 /// <summary>
 ///  Valida una <see cref="SolicitudPrestamo"/>
 /// </summary>
 /// <param name="pMonto">Monto del prestamo solicitado</param>
 /// <param name="pCantidadCuotas">Numero de cuotas en las cuales se debera cancelar el prestamo</param>
 /// <returns>True si la solicitud es valida, False caso contrario</returns>
 public bool ValidarSolicitudPrestamo(double pMonto, int pCantidadCuotas)
 {
     SolicitudPrestamo lSolicitud = new SolicitudPrestamo(this.iCliente, pMonto, pCantidadCuotas);
     return (this.iGestorPrestamos.EsValida(lSolicitud));
 }
Example #5
0
 /// <summary>
 /// Evalua si la edad del solicitante esta dentro de los parametros validos
 /// </summary>
 /// <param name="pSolicitud">Solicitud a Evaluar</param>
 /// <returns>Verdadero si la solicitud es valida, falso caso contrario</returns>
 bool IEvaluador.EsValida(SolicitudPrestamo pSolicitud)
 {
     int edad = ((DateTime.Today - pSolicitud.Cliente.FechaNacimiento).Days) / 365;
     return ((iEdadMinima <= edad) && (iEdadMaxima >= edad));
 }
 /// <summary>
 /// Verifica si la solicitud es valida segun la cantidad de cuotas maximas
 /// </summary>
 /// <param name="pSolicitud">Solicitud a evaluar</param>
 /// <returns>Devuelve verdadero si la solicitud es valida</returns>
 bool IEvaluador.EsValida(SolicitudPrestamo pSolicitud)
 {
     return (pSolicitud.CantidadCuotas <= iCantidadMaximaCuotas);
 }
Example #7
0
 /// <summary>
 /// Verifica si la solicitud es valida segun el sueldo que percibe el Cliente
 /// </summary>
 /// <param name="pSolicitud">Solicitud a evaluar</param>
 /// <returns>Devuelve verdadero si la solicitud es valida</returns>
 bool IEvaluador.EsValida(SolicitudPrestamo pSolicitud)
 {
     return (pSolicitud.Cliente.Empleo.Sueldo > iSueldoMinimo);
 }
 /// <summary>
 /// Verifica si una solicitud es valida segun la antiguedad del Cliente
 /// </summary>
 /// <param name="pSolicitud">Solicitud a evaluar</param>
 /// <returns>Devuelve verdadero si la solicitud es valida</returns>
 bool IEvaluador.EsValida(SolicitudPrestamo pSolicitud)
 {
     int antiguedad = Math.Abs((DateTime.Today.Month - pSolicitud.Cliente.Empleo.FechaIngreso.Month) + 12 * (DateTime.Today.Year - pSolicitud.Cliente.Empleo.FechaIngreso.Year));
     return antiguedad >= this.iAntiguedadMinima;
 }
Example #9
0
 /// <summary>
 /// Verifica si una solicitud es valida, invocando al evaluador correspondiente segun el tipo de cliente
 /// </summary>
 /// <param name="pSolicitud">Solicitud a evaluar</param>
 /// <returns>Verdadero si la solicitud es valida</returns>
 public bool EsValida(SolicitudPrestamo pSolicitud)
 {
     return EvaluadoresPorCliente[pSolicitud.Cliente.TipoCliente].EsValida(pSolicitud);
 }