private void RealizarVenta()
        {
            RendirConsignacionClienteData consignacionData = new RendirConsignacionClienteData();

            consignacionData.EsVentaReservada  = _formMode == ActionFormMode.Edit;
            consignacionData.OperadorId        = Context.OperadorActual.Id;
            consignacionData.SucursalId        = Context.SucursalActual.Id;
            consignacionData.NumeroComprobante = _id;
            consignacionData.ClienteId         = _cliente.Id;

            consignacionData.TipoComprobanteSeleccionado    = UcBuscadorConsignacion.TipoComprobanteSeleccionado;
            consignacionData.CondicionVentaSeleccionada     = UcBuscadorConsignacion.CondicionVentaSeleccionada;
            consignacionData.TipoCajaMovimientoSeleccionado = UcBuscadorConsignacion.TipoCajaMovimientoSeleccionado;

            consignacionData.TotalPagar         = UcTotalesVenta.TotalPagar;
            consignacionData.Senas              = UcTotalesVenta.Senas;
            consignacionData.CreditosDevolucion = UcTotalesVenta.CreditosDevolucion;

            UcTitulosConsignacionVenta.ActualizarInfo();
            consignacionData.RemitosVentaDetalle = UcTitulosConsignacionVenta.Titulos;

            consignacionData.CajaActualId = Context.CajaActual.Id;
            consignacionData.Anticipo     = UcCuentaCorrienteInfo.Anticipo;
            //consignacionData.SubTotal = UcCuentaCorrienteInfo.SubTotal;
            consignacionData.SubTotal = UcTotalesVenta.SubTotal;

            consignacionData.Pagos            = UcTotalesVenta.Pagos;
            consignacionData.Cuotas           = UcCuentaCorrienteInfo.Cuotas;
            consignacionData.Montocuota       = UcCuentaCorrienteInfo.Montocuota;
            consignacionData.VencimientoCuota = UcCuentaCorrienteInfo.Vencimiento;
            consignacionData.PcAlta           = Environment.MachineName;
            consignacionData.PuntoVenta       = Context.SucursalActual.SucursalNumero ?? 1;

            CrearVentaResponse ventaResponse;

            try
            {
                ventaResponse = _ventaNegocio.CrearVentaRendicionConsignacionCliente(consignacionData);
            }
            catch (ApplicationException ex)
            {
                _messageBoxDisplayService.ShowError(ex.Message);
                return;
            }

            //if (ventaResponse.Comprobantes.Count != 0)
            //{
            foreach (var comprobante in ventaResponse.Comprobantes)
            {
                using (var crearComprobante = FormFactory.Create <FrmComprobante>())
                {
                    crearComprobante._concepto = comprobante.Concepto;
                    crearComprobante._LCN      = comprobante.LCN;
                    var conv = new Conversion();
                    crearComprobante._montoTexto       = conv.enletras((comprobante.Importe - comprobante.ImpOcupado).ToString());
                    crearComprobante._montoActualizado = (comprobante.Importe - comprobante.ImpOcupado);
                    crearComprobante.ShowDialog();
                }
            }

            //  _messageBoxDisplayService.ShowSuccess(Resources.MessageSuccessVentaExitosa);

            if (ChkImprimir.Checked)
            {
                DirectPrint print = new DirectPrint(Uow);
                print.Descripcion = ventaResponse.FacturaInfo.Descripcion;
                print.FormaPago   = ventaResponse.FacturaInfo.FormaPago;
                print.Recargo     = UcTotalesVenta.Recargo.ToString();
                print.GenerarFactura(ventaResponse.VentaId);
            }

            using (var crearVenta = FormFactory.Create <FrmFacturaVenta>(ventaResponse.VentaId))
            {
                if (ventaResponse.VentaId != Guid.Empty)
                {
                    crearVenta._descripcion = ventaResponse.FacturaInfo.Descripcion;
                    crearVenta._formaPago   = ventaResponse.FacturaInfo.FormaPago;
                    crearVenta._recargo     = UcTotalesVenta.Recargo.ToString();

                    crearVenta.ShowDialog();
                }
            }

            OnVentaRealizada();
            //}
            //else
            //{
            _messageBoxDisplayService.ShowSuccess("Rendición guardada con éxito");
            //}

            var pageTab = this.Parent as RadPageViewPage;

            if (pageTab != null)
            {
                pageTab.Dispose();
            }
            ;

            if (_formMode == ActionFormMode.Edit)
            {
                this.Close();
            }
        }
