Ejemplo n.º 1
0
        private void CargarControles()
        {
            Sucursal      sucu = sucursales.FirstOrDefault(s => !string.IsNullOrEmpty(s.Campo8));
            Almacen       alma = almacenes.FirstOrDefault(a => !string.IsNullOrEmpty(a.Campo8));
            CondicionPago cond = condicionPagos.FirstOrDefault(c => !string.IsNullOrEmpty(c.Campo8));
            Transporte    tran = transportes.FirstOrDefault(t => !string.IsNullOrEmpty(t.Campo8));

            //CloseLoading();
            if (sucu == null)
            {
                MessageBox.Show($"La sucursal por defecto debe tener una marca en campo 8.{ Environment.NewLine} Pulse F2 para buscar.", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            if (alma == null)
            {
                MessageBox.Show($"El almacén por defecto debe tener una marca en campo 8.{ Environment.NewLine} Pulse F2 para buscar.", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            if (cond == null)
            {
                MessageBox.Show($"La condición de pago por defecto debe tener una marca en campo 8.{ Environment.NewLine} Pulse F2 para buscar.", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            if (tran == null)
            {
                MessageBox.Show($"El transporte por defecto debe tener una marca en campo 8.{ Environment.NewLine} Pulse F2 para buscar.", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }

            txtCoSucu.Text  = sucu == null ? string.Empty : sucu.CoSucur.Trim();
            txtDesSucu.Text = sucu == null ? string.Empty : sucu.SucurDes.Trim();
            txtCoAlma.Text  = alma == null ? string.Empty : alma.CoAlma.Trim();
            txtDesAlma.Text = alma == null ? string.Empty : alma.DesAlma.Trim();
            txtCoCond.Text  = cond == null ? string.Empty : cond.CoCond.Trim();
            txtDesCond.Text = cond == null ? string.Empty : cond.CondDes.Trim();
            txtCoTran.Text  = tran == null ? string.Empty : tran.CoTran.Trim();
            txtDesTran.Text = tran == null ? string.Empty : tran.DesTran;
            //StartLoading();
        }
Ejemplo n.º 2
0
 public Struct_Factura(int p_userId)
 {
     UserId            = p_userId;
     MiDetalle         = new List <Struct_DetalleFactura>();
     FacturaTipo       = TipoDeFactura.FacturaA;
     Condicion_IVA     = CondicionIVA.RespInscripto;
     Pago              = CondicionPago.Contado;
     IvaPredeterminado = false;
 }
Ejemplo n.º 3
0
        //CondicionPago
        public void EstablecerCondicionPagoDeVenta(CondicionPago pCondicionPago)
        {
            if (pCondicionPago == null)
            {
                throw new ArgumentException(Mensajes.excepcion_CondicionPagoDeVentaEnEstadoNuloOTransitorio);
            }

            this.CodigoCondicionPago = pCondicionPago.CodigoCondicionPago;
            this.CondicionPago       = pCondicionPago;
        }
Ejemplo n.º 4
0
        //CondicionPagoTicket
        public void EstablecerCondicionPagoTicketDeCliente(CondicionPago pCondicionPagoTicket)
        {
            if (pCondicionPagoTicket == null)
            {
                throw new ArgumentException(Mensajes.excepcion_CondicionPagoTicketDeClienteEnEstadoNuloOTransitorio);
            }


            this.CodigoCondicionPagoTicket = pCondicionPagoTicket.CodigoCondicionPago;
            this.CondicionPagoTicket       = pCondicionPagoTicket;
        }
Ejemplo n.º 5
0
        //CondicionPagoDocumento
        public void EstablecerCondicionPagoDocumentoGeneradoDeCliente(CondicionPago pCondicionPagoDocumentoGenerado)
        {
            if (pCondicionPagoDocumentoGenerado == null)
            {
                throw new ArgumentException(Mensajes.excepcion_CondicionPagoDocumentoGeneradoDeClienteEnEstadoNuloOTransitorio);
            }


            this.CodigoCondicionPagoDocumentoGenerado = pCondicionPagoDocumentoGenerado.CodigoCondicionPago;
            this.CondicionPagoDocumentoGenerado       = pCondicionPagoDocumentoGenerado;
        }
Ejemplo n.º 6
0
        private void FrmBuscarCondicionPago_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (this.dataGridViewCondicionPago.SelectedRows.Count > 0)
            {
                CondicionPago    condicionPago     = (CondicionPago)this.dataGridViewCondicionPago.SelectedRows[0].DataBoundItem;
                FrmCondicionPago formCondicionPago = (FrmCondicionPago)base.Owner;
                formCondicionPago.CondicionPago = condicionPago;

                base.DialogResult = DialogResult.OK;
            }
        }
Ejemplo n.º 7
0
        public async Task <IActionResult> Create([Bind("Id,Nombre,Descripcion")] CondicionPago condicionPago)
        {
            if (ModelState.IsValid)
            {
                _context.Add(condicionPago);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(condicionPago));
        }
Ejemplo n.º 8
0
        private void LlenarFormaPago()
        {
            this.dataGridViewCondicionPago.AutoGenerateColumns = false;
            int index = this.dataGridViewCondicionPago.Columns.Add("Descripcion", "Descripcion");

            this.dataGridViewCondicionPago.Columns[index].DataPropertyName = "Descripcion";
            this.dataGridViewCondicionPago.Columns[index].Width            = 150;
            index = this.dataGridViewCondicionPago.Columns.Add("Dias", "Dias");
            this.dataGridViewCondicionPago.Columns[index].DataPropertyName = "Dias";
            this.dataGridViewCondicionPago.Columns[index].Width            = 50;
            this.bindingSource1.DataSource            = CondicionPago.GetAll();
            this.dataGridViewCondicionPago.DataSource = this.bindingSource1;
        }
Ejemplo n.º 9
0
        public FrmCondicionPago(CondicionPago cp)
        {
            //
            // The InitializeComponent() call is required for Windows Forms designer support.
            //
            InitializeComponent();

            //
            // TODO: Add constructor code after the InitializeComponent() call.
            //
            CondicionPago = cp;
            CondicionPago.FechaModificacion = DateTime.Now;
            CondicionPago.Eliminado         = false;
            accion = 2;
            Text   = "Modificar Condicion de Pago";
        }
Ejemplo n.º 10
0
        public FrmCondicionPago()
        {
            //
            // The InitializeComponent() call is required for Windows Forms designer support.
            //
            InitializeComponent();

            //
            // TODO: Add constructor code after the InitializeComponent() call.
            //
            CondicionPago = new CondicionPago();
            CondicionPago.FechaCreacion = DateTime.Now;
            CondicionPago.Eliminado     = false;
            accion = 1;
            Text   = "Crear Nueva Condicion de Pago";
        }
Ejemplo n.º 11
0
        private Cliente MapeoCliente(Cliente pCliente, CondicionPago pCondicionPagoDocumentoGenerado, CondicionPago pCondicionPagoTicket,
                                     DiaDePago pDiaDePago, List <ClientePlaca> pClientePlacas, List <DocumentoLibre> pDocumentosLibre,
                                     ClienteLimiteCredito pClienteLimiteCredito)

        {
            var cliente = new Cliente();

            cliente = pCliente;

            cliente.EstablecerCondicionPagoDocumentoGeneradoDeCliente(pCondicionPagoDocumentoGenerado);
            cliente.EstablecerCondicionPagoTicketDeCliente(pCondicionPagoTicket);
            cliente.EstablecerDiaDePagoDeCliente(pDiaDePago);

            if (pClientePlacas != null && pClientePlacas.Any())
            {
                foreach (var clientePlaca in pClientePlacas)
                {
                    cliente.AgregarNuevoClientePlaca(clientePlaca.DescripcionPlaca);
                }
            }

            if (pDocumentosLibre != null && pDocumentosLibre.Any())
            {
                foreach (var documentoLibre in pDocumentosLibre)
                {
                    cliente.AgregarNuevoDocumentoLibre(documentoLibre.NumeroDocumentoLibre, documentoLibre.FechaProcesoInicial,
                                                       documentoLibre.FechaProcesoFinal, documentoLibre.TotalLibre,
                                                       documentoLibre.CodigoAlmacen, documentoLibre.CodigoUsuarioDeSistema);
                }
            }

            if (pClienteLimiteCredito != null)
            {
                cliente.AgregarClienteLimiteCredito(pClienteLimiteCredito.PorcentajeLimite, pClienteLimiteCredito.MontoLimite,
                                                    pClienteLimiteCredito.Deuda, pClienteLimiteCredito.PorcentajeExcede, pClienteLimiteCredito.MontoExcedente,
                                                    pClienteLimiteCredito.CodigoAlmacen);
            }


            return(cliente);
        }
Ejemplo n.º 12
0
        public void ObtenerCondicionYTipoPagoDeVenta(string pCodigoTipoDocumentoDeVenta, CondicionPago pCondicionPagoDeVenta, CondicionPago pCondicionPagoDefault,
                                                     TipoPago pTipoPagoDeVenta, TipoPago pTipoPagoDefault, Cliente pCliente,
                                                     ConfiguracionPuntoVenta pConfiguracionPuntoVenta, string pCodigoTipoDocumentoNotaCredito,
                                                     decimal pTotalNacional, bool pEsVentaACuentaPorCobrar, decimal pSaldoDisponibleAdelanto)
        {
            switch (pTipoPagoDeVenta.CodigoTipoPago)
            {
            //Credito
            case EnumTipoPago.CodigoTipoPagoValesCredito:
                //Obtener Condicion de Pago a partir de entidad Cliente
                if (pCondicionPagoDeVenta == null)
                {
                    pCondicionPagoDeVenta = pCondicionPagoDefault;     //Creado Parametro en Setup CondicionPagoDefault

                    if (pCondicionPagoDeVenta == null)
                    {
                        throw new Exception(Mensajes.advertencia_CondicionPagoPorVentasAsociadoAVentaNoExiste);
                    }
                }

                //*** Obtener tipo de documento Nota de Credito
                if (pCodigoTipoDocumentoDeVenta.Trim() != pCodigoTipoDocumentoNotaCredito)
                {
                    // *** este tipo de moneda en verdad se trae desde Configuracion General
                    if (pCliente.CodigoMoneda == pConfiguracionPuntoVenta.CodigoMonedaCaja)
                    {
                        //Verificar limite de credito : Excede limite de credito
                        if (pCliente.ValidarLimiteCredito(pTotalNacional) == true)
                        {
                            if (pCliente.DocumentosLibre != null)
                            {
                                //Parte en que se Inicia el Grabado de Consumo de FP6
                                //Tiene una Opción más de que se le facture al Crédito - .....
                                //// 'DOCUMENTOS LIBRES' que se consideran como venta consumo pago adelantado

                                if (pCliente.DocumentosLibre.FirstOrDefault().TotalLibre >= pTotalNacional)
                                {
                                    //Inserta registro en tabla : OP_DOCUMENTFREEDET
                                    //Actualizar Deuda del Cliente
                                    pCliente.ActualizarDeuda(pTotalNacional);

                                    //Adjuntar Cuentas por Cobrar si pago es al credito
                                    //Obtener Estado de Documento
                                    pEsVentaACuentaPorCobrar = true;
                                }
                                else
                                {
                                    //Setear venta como Efectivo
                                    pTipoPagoDeVenta = pTipoPagoDefault;

                                    if (pTipoPagoDeVenta == null)
                                    {
                                        throw new Exception(Mensajes.advertencia_TipoDePagoAsociadoAVentaNoExiste);
                                    }

                                    throw new ArgumentException(Mensajes.advertencia_ClienteExcedeLimiteCredito);     //Comentado
                                }
                            }
                            else
                            {
                                //Setear venta como Efectivo
                                pTipoPagoDeVenta = pTipoPagoDefault;

                                if (pTipoPagoDeVenta == null)
                                {
                                    throw new Exception(Mensajes.advertencia_TipoDePagoAsociadoAVentaNoExiste);
                                }

                                throw new ArgumentException(Mensajes.advertencia_ClienteExcedeLimiteCredito);     //Comentado
                            }
                        }
                        else
                        {
                            //Actualizar Deuda del Cliente
                            pCliente.ActualizarDeuda(pTotalNacional);

                            //Adjuntar Cuentas por Cobrar si pago es al credito
                            pEsVentaACuentaPorCobrar = true;
                        }
                    }
                }

                break;

            case EnumTipoPago.CodigoTipoPagoContadoAdelantado:      //Adelantado

                if (pCliente.ControlarSaldoDisponible == 1)
                {
                    if (pTotalNacional > pSaldoDisponibleAdelanto)
                    {
                        //Excede el Saldo
                        //nuevaVenta
                        pTipoPagoDeVenta = pTipoPagoDefault;

                        if (pTipoPagoDeVenta == null)
                        {
                            throw new Exception(Mensajes.advertencia_TipoDePagoAsociadoAVentaNoExiste);
                        }
                    }
                }

                break;

            case EnumTipoPago.CodigoTipoPagoOtros:
            case EnumTipoPago.CodigoTipoPagoTarjeta:

                break;
            }
        }
Ejemplo n.º 13
0
        void BtnModificarClick(object sender, EventArgs e)
        {
            switch (int.Parse(faTabStrip1.SelectedItem.Tag.ToString()))
            {
            case 0:
                if (dgvEmpleados.SelectedRows.Count > 0)
                {
                    var emp         = Empleado.FindByID(long.Parse(dgvEmpleados.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmEmpleado = new FrmEmpleado(emp);
                    if (frmEmpleado.ShowDialog() == DialogResult.Yes)
                    {
                        CargarEmpleados();
                    }
                }
                break;

            case 1:
                if (dgvCondicionesPago.SelectedRows.Count > 0)
                {
                    var cp    = CondicionPago.FindByID(long.Parse(dgvCondicionesPago.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmCP = new FrmCondicionPago(cp);
                    if (frmCP.ShowDialog() == DialogResult.Yes)
                    {
                        CargarCondicionesPago();
                    }
                }
                break;

            case 2:
                if (dgvEstado.SelectedRows.Count > 0)
                {
                    var est       = Estado.FindByID(long.Parse(dgvEstado.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmEstado = new FrmEstado(est);
                    if (frmEstado.ShowDialog() == DialogResult.Yes)
                    {
                        CargarEstados();
                    }
                }
                break;

            case 3:
                if (dgvFamilias.SelectedRows.Count > 0)
                {
                    var familia    = Familia.FindByID(long.Parse(dgvFamilias.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmFamilia = new FrmFamilia(familia);
                    if (frmFamilia.ShowDialog() == DialogResult.Yes)
                    {
                        CargarFamilias();
                    }
                }
                break;

            case 4:
                if (dgvUnidadComercial.SelectedRows.Count > 0)
                {
                    var unidad    = UnidadComercial.FindByID(long.Parse(dgvUnidadComercial.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmUnidad = new FrmUnidadComercial(unidad);
                    if (frmUnidad.ShowDialog() == DialogResult.Yes)
                    {
                        CargarUnidadMedida();
                    }
                }
                break;

            case 5:
                if (dgvTarifasIVA.SelectedRows.Count > 0)
                {
                    var iva    = TarifaIVA.FindByID(long.Parse(dgvTarifasIVA.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmIva = new FrmTarifaIVA(iva);
                    if (frmIva.ShowDialog() == DialogResult.Yes)
                    {
                        CargarTarifasIVA();
                    }
                }
                break;

            case 6:
                if (dgvMonedas.SelectedRows.Count > 0)
                {
                    var moneda    = TipoMoneda.FindByID(long.Parse(dgvMonedas.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmMoneda = new FrmTipoMoneda(moneda);
                    if (frmMoneda.ShowDialog() == DialogResult.Yes)
                    {
                        CargarMonedas();
                    }
                }
                break;

            case 7:
                if (dgvBancos.SelectedRows.Count > 0)
                {
                    var banco    = Banco.FindByID(long.Parse(dgvBancos.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmBanco = new FrmBanco(banco);
                    if (frmBanco.ShowDialog() == DialogResult.Yes)
                    {
                        CargarBancos();
                    }
                }
                break;

            case 8:
                if (dgvSecciones.SelectedRows.Count > 0)
                {
                    var seccion    = Seccion.FindByID(long.Parse(dgvSecciones.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmSeccion = new FrmSeccion(seccion);
                    if (frmSeccion.ShowDialog() == DialogResult.Yes)
                    {
                        CargarSecciones();
                    }
                }
                break;

            case 9:
                if (dgvUnidadComercial.SelectedRows.Count > 0)
                {
                    var unidad    = UnidadComercial.FindByID(long.Parse(dgvUnidadComercial.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmUnidad = new FrmUnidadComercial(unidad);
                    if (frmUnidad.ShowDialog() == DialogResult.Yes)
                    {
                        CargarUnidadMedida();
                    }
                }
                break;

            case 10:
                if (dgvCiudades.SelectedRows.Count > 0)
                {
                    var ciudad    = Ciudad.FindByID(long.Parse(dgvCiudades.CurrentRow.Cells["ID"].Value.ToString()));
                    var frmCiudad = new FrmCiudad(ciudad);
                    if (frmCiudad.ShowDialog() == DialogResult.Yes)
                    {
                        CargarCiudades();
                    }
                }
                break;
            }
        }
        public DateTime ObtenerFechaVenceDocumentoCuentaPorCobrar(DateTime pFechaDocumentoVenta, Cliente pCliente,
                                                                  CondicionPago pCondicionPago)
        {
            Dictionary <int, int> DiccionarioDiasSemanaPago = new Dictionary <int, int>();
            DateTime fechaDeVenceDocCC  = new DateTime();
            int      cantidadDiasDelMes = 0;
            int      diaPivot           = 0;

            //Si es que no encontro DiaPagID para el cliente
            if ((pCondicionPago.DiasPago < 0 || pCondicionPago.DiasPago == 0) ||
                (pCliente.CodigoDiaDePago == null || string.IsNullOrEmpty(pCliente.CodigoDiaDePago)))
            {
                fechaDeVenceDocCC = pFechaDocumentoVenta.AddDays(pCondicionPago.DiasPago < 0 ? 0 : pCondicionPago.DiasPago);
            }
            else
            {
                //Verifica si tiene marcado el check de dias de Semana
                fechaDeVenceDocCC = pFechaDocumentoVenta.AddDays(pCondicionPago.DiasPago);

                if (pCliente.DiaDePago.EstadoSemana == -1)
                {
                    int diaSemana = 0;
                    int diasTotal = 0;
                    if (pCliente.DiaDePago.D1Lunes + pCliente.DiaDePago.D2Martes + pCliente.DiaDePago.D3Miercoles +
                        pCliente.DiaDePago.D4Jueves + pCliente.DiaDePago.D5Viernes + pCliente.DiaDePago.D6Sabado +
                        pCliente.DiaDePago.D7Domingo == 0)
                    {
                        return(fechaDeVenceDocCC);
                    }

                    if (pCliente.DiaDePago.D7Domingo == -1)
                    {
                        DiccionarioDiasSemanaPago.Add(1, 0);
                    }
                    if (pCliente.DiaDePago.D1Lunes == -1)
                    {
                        DiccionarioDiasSemanaPago.Add(2, 1);
                    }
                    if (pCliente.DiaDePago.D2Martes == -1)
                    {
                        DiccionarioDiasSemanaPago.Add(3, 2);
                    }
                    if (pCliente.DiaDePago.D3Miercoles == -1)
                    {
                        DiccionarioDiasSemanaPago.Add(4, 3);
                    }
                    if (pCliente.DiaDePago.D4Jueves == -1)
                    {
                        DiccionarioDiasSemanaPago.Add(5, 4);
                    }
                    if (pCliente.DiaDePago.D5Viernes == -1)
                    {
                        DiccionarioDiasSemanaPago.Add(6, 5);
                    }
                    if (pCliente.DiaDePago.D6Sabado == -1)
                    {
                        DiccionarioDiasSemanaPago.Add(7, 6);
                    }

                    //1er Caso, si el día de vencimiento conincide con el día de pago
                    int diaSemanaDeFechaVenceDocCC = Convert.ToInt16(fechaDeVenceDocCC.DayOfWeek) + 1; //por q los dias DayOfWeek empiezan desde Domingo = 0

                    var verificaDiaSemana = DiccionarioDiasSemanaPago.Where(k => k.Key == diaSemanaDeFechaVenceDocCC);
                    if (verificaDiaSemana.Count() != 0)
                    {
                        return(fechaDeVenceDocCC);
                    }

                    //Buscando a la derecha
                    //diasTotal = Convert.ToInt16(DiccionarioDiasSemanaPago.Keys.Min(x => x > diaSemanaDeFechaVenceDocCC));
                    var selMenorDiaSemana = from dia in DiccionarioDiasSemanaPago
                                            where dia.Key > diaSemanaDeFechaVenceDocCC
                                            select dia;
                    var diaMin = new { valorMin = selMenorDiaSemana.Min(k => k.Key) };
                    diasTotal = diaMin.valorMin;

                    //Buscando a la Izquierda
                    if (diasTotal < 0 || diasTotal == 0)
                    {
                        diasTotal = DiccionarioDiasSemanaPago.Keys.Min();

                        fechaDeVenceDocCC =
                            fechaDeVenceDocCC.AddDays(diasTotal + 7 - diaSemanaDeFechaVenceDocCC);
                    }
                    else
                    {
                        fechaDeVenceDocCC = fechaDeVenceDocCC.AddDays(diasTotal - diaSemanaDeFechaVenceDocCC);
                    }
                }
                else
                {
                    /* Para Cuando se implemente dias de pago  >>>>*/
                    //CombinaDia1,CombinaDia2,CombinaDia3,CombinaDia4 deben de ser mayores que cero y
                    //menores<28,los demas dias deben ser considerados fin de mes.
                    if (pCliente.DiaDePago.CombinaDia1 + pCliente.DiaDePago.CombinaDia2 + pCliente.DiaDePago.CombinaDia3 == 0 &&
                        pCliente.DiaDePago.CombinaDia4 == 0)
                    {
                        return(fechaDeVenceDocCC);
                    }

                    DiccionarioDiasSemanaPago.Add(1, (int)pCliente.DiaDePago.CombinaDia1);
                    DiccionarioDiasSemanaPago.Add(2, (int)pCliente.DiaDePago.CombinaDia2);
                    DiccionarioDiasSemanaPago.Add(3, (int)pCliente.DiaDePago.CombinaDia3);
                    if (pCliente.DiaDePago.CombinaDia4 == -1)
                    {
                        DiccionarioDiasSemanaPago.Add(4, 99);
                    }

                    //1er Caso, si el d¡a de vencimiento coincide con el d¡a de pago
                    var dia = fechaDeVenceDocCC.Day;
                    var mes = fechaDeVenceDocCC.Month;
                    var año = fechaDeVenceDocCC.Year;

                    //Calcular la cantidad de dias del mes actual del vencimiento
                    switch (mes)
                    {
                    case 1:
                    case 3:
                    case 5:
                    case 7:
                    case 8:
                    case 10:
                    case 12:
                        cantidadDiasDelMes = 31;
                        break;

                    default:
                        if (mes == 2)
                        {
                            if (año % 4 == 0)
                            {
                                cantidadDiasDelMes = 29;
                            }
                            else
                            {
                                cantidadDiasDelMes = 28;
                            }
                        }
                        else
                        {
                            cantidadDiasDelMes = 30;
                        }
                        break;
                    }


                    var diaVencimiento = DiccionarioDiasSemanaPago.Where(x => x.Value == dia && x.Value != 99);
                    if (diaVencimiento.Count() != 0)
                    {
                        return(fechaDeVenceDocCC);
                    }
                    //FIN 1er Caso, si el dia de vencimiento conincide con un dia de pago

                    //Buscando el min valor, mayor que dia de vencimiento actual
                    ///Buscando a la derecha
                    diaPivot = Convert.ToInt16(DiccionarioDiasSemanaPago.Min(x => x.Value > dia));
                    ///Fin de Buscando a la Derecha

                    if (diaPivot != 0)
                    {
                        //si diapivot=99, entoces vence fin de mes actual
                        if (diaPivot != 99)
                        {
                            fechaDeVenceDocCC = fechaDeVenceDocCC.AddDays(diaPivot - dia);
                        }
                        else
                        {
                            fechaDeVenceDocCC = fechaDeVenceDocCC.AddDays(cantidadDiasDelMes - dia);
                        }
                    }
                    else
                    {
                        //Buscando a la Izquierda
                        diaPivot = Convert.ToInt16(DiccionarioDiasSemanaPago.Values.Min());

                        fechaDeVenceDocCC = fechaDeVenceDocCC.AddMonths(1);
                        fechaDeVenceDocCC = fechaDeVenceDocCC.AddDays(diaPivot - dia);
                    }
                }
            }

            return(fechaDeVenceDocCC);
        }
Ejemplo n.º 15
0
        public static Venta CrearVenta(string pNumeroDocumento, DateTime pFechaDocumento, DateTime pFechaProceso,
                                       string pPeriodo, decimal pTotalNacional, decimal pTotalExtranjera,
                                       decimal pSubTotalNacional, decimal pSubTotalExtranjera, decimal pImpuestoIgvNacional,
                                       decimal pImpuestoIGVExtranjera, decimal pImpuestoIscNacional, decimal pImpuestoIscExtranjera,
                                       decimal pTotalNoAfectoNacional, decimal pTotalNoAfectoExtranjera, decimal pTotalAfectoNacional,
                                       decimal pValorVenta, decimal pPorcentajeDescuentoPrimero, decimal pPorcentajeDescuentoSegundo,
                                       decimal pTotalDescuentoNacional, decimal pTotalDescuentoExtranjera, decimal pTotalVueltoNacional,
                                       decimal pTotalVueltoExtranjera, decimal pTotalEfectivoNacional, decimal pTotalEfectivoExtranjera,
                                       string pPlaca, decimal pNumeroVale, decimal pTipoCambio,
                                       bool pProcesadoCierreZ, bool pProcesadoCierreX, int pKilometraje, bool pAfectaInventario,
                                       Moneda pMoneda, ClaseTipoCambio pClaseTipoCambio, Cliente pCliente,
                                       TipoDocumento pTipoDocumento, EstadoDocumento pEstadoDocumento, Vendedor pVendedor,
                                       CondicionPago pCondicionPago, TipoPago pTipoPago, ConfiguracionPuntoVenta pConfiguracionPuntoVenta,
                                       Almacen pAlmacen, TipoNegocio pTipoNegocio, UsuarioSistema pUsuarioSistema)
        {
            var venta = new Venta();

            venta.GenerarNuevaIdentidad();

            venta.NumeroDocumento            = pNumeroDocumento;
            venta.FechaDocumento             = pFechaDocumento;
            venta.FechaProceso               = pFechaProceso;
            venta.Periodo                    = pPeriodo;
            venta.TotalNacional              = pTotalNacional;
            venta.TotalExtranjera            = pTotalExtranjera;
            venta.SubTotalNacional           = pSubTotalNacional;
            venta.SubTotalExtranjera         = pSubTotalExtranjera;
            venta.ImpuestoIgvNacional        = pImpuestoIgvNacional;
            venta.ImpuestoIgvExtranjera      = pImpuestoIGVExtranjera;
            venta.ImpuestoIscNacional        = pImpuestoIscNacional;
            venta.ImpuestoIscExtranjera      = pImpuestoIscExtranjera;
            venta.TotalNoAfectoNacional      = pTotalNoAfectoNacional;
            venta.TotalNoAfectoExtranjera    = pTotalNoAfectoExtranjera;
            venta.TotalAfectoNacional        = pTotalAfectoNacional;
            venta.ValorVenta                 = pValorVenta; //Investigar de donde sale el valor venta ? venta.Subtotalventa
            venta.PorcentajeDescuentoPrimero = pPorcentajeDescuentoPrimero;
            venta.PorcentajeDescuentoSegundo = pPorcentajeDescuentoSegundo;
            venta.TotalDescuentoNacional     = pTotalDescuentoNacional;
            venta.TotalDescuentoExtranjera   = pTotalDescuentoExtranjera;
            venta.TotalVueltoNacional        = pTotalVueltoNacional;
            venta.TotalVueltoExtranjera      = pTotalVueltoExtranjera;
            venta.TotalEfectivoNacional      = pTotalEfectivoNacional;
            venta.TotalEfectivoExtranjera    = pTotalEfectivoExtranjera;
            venta.RucCliente                 = pCliente.Ruc;                 //pRucCliente;
            venta.NombreCompletoCliente      = pCliente.NombresORazonSocial; //pNombreCompletoCliente;
            venta.Placa            = pPlaca;
            venta.NumeroVale       = pNumeroVale;
            venta.TipoCambio       = pTipoCambio;
            venta.ProcesadoCierreZ = pProcesadoCierreZ;
            venta.ProcesadoCierreX = pProcesadoCierreX;
            venta.Kilometraje      = pKilometraje;
            venta.AfectaInventario = pAfectaInventario;

            venta.Habilitar();

            venta.EstablecerMonedaDeVenta(pMoneda);
            venta.EstablecerClaseTipoCambioDeVenta(pClaseTipoCambio);
            venta.EstablecerClienteDeVenta(pCliente);
            venta.EstablecerTipoDocumentoDeVenta(pTipoDocumento);
            venta.EstablecerEstadoDocumentoDeVenta(pEstadoDocumento);
            venta.EstablecerVendedorDeVenta(pVendedor);
            venta.EstablecerCondicionPagoDeVenta(pCondicionPago);
            venta.EstablecerTipoPagoDeVenta(pTipoPago);
            venta.EstablecerConfiguracionPuntoVentaDeVenta(pConfiguracionPuntoVenta);
            venta.EstablecerAlmacenDeVenta(pAlmacen);
            venta.EstablecerTipoNegocioDeVenta(pTipoNegocio);
            venta.EstablecerUsuarioSistemaDeVenta(pUsuarioSistema);

            venta.EstablecerImpuestoIgvDeCliente(pCliente.ImpuestoIgv);

            if (pCliente.ImpuestoIsc != null)
            {
                venta.EstablecerImpuestoIscDeCliente(pCliente.ImpuestoIsc);
            }


            return(venta);
        }
Ejemplo n.º 16
0
 void CargarCondicionesPago()
 {
     dgvCondicionesPago.DataSource = CondicionPago.GetAll();
 }
Ejemplo n.º 17
0
        void BtnEliminarClick(object sender, EventArgs e)
        {
            switch (int.Parse(faTabStrip1.SelectedItem.Tag.ToString()))
            {
            case 0:
                if (dgvEmpleados.SelectedRows.Count > 0)
                {
                    var emp = Empleado.FindByID(long.Parse(dgvEmpleados.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar este empleado?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        emp.Delete();
                        CargarEmpleados();
                    }
                }
                break;

            case 1:
                if (dgvCondicionesPago.SelectedRows.Count > 0)
                {
                    var cp = CondicionPago.FindByID(long.Parse(dgvCondicionesPago.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar este condicion de pago?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        cp.Delete();
                        CargarCondicionesPago();
                    }
                }
                break;

            case 2:
                if (dgvEstado.SelectedRows.Count > 0)
                {
                    var est = Estado.FindByID(long.Parse(dgvEstado.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar este departamento?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        est.Delete();
                        CargarEstados();
                    }
                }
                break;

            case 3:
                if (dgvFamilias.SelectedRows.Count > 0)
                {
                    var fam = Familia.FindByID(long.Parse(dgvEstado.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar esta familia?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        fam.Delete();
                        CargarFamilias();
                    }
                }
                break;

            case 4:
                if (dgvUnidadComercial.SelectedRows.Count > 0)
                {
                    var unidad = UnidadComercial.FindByID(long.Parse(dgvEstado.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar esta unidad de medida?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        unidad.Delete();
                        CargarUnidadMedida();
                    }
                }
                break;

            case 5:
                if (dgvTarifasIVA.SelectedRows.Count > 0)
                {
                    var iva = TarifaIVA.FindByID(long.Parse(dgvTarifasIVA.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar esta tarifa IVA?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        iva.Delete();
                        CargarTarifasIVA();
                    }
                }
                break;

            case 6:
                if (dgvMonedas.SelectedRows.Count > 0)
                {
                    var moneda = TipoMoneda.FindByID(long.Parse(dgvMonedas.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar esta moneda?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        moneda.Delete();
                        CargarMonedas();
                    }
                }
                break;

            case 7:
                if (dgvBancos.SelectedRows.Count > 0)
                {
                    var banco = Banco.FindByID(long.Parse(dgvBancos.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar este banco?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        banco.Delete();
                        CargarBancos();
                    }
                }
                break;

            case 8:
                if (dgvSecciones.SelectedRows.Count > 0)
                {
                    var seccion = Seccion.FindByID(long.Parse(dgvSecciones.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar esta seccion?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        seccion.Delete();
                        CargarSecciones();
                    }
                }
                break;

            case 9:
                if (dgvCiudades.SelectedRows.Count > 0)
                {
                    var ciudad = Ciudad.FindByID(long.Parse(dgvCiudades.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar esta ciudad?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        ciudad.Delete();
                        CargarCiudades();
                    }
                }
                break;

            case 10:
                if (dgvPaises.SelectedRows.Count > 0)
                {
                    var pais = Pais.FindByID(long.Parse(dgvPaises.CurrentRow.Cells["ID"].Value.ToString()));
                    if (MessageBox.Show("Desea eliminar este pais?", Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.Yes)
                    {
                        pais.Delete();
                        CargarPaises();
                    }
                }
                break;
            }
        }
Ejemplo n.º 18
0
        public static ICondicionPago GetCondicionPago()
        {
            CondicionPago condicionPago = new CondicionPago();

            return((ICondicionPago)condicionPago);
        }
Ejemplo n.º 19
0
        public Struct_Factura(DataRow dr)
        {
            Id           = int.Parse(dr["Id"].ToString());
            UserId       = int.Parse(dr["IdUser"].ToString());
            serialAFIP   = dr["SerialAFIP"].ToString();
            serialTICKET = dr["SerialTICKET"].ToString();
            printed      = Data2.Statics.Conversion.convertSQLToBoolean(dr["Printed"]);
            PrintAgain   = Data2.Statics.Conversion.convertSQLToBoolean(dr["PrintAgain"]);
            Transmitida  = Data2.Statics.Conversion.convertSQLToBoolean(dr["Transmitida"]);
            Fecha        = DateTime.Parse(dr["Fecha"].ToString());
            switch (dr["Tipo"].ToString())
            {
            case "A": FacturaTipo = TipoDeFactura.FacturaA; break;

            case "B": FacturaTipo = TipoDeFactura.FacturaB; break;

            case "C": FacturaTipo = TipoDeFactura.FacturaC; break;

            case "X": FacturaTipo = TipoDeFactura.FacturaX; break;

            case "P": FacturaTipo = TipoDeFactura.Presupuesto; break;
            }
            senores   = dr["Nombre"].ToString();
            domicilio = dr["Domicilio"].ToString();
            telefono  = dr["Telefono"].ToString();
            localidad = dr["Localidad"].ToString();
            cuit      = dr["Cuit"].ToString();
            if (Conversion.convertSQLToBoolean(dr["RepInsc"]))
            {
                Condicion_IVA = CondicionIVA.RespInscripto;
            }
            if (Conversion.convertSQLToBoolean(dr["RespNoInsc"]))
            {
                Condicion_IVA = CondicionIVA.RespNoInscripto;
            }
            if (Conversion.convertSQLToBoolean(dr["Exento"]))
            {
                Condicion_IVA = CondicionIVA.Exento;
            }
            if (Conversion.convertSQLToBoolean(dr["ConsumidorFinal"]))
            {
                Condicion_IVA = CondicionIVA.ConsumidorFinal;
            }
            if (Conversion.convertSQLToBoolean(dr["RespMonotributo"]))
            {
                Condicion_IVA = CondicionIVA.RespMonotributo;
            }
            if (Conversion.convertSQLToBoolean(dr["Contado"]))
            {
                Pago = CondicionPago.Contado;
            }
            if (Conversion.convertSQLToBoolean(dr["CtaCte"]))
            {
                Pago = CondicionPago.CtaCte;
            }
            IdCuentaCorriente = int.Parse(dr["IdCtaCte"].ToString());
            if (Conversion.convertSQLToBoolean(dr["Cheque"]))
            {
                cheque = true;
            }
            DNI           = dr["Dni"].ToString();
            IdTarjeta     = int.Parse(dr["Idtargeta"].ToString());
            NumeroTarjeta = dr["NumeroTarjeta"].ToString();
            Observaciones = dr["Observaciones"].ToString();
            subtotal      = Conversion.GetDecimal(dr["SubTotal"].ToString());
            ivas          = Conversion.convertSQLToBoolean(dr["Ivas"]);
            total         = Conversion.GetDecimal(dr["Total"].ToString());

            CargarDetalleDesdeDB();
        }