Example #1
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();
        }
        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();
            }
        }
        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 = UcCuentaCorrienteInfo.SubTotal;
            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();
        }
        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            if (Monto != UcTotalesSenia.TotalPagar)
            {
                _messageBoxDisplayService.ShowError("Los montos no coiniden");
                return;
            }

            int sucursal = 1;
            ClienteMontoFavor clienteMontoFavor = new ClienteMontoFavor();
            clienteMontoFavor.Id = Guid.NewGuid();
            clienteMontoFavor.ClienteId = _cliente.Id;
            clienteMontoFavor.FechaComprobante = _clock.Now;
            clienteMontoFavor.TipoComprobanteId = TipoComprobanteEnum.SeñaCliente;
            clienteMontoFavor.LCN = "R" + sucursal.ToString().PadLeft(4, '0') + CalcularLCN().PadLeft(8, '0');
            clienteMontoFavor.Concepto = "Seña " + clienteMontoFavor.LCN;
            clienteMontoFavor.Importe = UcTotalesSenia.TotalPagar;
            clienteMontoFavor.ImpOcupado = 0;
            clienteMontoFavor.Observaciones = TipoComprobanteEnum.SeñaCliente.ToString();
            clienteMontoFavor.FechaAlta = _clock.Now;
            clienteMontoFavor.OperadorAltaId = Context.OperadorActual.Id;
            clienteMontoFavor.SucursalAltaId = 2;

            Uow.ClientesMontosFavor.Agregar(clienteMontoFavor);

            Uow.Commit();
            
            _messageBoxDisplayService.ShowSuccess("Seña generada con éxito");

            var crearSenia = FormFactory.Create<FrmComprobante>();
            crearSenia._concepto = "Seña de Cliente";
            crearSenia._LCN = clienteMontoFavor.LCN;
            var conv = new Conversion();

            crearSenia._montoTexto = conv.enletras(UcTotalesSenia.TotalPagar.ToString());
            //crearSenia._montoTexto = "cien";
            //crearSenia.Show();

            BuscarHistorial();
            Limpiar();
        }