コード例 #1
0
        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            var esValido = this.ValidarForm();

            if (!esValido)
            {
                this.DialogResult = DialogResult.None;
            }
            else
            {
                LoteFactura lote = ObtenerLoteDesdeForm();

                if (_formMode == ActionFormMode.Create)
                {
                    if (ValidarNumeroLote() == false)
                    {
                        _messageBoxDisplayService.ShowWarning("Lote No válido");
                        this.DialogResult = DialogResult.None;
                        return;
                    }


                    _loteFactura.NroActual -= 1;
                    Uow.LotesFacturas.Agregar(lote);
                }
                else
                {
                    Uow.LotesFacturas.Modificar(lote);
                }

                Uow.Commit();
            }
        }
コード例 #2
0
        private void CargarLote(int _nroLote)
        {
            if (_nroLote == default(int))
            {
                _loteFactura      = new LoteFactura();
                _loteFactura.Tipo = "C";
                //NroActual = 0;
                TxtActual.Enabled = false;
                return;
            }
            else
            {
                _loteFactura = Uow.LotesFacturas.Obtener(l => l.NroLote == _nroLote);
            }

            NroDesde  = _loteFactura.NroDesde;
            NroHasta  = _loteFactura.NroHasta;
            NroActual = _loteFactura.NroActual;
            Tipo      = _loteFactura.Tipo;
            EstadoId  = _loteFactura.Estado;
        }
コード例 #3
0
ファイル: VentaNegocio.cs プロジェクト: windygu/Libreria
        public void ReservarFactura(ReservarFacturaData reservarFacturaData)
        {
            LoteFactura loteFactura =
                Uow.LotesFacturas.Obtener(
                    l => l.OperadorLote == reservarFacturaData.OperadorActualId && l.NroActual < l.NroHasta && l.Estado == EstadoLoteEnum.Activo && l.SucursalAltaId == reservarFacturaData.SucursalActualId);

            // Guardar Reservar Factura
            VentaReservada ventaReservada = new VentaReservada();

            ventaReservada.SucReserva = reservarFacturaData.SucursalActualId;
            ventaReservada.NroLote    = loteFactura.NroLote;

            ventaReservada.LCN            = LcnHelper.ObtenerLcn(this.SiguienteNumeroFactura(reservarFacturaData.OperadorActualId, reservarFacturaData.SucursalActualId), reservarFacturaData.PuntoVenta);
            ventaReservada.FechaAlta      = _clock.Now;
            ventaReservada.SucursalAltaId = reservarFacturaData.SucursalActualId;
            ventaReservada.OperadorAltaId = reservarFacturaData.OperadorActualId;
            Uow.VentasReservadas.Agregar(ventaReservada);

            AumentarNumeroFactura(reservarFacturaData.OperadorActualId, reservarFacturaData.SucursalActualId);

            Uow.Commit();
        }
コード例 #4
0
        private void AumentarNumeroFactura(Guid operadorId, int sucursalId)
        {
            LoteFactura loteFactura =
                Uow.LotesFacturas.Obtener(
                    l => l.OperadorLote == operadorId && l.NroActual < l.NroHasta && l.Estado == EstadoLoteEnum.Activo && l.SucursalAltaId == sucursalId);

            var ultimo = this.SiguienteNumeroFactura(operadorId, sucursalId);

            if (ultimo == loteFactura.NroActual)
            {
                loteFactura.Estado = EstadoLoteEnum.Cerrado;
            }
            else
            {
                loteFactura.NroActual += 1;
            }

            loteFactura.FechaModificacion      = _clock.Now;
            loteFactura.OperadorAltaId         = operadorId;
            loteFactura.SucursalModificacionId = sucursalId;

            Uow.LotesFacturas.Modificar(loteFactura);
        }