Ejemplo n.º 1
0
        public void PrestarLibro()
        {
            try
            {
                if (_vista.DatosPrestamoControl.Valido)
                {
                    throw new DatosPrestamoInvalidosException(_vista.DatosPrestamoControl);
                }
                var numero          = NroPrestamo.Of(_vista.Numero);
                var libro           = _vista.Libro.ToEntity();
                var socio           = _vista.Socio.ToEntity();
                var fechaPrestamo   = Fecha.Of(DateTime.Today);
                var fechaDevolucion = Fecha.Of(_vista.FechaDevolucion);
                var prestamo        = new Prestamo(numero, socio, libro, fechaPrestamo, fechaDevolucion);

                if (_prestamoServicio.VerificarDuplicados(prestamo))
                {
                    throw new PrestamoDuplicadoException(prestamo);
                }
                _prestamoServicio.Guardar(prestamo);
                MostrarPrestamos();
            }
            catch (Exception e)
            {
                MostrarMensaje(e.Message);
            }
        }
Ejemplo n.º 2
0
 public Prestamo ToEntity() =>
 new Prestamo(
     id: Id,
     numero: NroPrestamo.Of(Numero),
     socio: Socio.ToEntity(),
     libro: Libro.ToEntity(),
     fechaPrestamo: Fecha.Of(FechaPrestamo),
     fechaDevolucion: Fecha.Of(FechaDevolucion)
     );
        private Prestamo CrearPrestamoDesdeFila(DataRow fila)
        {
            var id              = fila["prestamo_id"] as int? ?? 0;
            var nro             = fila["nro_prestamo"] as int? ?? 0;
            var fechaPrestamo   = fila["fecha_prestamo"] as DateTime? ?? default;
            var fechaDevolucion = fila["fecha_devolucion"] as DateTime? ?? default;
            var socio           = SocioDesdeFila(fila);
            var libro           = CrearLibroDesdeFila(fila);

            return(new Prestamo(
                       id: EntidadId.Of(id),
                       numero: NroPrestamo.Of(nro),
                       socio: socio,
                       libro: libro,
                       fechaPrestamo: Fecha.Of(fechaPrestamo),
                       fechaDevolucion: Fecha.Of(fechaDevolucion)
                       ));
        }