Example #2
0
        private void RealizarVenta()
        {
            CrearVentaData ventaData = new CrearVentaData();

            ventaData.EsVentaReservada  = _formMode == ActionFormMode.Edit;
            ventaData.OperadorId        = Context.OperadorActual.Id;
            ventaData.SucursalId        = Context.SucursalActual.Id;
            ventaData.NumeroComprobante = _id;
            ventaData.ClienteId         = _cliente.Id;

            ventaData.TipoComprobanteSeleccionado    = UcBuscadorCliente.TipoComprobanteSeleccionado;
            ventaData.CondicionVentaSeleccionada     = UcBuscadorCliente.CondicionVentaSeleccionada;
            ventaData.TipoCajaMovimientoSeleccionado = UcBuscadorCliente.TipoCajaMovimientoSeleccionado;

            ventaData.TotalPagar         = UcTotalesVenta.TotalPagar;
            ventaData.Senas              = UcTotalesVenta.Senas;
            ventaData.CreditosDevolucion = UcTotalesVenta.CreditosDevolucion;

            ventaData.Titulos = UcTitulosVenta.Titulos;

            ventaData.CajaActualId = Context.CajaActual.Id;
            ventaData.Anticipo     = UcCuentaCorrienteInfo.Anticipo;
            ventaData.SubTotal     = UcTotalesVenta.SubTotal;

            ventaData.Pagos            = UcTotalesVenta.Pagos;
            ventaData.Cuotas           = UcCuentaCorrienteInfo.Cuotas;
            ventaData.Montocuota       = UcCuentaCorrienteInfo.Montocuota;
            ventaData.VencimientoCuota = UcCuentaCorrienteInfo.Vencimiento;
            ventaData.PcAlta           = Environment.MachineName;
            ventaData.PuntoVenta       = Context.SucursalActual.SucursalNumero ?? 1;
            CrearVentaResponse ventaResponse;

            try
            {
                ventaResponse = _ventaNegocio.CrearVenta(ventaData);
            }
            catch (ApplicationException ex)
            {
                _messageBoxDisplayService.ShowError(ex.Message);
                return;
            }

            foreach (var comprobante in ventaResponse.Comprobantes)
            {
                using (var crearComprobante = FormFactory.Create <FrmComprobante>())
                {
                    crearComprobante._concepto = comprobante.Concepto;
                    crearComprobante._LCN      = comprobante.LCN;
                    var conv = new Conversion();
                    crearComprobante._montoTexto       = conv.enletras((comprobante.Importe - comprobante.ImpOcupado).ToString());
                    crearComprobante._montoActualizado = (comprobante.Importe - comprobante.ImpOcupado);
                    crearComprobante.ShowDialog();
                }
            }

            _messageBoxDisplayService.ShowSuccess(Resources.MessageSuccessVentaExitosa);

            if (ChkImprimir.Checked)
            {
                _directPrint.Descripcion = ventaResponse.FacturaInfo.Descripcion;
                _directPrint.FormaPago   = ventaResponse.FacturaInfo.FormaPago;
                _directPrint.Recargo     = UcTotalesVenta.Recargo.ToString();
                _directPrint.GenerarFactura(ventaResponse.VentaId);
            }

            using (var crearVenta = FormFactory.Create <FrmFacturaVenta>(ventaResponse.VentaId))
            {
                crearVenta._descripcion = ventaResponse.FacturaInfo.Descripcion;
                crearVenta._formaPago   = ventaResponse.FacturaInfo.FormaPago;
                crearVenta._recargo     = UcTotalesVenta.Recargo.ToString();

                crearVenta.ShowDialog();
            }

            OnVentaRealizada();

            if (_formMode == ActionFormMode.Edit)
            {
                this.Close();
            }

            //LimpiarFormularioVenta();
        }