public FrmRendirConsignacionCliente(IClock clock, IFormFactory formFactory, IMessageBoxDisplayService messageBoxDisplayService, ILaPazUow uow, IVentaNegocio ventaNegocio, IClienteNegocio clienteNegocio, IRemitosVentaDetalleNegocio remitoDetalleNegocio, IRemitosVentaNegocio remitoNegocio, IFormRegistry formRegistry, int id, ActionFormMode mode) { FormFactory = formFactory; Uow = uow; FormRegistry = formRegistry; _clock = clock; _messageBoxDisplayService = messageBoxDisplayService; _ventaNegocio = ventaNegocio; _clienteNegocio = clienteNegocio; _remitoDetalleNegocio = remitoDetalleNegocio; _remitoNegocio = remitoNegocio; _venta = new Venta(); _id = id; _formMode = mode; InitializeComponent(); InicializarForm(mode); }
private void UcBuscadorFacturaOnBuscarFinished(object sender, List<VentaDetalleDto> ventaDetalles) { if (ventaDetalles != null) { _ventaDetalleDto = ventaDetalles; var ventaId = ventaDetalles.First().VentaId; _venta = Uow.Ventas.Obtener(v => v.Id == ventaId, v => v.Cliente); ActualizarDetalleFactura(ventaDetalles); CargarDatosFactura(); } else { Limpiar(); _messageBoxDisplayService.ShowSuccess("No se encontró factura con ese número"); } }
private void CargarDetalle(Venta venta) { _descripcion = string.Empty; _formaPago = string.Empty; //_recargo = venta.Recargo; var cajaMovimiento = Uow.CajaMovimientos.Obtener(cm => cm.ComprobanteId == venta.Id); if (cajaMovimiento != null) { if (cajaMovimiento.Senia.HasValue) { _descripcion += "Seña $" + cajaMovimiento.Senia + ". "; } if (cajaMovimiento.Efectivo.HasValue) { _formaPago += "Efectivo $" + cajaMovimiento.Efectivo + ". "; } if (cajaMovimiento.Tarjeta.HasValue) { var tarjetasMovimientos = Uow.TarjetasMovimientos.Listado(tm => tm.Tarjeta).Where(tm => tm.CajaMovimientoId == cajaMovimiento.Id).ToList(); foreach (var tarjetasMovimiento in tarjetasMovimientos) { _formaPago += "Tarjeta " + tarjetasMovimiento.Tarjeta.Nombre + " $" + tarjetasMovimiento.Importe + ". "; } } if (cajaMovimiento.Cheque.HasValue) { var chequesTerceros = Uow.ChequesTercero.Listado(ch => ch.Banco).Where(ch => ch.CajaMovimientoId == cajaMovimiento.Id); foreach (var chequeTercero in chequesTerceros) { _formaPago += "Cheque " + chequeTercero.Banco.Nombre + " $" + chequeTercero.Importe + ". "; } } if (cajaMovimiento.Deposito.HasValue) { var cuentasMovimientos = Uow.CuentasMovimientos.Listado(ch => ch.Cuenta).Where(ch => ch.ComprobanteId == venta.Id); foreach (var cuentasMovimiento in cuentasMovimientos) { _formaPago += "Deposito " + cuentasMovimiento.Cuenta.Nombre + " $" + cuentasMovimiento.Credito + ". "; } } } var cuotas = Uow.ClientesCuentasCorrientes.Listado().Where(cc => cc.VentaId == venta.Id).ToList(); if (cuotas.Any()) { var cantidadCuotas = cuotas.Count; var montoCuotas = cuotas.First().Importe; _descripcion += "Cuotas: " + cantidadCuotas + " de: $" + montoCuotas; } if (venta.CondicionVentaId == CondicionVentaEnum.CuentaCorriente && cajaMovimiento != null) { //Si es anticipo va adelante de todo. _descripcion = "Anticipo $" + cajaMovimiento.Importe + ". " + _descripcion; } }
private void AgregarTitulosConsignacionVendida(VentaDataBase ventaData, Guid tituloId, Guid? proveedorId, Venta venta, int? cantconsiganda) { TitulosConsignacionesVendida titulosConsignacionesVendida = new TitulosConsignacionesVendida(); titulosConsignacionesVendida.Id = Guid.NewGuid(); titulosConsignacionesVendida.nTipo = 1; titulosConsignacionesVendida.ClienteId = Guid.Empty; titulosConsignacionesVendida.ProveedorId = proveedorId; titulosConsignacionesVendida.TituloId = tituloId; titulosConsignacionesVendida.ComprobanteId = venta.Id; titulosConsignacionesVendida.Fecha = _clock.Now; titulosConsignacionesVendida.CntCn = cantconsiganda; // titulo.CantidadConsignada; titulosConsignacionesVendida.CntPag = 0; titulosConsignacionesVendida.FechaAlta = _clock.Now; titulosConsignacionesVendida.OperadorAltaId = ventaData.OperadorId; titulosConsignacionesVendida.SucursalAltaId = ventaData.SucursalId; Uow.TitulosConsignacionesVendidas.Agregar(titulosConsignacionesVendida); }
private CajaMovimiento CrearCajaMovimiento(VentaDataBase ventaData, Caja caja, Venta venta) { CajaMovimiento cajaMovimiento = new CajaMovimiento(); cajaMovimiento.Id = Guid.NewGuid(); cajaMovimiento.CajaId = caja.Id; cajaMovimiento.TipoMovimientoCajaId = ventaData.TipoCajaMovimientoSeleccionado; cajaMovimiento.TipoComprobante = ventaData.TipoComprobanteSeleccionado; cajaMovimiento.ComprobanteId = venta.Id; cajaMovimiento.Senia = ventaData.Senas + ventaData.CreditosDevolucion; if (ventaData.CondicionVentaSeleccionada == CondicionVentaEnum.CuentaCorriente) cajaMovimiento.Importe = ventaData.Anticipo; else cajaMovimiento.Importe = ventaData.TotalPagar; cajaMovimiento.ImpFac = ventaData.SubTotal; //if (ventaData.CondicionVentaSeleccionada == CondicionVentaEnum.CuentaCorriente) // cajaMovimiento.ImpFac = ventaData.SubTotal; //else // cajaMovimiento.ImpFac = ventaData.TotalPagar; cajaMovimiento.PcAlta = ventaData.PcAlta; cajaMovimiento.SucursalAltaId = ventaData.SucursalId; cajaMovimiento.OperadorAltaId = ventaData.OperadorId; cajaMovimiento.FechaAlta = _clock.Now; return cajaMovimiento; }
private Caja ActualizarCajaActual(VentaDataBase ventaData, Venta venta) { Caja caja = Uow.Cajas.Obtener(c => c.Id == ventaData.CajaActualId); if (caja.Ingresos == null) caja.Ingresos = 0; caja.Ingresos += (float?)venta.TotalPagado; if (caja.Saldo == null) caja.Saldo = 0; caja.Saldo += (float?)venta.TotalPagado; caja.FechaModificacion = _clock.Now; caja.SucursalModificacionId = ventaData.SucursalId; caja.OperadorModificacionId = ventaData.OperadorId; Uow.Cajas.Modificar(caja); return caja; }
private void ProcesarPagoDeposito(VentaDataBase ventaData, VentaPago pago, CajaMovimiento cajaMovimiento, Venta venta, Caja caja) { var pagoDeposito = pago as VentaPagoDeposito; if (cajaMovimiento.Deposito == null) cajaMovimiento.Deposito = 0; //Guardar Cuentas Movimientos cajaMovimiento.Deposito += pago.Importe; CuentasMovimiento cuentasMovimiento = new CuentasMovimiento(); cuentasMovimiento.CuentaId = pagoDeposito.CuentaId ?? 0; cuentasMovimiento.TipoMovimientoId = 2; //Deposito cuentasMovimiento.FechaMovimiento = pagoDeposito.Fecha; cuentasMovimiento.EstadoMovimientoCuentaId = 0; cuentasMovimiento.TipoComprobanteId = ventaData.TipoComprobanteSeleccionado; cuentasMovimiento.ComprobanteId = venta.Id; cuentasMovimiento.MonedaId = 0; cuentasMovimiento.CondicionVentaId = ventaData.CondicionVentaSeleccionada; cuentasMovimiento.NroMovimiento = pagoDeposito.Numero; cuentasMovimiento.Descripcion = "DEPOSITO NRO " + pagoDeposito.Numero.ToString(); cuentasMovimiento.FechaCobro = _clock.Now; cuentasMovimiento.Debito = 0; cuentasMovimiento.Credito = pago.Importe; cuentasMovimiento.TipoCarga = 2; cuentasMovimiento.CajaId = caja.Id; cuentasMovimiento.FechaAlta = _clock.Now; cuentasMovimiento.OperadorAltaId = ventaData.OperadorId; cuentasMovimiento.SucursalAltaId = ventaData.SucursalId; Uow.CuentasMovimientos.Agregar(cuentasMovimiento); }
private void ProcesarPagoCuentaCorriente(VentaDataBase ventaData, CrearVentaResponse reponse, Venta venta) { var cuotas = ventaData.Cuotas; reponse.FacturaInfo.Descripcion += "Cuotas: " + cuotas + " de: $" + ventaData.Montocuota.ToString(); for (int i = 1; i <= cuotas; i++) { ClienteCuentaCorriente clienteCuentaCorriente = new ClienteCuentaCorriente(); clienteCuentaCorriente.Id = Guid.NewGuid(); clienteCuentaCorriente.VentaId = venta.Id; clienteCuentaCorriente.ClienteId = ventaData.ClienteId; clienteCuentaCorriente.Cuota = (byte)i; clienteCuentaCorriente.Fecha = _clock.Now; DateTime venc = ventaData.VencimientoCuota; clienteCuentaCorriente.FechaVencimiento = venc.AddMonths(i - 1); clienteCuentaCorriente.Importe = ventaData.Montocuota; clienteCuentaCorriente.Pagado = 0; clienteCuentaCorriente.FechaGeneracion = _clock.Now; clienteCuentaCorriente.FechaAlta = _clock.Now; clienteCuentaCorriente.SucursalAltaId = ventaData.SucursalId; clienteCuentaCorriente.OperadorAltaId = ventaData.OperadorId; Uow.ClientesCuentasCorrientes.Agregar(clienteCuentaCorriente); } }
private void AgregarClienteMovimiento(VentaDataBase ventaData, Venta venta) { //ClienteMovimiento ClientesMovimiento clientesMovimiento = new ClientesMovimiento(); clientesMovimiento.IdCliente = ventaData.ClienteId; clientesMovimiento.IdTipoComprobante = (int?)ventaData.TipoComprobanteSeleccionado; clientesMovimiento.IdComprobante = venta.Id; clientesMovimiento.Concepto = ventaData.TipoComprobanteSeleccionado.ToString(); clientesMovimiento.Haber = ventaData.TotalPagar; clientesMovimiento.FechaGeneracion = _clock.Now; clientesMovimiento.FechaAlta = _clock.Now; clientesMovimiento.SucursalAltaId = ventaData.SucursalId; clientesMovimiento.OperadorAltaId = ventaData.OperadorId; Uow.ClientesMovimientos.Agregar(clientesMovimiento); }
private void AgregarVentaDetalle(Venta venta, int sucursalId, Guid operadorId, Guid tituloId, int? cantidad, decimal? subTotal, decimal? precioBase, int? descuento, int? cantpropia, int? cantconsiganda) { VentaDetalle ventaDetalle = new VentaDetalle(); ventaDetalle.Id = Guid.NewGuid(); ventaDetalle.VentaId = venta.Id; ventaDetalle.TituloId = tituloId; ventaDetalle.CantidadPropia = cantpropia; ventaDetalle.CantidadConsig = cantconsiganda; ventaDetalle.Precio = subTotal; ventaDetalle.CantidadAuditada = cantidad; ventaDetalle.PrecioBase = precioBase; ventaDetalle.Descuento = descuento; ventaDetalle.FechaAlta = _clock.Now; ventaDetalle.SucursalAltaId = sucursalId; ventaDetalle.OperadorAltaId = operadorId; Uow.VentasDetalle.Agregar(ventaDetalle); }
private Venta AgregarVenta(VentaDataBase ventaData) { var venta = new Venta(); venta.Id = Guid.NewGuid(); if (!ventaData.EsVentaReservada) { venta.NumeroComprobante = this.SiguienteNumeroFactura(ventaData.OperadorId, ventaData.SucursalId); } else { venta.NumeroComprobante = ventaData.NumeroComprobante.GetValueOrDefault(); ActualizarVentaReservada(ventaData); } venta.LetraComprobante = LcnHelper.LetraConsumidorFinal; venta.LCN = LcnHelper.ObtenerLcn(venta.NumeroComprobante, ventaData.PuntoVenta); venta.ComprobanteId = ventaData.TipoComprobanteSeleccionado; venta.ClienteId = ventaData.ClienteId; venta.PuntoVenta = ventaData.PuntoVenta; venta.FechaComprobante = _clock.Now; venta.FechaVencimiento = _clock.Now; venta.CondicionVentaId = ventaData.CondicionVentaSeleccionada; venta.Concepto = ventaData.TipoComprobanteSeleccionado.ToString(); venta.ImporteNeto = ventaData.TotalPagar.GetValueOrDefault(); venta.ImporteIva = ImporteIva; venta.ImporteSena = ventaData.Senas + ventaData.CreditosDevolucion; venta.FechaUltimoPago = _clock.Now; venta.TotalPagado = ventaData.TotalPagar; venta.EstadoVentaId = EstadoVentaEnum.Entregada; venta.FechaAlta = _clock.Now; venta.SucursalAltaId = ventaData.SucursalId; venta.OperadorAltaId = ventaData.OperadorId; Uow.Ventas.Agregar(venta); return venta; }