private void GuardarDevolucion() { //Controlar que las cantidades no superen el disponible foreach (var devolucionTitulos in ucTitulosDevolucion.TitulosDevolucion) { if (devolucionTitulos.CantidadPropia < devolucionTitulos.Cantidad) { _messageBoxDisplayService.ShowError("La cantidad devuleta es mayor a la cantidad disponible de libro: " + devolucionTitulos.TituloNombre); return; } } #region ProveedorMontoFavor ProveedoresMontosFavor proveedorMontoFavor = new ProveedoresMontosFavor(); proveedorMontoFavor.Id = Guid.NewGuid(); proveedorMontoFavor.ProveedorId = _proveedor.Id; proveedorMontoFavor.TipoComprobanteId = _tipoComprobante;// TipoComprobanteEnum.MontoFavorProveedor; proveedorMontoFavor.LCN = GenerarLcnMontoFavor(); proveedorMontoFavor.Concepto = TxtConcepto.Text; proveedorMontoFavor.Importe = Convert.ToDecimal(LblImporte.Text); proveedorMontoFavor.ImporteOcupado = 0; proveedorMontoFavor.Observaciones = TxtObservaciones.Text; proveedorMontoFavor.FechaAlta = _clock.Now; proveedorMontoFavor.SucursalAltaId = Context.SucursalActual.Id; proveedorMontoFavor.OperadorAltaId = Context.OperadorActual.Id; Uow.ProveedoresMontosFavor.Agregar(proveedorMontoFavor); #endregion //Genero TitulosConsignacionesDevueltas Guid titulosConsignacionDevuelta = TitulosConsignacionesDevueltas(proveedorMontoFavor); // #region ProveedorMontoFavorDetalle foreach (var devolucionTitulo in ucTitulosDevolucion.TitulosDevolucion) { int _propia = 0; int?_consignada = 0; int?_cantidadTotal = devolucionTitulo.Cantidad; ProveedoresMontosFavorDetalle proveedoresMontosFavorDetalle = new ProveedoresMontosFavorDetalle(); proveedoresMontosFavorDetalle.Id = Guid.NewGuid(); proveedoresMontosFavorDetalle.ProveedoresMontosFavor = proveedorMontoFavor.Id; proveedoresMontosFavorDetalle.TitulosId = devolucionTitulo.TituloId; if (devolucionTitulo.CantidadPropia >= _cantidadTotal) { proveedoresMontosFavorDetalle.CantidadPropia = _cantidadTotal; proveedoresMontosFavorDetalle.FechaAlta = _clock.Now; proveedoresMontosFavorDetalle.SucursalAltaId = Context.SucursalActual.Id; proveedoresMontosFavorDetalle.OperadorAltaId = Context.OperadorActual.Id; Uow.ProveedoresMontosFavorDetalle.Agregar(proveedoresMontosFavorDetalle); DescontarLibrosPropios(_cantidadTotal, proveedoresMontosFavorDetalle.TitulosId); TitulosConsignacionesDevueltaDetalle(devolucionTitulo, _cantidadTotal, titulosConsignacionDevuelta); } else { } } #endregion Uow.Commit(); _messageBoxDisplayService.ShowSuccess("DevoluciĆ³n guardada correctamente"); using (var crearComprobante = FormFactory.Create <FrmComprobanteDevolucion>(titulosConsignacionDevuelta)) { crearComprobante.ShowDialog(); } onDevolucionRealizada(); }
private void GuardarDevolucion() { //Controlar que las cantidades no superen el disponible foreach (var devolucionTitulos in ucTitulosDevolucion.TitulosDevolucion) { if (devolucionTitulos.CantidadPropia < devolucionTitulos.Cantidad) { _messageBoxDisplayService.ShowError("La cantidad devuleta es mayor a la cantidad disponible de libro: " + devolucionTitulos.TituloNombre); return; } } #region ProveedorMontoFavor ProveedoresMontosFavor proveedorMontoFavor = new ProveedoresMontosFavor(); proveedorMontoFavor.Id = Guid.NewGuid(); proveedorMontoFavor.ProveedorId = _proveedor.Id; proveedorMontoFavor.TipoComprobanteId = _tipoComprobante;// TipoComprobanteEnum.MontoFavorProveedor; proveedorMontoFavor.LCN = GenerarLcnMontoFavor(); proveedorMontoFavor.Concepto = TxtConcepto.Text; proveedorMontoFavor.Importe = Convert.ToDecimal(LblImporte.Text); proveedorMontoFavor.ImporteOcupado = 0; proveedorMontoFavor.Observaciones = TxtObservaciones.Text; proveedorMontoFavor.FechaAlta = _clock.Now; proveedorMontoFavor.SucursalAltaId = Context.SucursalActual.Id; proveedorMontoFavor.OperadorAltaId = Context.OperadorActual.Id; Uow.ProveedoresMontosFavor.Agregar(proveedorMontoFavor); #endregion //Genero TitulosConsignacionesDevueltas Guid titulosConsignacionDevuelta= TitulosConsignacionesDevueltas(proveedorMontoFavor); // #region ProveedorMontoFavorDetalle foreach (var devolucionTitulo in ucTitulosDevolucion.TitulosDevolucion) { int _propia = 0; int? _consignada = 0; int? _cantidadTotal = devolucionTitulo.Cantidad; ProveedoresMontosFavorDetalle proveedoresMontosFavorDetalle = new ProveedoresMontosFavorDetalle(); proveedoresMontosFavorDetalle.Id = Guid.NewGuid(); proveedoresMontosFavorDetalle.ProveedoresMontosFavor = proveedorMontoFavor.Id; proveedoresMontosFavorDetalle.TitulosId = devolucionTitulo.TituloId; if (devolucionTitulo.CantidadPropia >= _cantidadTotal) { proveedoresMontosFavorDetalle.CantidadPropia = _cantidadTotal; proveedoresMontosFavorDetalle.FechaAlta = _clock.Now; proveedoresMontosFavorDetalle.SucursalAltaId = Context.SucursalActual.Id; proveedoresMontosFavorDetalle.OperadorAltaId = Context.OperadorActual.Id; Uow.ProveedoresMontosFavorDetalle.Agregar(proveedoresMontosFavorDetalle); DescontarLibrosPropios(_cantidadTotal, proveedoresMontosFavorDetalle.TitulosId); TitulosConsignacionesDevueltaDetalle(devolucionTitulo, _cantidadTotal, titulosConsignacionDevuelta); } else { } } #endregion Uow.Commit(); _messageBoxDisplayService.ShowSuccess("DevoluciĆ³n guardada correctamente"); using (var crearComprobante = FormFactory.Create<FrmComprobanteDevolucion>(titulosConsignacionDevuelta)) { crearComprobante.ShowDialog(); } onDevolucionRealizada(); }