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); } }
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) )); }