コード例 #1
0
ファイル: Struct_Factura.cs プロジェクト: dchaves80/gestion
 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;
 }
コード例 #2
0
        private void dgv_clientes_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            Gestion_de_Clientes gestion = new Gestion_de_Clientes();

            gestion._estado = estados.modificar;

            Provincia prov = new Provincia()
            {
                idProvincia = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["idprovincia"].Value
            };
            Localidad loc = new Localidad()
            {
                codPostal = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["idlocalidad"].Value,
                Provincia = prov
            };
            TipoDocumento tipo = new TipoDocumento()
            {
                IDTipoDoc = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["idtipo"].Value
            };
            CondicionIVA condicio = new CondicionIVA()
            {
                idCondicionIVA = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["idCondicion"].Value
            };
            TipoConsumidor tipoCons = new TipoConsumidor()
            {
                idTipoConsumidor = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["idConsumidor"].Value
            };
            Persona per = new Persona()
            {
                Localidad       = loc,
                TipoDoc         = tipo,
                Apellido        = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["apellido"].Value,
                Barrio          = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["barrio"].Value,
                calle           = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["calle"].Value,
                calle_nro       = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["calleNro"].Value,
                cuil            = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["cuit"].Value,
                depto           = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["depto"].Value,
                mail            = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["mail"].Value,
                Nombre          = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["Nombre"].Value,
                telefono        = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["telefono"].Value,
                RazonSocial     = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["raSocial"].Value,
                NroCliente      = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["nroCli"].Value,
                NroDoc          = (long)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["nroDoc"].Value,
                piso            = (int)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["piso"].Value,
                condicionIVA    = condicio,
                tipoConsumidor  = tipoCons,
                tefefonoCelular = (string)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["celular"].Value,
                Sexo            = (Char)dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["sexo"].Value,
                fechaNAc        = Convert.ToDateTime(dgv_clientes.Rows[dgv_clientes.CurrentRow.Index].Cells["fecha"].Value)
            };

            gestion._persModificar = per;
            gestion._estado        = estados.modificar;
            gestion.ShowDialog();
            cargarGrilla();
        }
コード例 #3
0
ファイル: EpsonPrinter.cs プロジェクト: santiagots/cinderella
 public EpsonPrinter(TipoCliente tipoCliente, CondicionIVA condicionesIVA, decimal porcentajeFacturacion, string nombreYApellido, string direccion, string localidad, string cuit, string comprabanteOriginal, string puntoVentaOrigen, CondicionIVA CondicionIVAOriginal)
 {
     if (MODELO_CONTROLADORA_FISCAL == ModeloControladoraFiscal.TM_U220FII)
     {
         epsonTM = new EpsonTMU220FII(TIPO_CONEXION, tipoCliente, condicionesIVA, porcentajeFacturacion, nombreYApellido, direccion, localidad, cuit, comprabanteOriginal);
     }
     else
     {
         epsonTM = new EpsonTMT900FA(TIPO_CONEXION, tipoCliente, condicionesIVA, porcentajeFacturacion, nombreYApellido, direccion, localidad, cuit, comprabanteOriginal, puntoVentaOrigen, CondicionIVAOriginal);
     }
 }
コード例 #4
0
        private static int ObtenerTipoDocumento(CondicionIVA condicionesIVA)
        {
            switch (condicionesIVA)
            {
            case CondicionIVA.Consumidor_Final:
                return(DNI);

            default:
                return(CUIT);
            }
            ;
        }
コード例 #5
0
        public void AgregarNotaCredito(int puntoVenta, TipoFactura tipoFactura, CondicionIVA condicionesIVA, string nombreYApellido, string direccion, string localidad, string cuit, decimal subTotal, decimal iva, decimal total, List <int> numeroNotaPedido, string cae, DateTime?fechaVencimientoCae)
        {
            if (numeroNotaPedido.Count == 0)
            {
                throw new NegocioException($"Error al registrar la factura. Debe ingresar un número de factura.");
            }
            if (tipoFactura == TipoFactura.Electronica && string.IsNullOrEmpty(cae))
            {
                throw new NegocioException($"Error al registrar la factura. No se encuentra un Codigo CAE.");
            }

            NotaCredito = new NotaCredito(Id, puntoVenta, tipoFactura, condicionesIVA, nombreYApellido, direccion, localidad, cuit, subTotal, iva, total, numeroNotaPedido, cae, fechaVencimientoCae);
        }
コード例 #6
0
        public static List <CondicionIVA> GetAll()
        {
            Acceso ac = new Acceso();


            List <CondicionIVA> condIVA = new List <CondicionIVA>();

            string        sql      = "SELECT idCondicionIVA, nombre FROM CondicionIVA";
            SqlCommand    cmd      = new SqlCommand();
            SqlConnection conexion = new SqlConnection(ac.getCadenaConexion());

            try
            {
                conexion.Open();

                cmd.Connection  = conexion;
                cmd.CommandText = sql;
                cmd.CommandType = CommandType.Text;

                SqlDataReader dr = cmd.ExecuteReader();

                CondicionIVA c;

                while (dr.Read())
                {
                    c = new CondicionIVA();

                    c.idCondicionIVA = Convert.ToInt32(dr["idCondicionIVA"]);
                    c.Nombre         = dr["nombre"].ToString();


                    condIVA.Add(c);
                }
            }
            catch (InvalidOperationException ex)
            {
                throw new ApplicationException(ex.Message);
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error en BD:" + ex.Message);
            }
            finally
            {
                conexion.Close();
            }


            return(condIVA);
        }
コード例 #7
0
        private string obtenerComprobanteOriginal(CondicionIVA condicionIvaOriginal, string puntoVentaOriginal, string comprabanteOriginal)
        {
            string codigoDocumento = string.Empty;

            if (condicionIvaOriginal == CondicionIVA.Responsable_Inscripto)
            {
                codigoDocumento = "081"; //Documento Factura A
            }
            else
            {
                codigoDocumento = "082"; //Documento Factura B
            }
            return($"{codigoDocumento}-{puntoVentaOriginal.PadLeft(5, '0')}-{comprabanteOriginal.PadLeft(8, '0')}");
        }
コード例 #8
0
 internal DocumentoFiscal(long idVenta, int puntoVenta, TipoFactura tipoFactura, CondicionIVA condicionIVA, string nombreYApellido, string direccion, string localidad, string cuit, string cae, DateTime?fechaVencimeintoCae, decimal subTotal, decimal iva, decimal total) : base()
 {
     Id                  = idVenta;
     PuntoVenta          = puntoVenta;
     TipoFactura         = tipoFactura;
     CondicionIVA        = condicionIVA;
     NombreYApellido     = nombreYApellido;
     Direccion           = direccion;
     Localidad           = localidad;
     CUIT                = cuit;
     CAE                 = cae;
     FechaVencimientoCAE = fechaVencimeintoCae;
     SubTotal            = subTotal;
     Iva                 = iva;
     Total               = total;
     Fecha               = DateTime.Now;
 }
コード例 #9
0
        private static int ObtenerNumeroComprobante(CondicionIVA condicionesIVA, TipoDocumentoFiscal tipoDocumentoFiscal, string passwordCertificado, string rutaCertificado)
        {
            try
            {
                Afip.Wsfev1.ServiceSoapClient          serviceClient = new Afip.Wsfev1.ServiceSoapClient();
                Afip.Wsfev1.FERecuperaLastCbteResponse response      = serviceClient.FECompUltimoAutorizado(ObtenerAuth(passwordCertificado, rutaCertificado),
                                                                                                            PUNTO_VENTA,
                                                                                                            ObtenerTipoComprobante(condicionesIVA, tipoDocumentoFiscal));
                VerificarErrorEnRespuesta(response.Errors);

                return(response.CbteNro + 1);
            }
            catch (Exception ex)
            {
                throw new NegocioException($"Error al realizar la facturación. No se pudo obtener el numero de factura.", ex);
            }
        }
コード例 #10
0
        internal decimal ObtenerMontoSegunTipoDeCliente(decimal monto, decimal iva, CondicionIVA condicionIVA)
        {
            switch (condicionIVA)
            {
            case CondicionIVA.Consumidor_Final:
            case CondicionIVA.Monotributo:
            case CondicionIVA.Exento:
                decimal montoSinIva = Monto.ObtenerSinIVA(monto, iva);
                return(montoSinIva);

            case CondicionIVA.Responsable_Inscripto:
                return(monto);

            default:
                throw new InvalidOperationException($"Error al realizar la facturación. Condición IVA no reconocido {condicionIVA.ToString()}");
            }
        }
コード例 #11
0
 private static CbteAsoc[] ObtenerComprobanteAsociado(CondicionIVA condicionIVA, TipoDocumentoFiscal tipoDocumentoFiscal, int puntoVentaOrigen, int numeroConprobanteOrigen)
 {
     if (tipoDocumentoFiscal == TipoDocumentoFiscal.NotaCredito)
     {
         return(new CbteAsoc[] {
             new CbteAsoc
             {
                 Tipo = ObtenerTipoComprobante(condicionIVA, TipoDocumentoFiscal.Factura),
                 PtoVta = puntoVentaOrigen,
                 Nro = numeroConprobanteOrigen
             }
         });
     }
     else
     {
         return(null);
     }
 }
コード例 #12
0
        private List <AfipAlicuotaIvaRequest> ObtenerAfipAlicuotaIvaRequest(CondicionIVA condicionIVA, List <ProductoRequest> Productos, decimal PorcentajeFacturacion)
        {
            List <AfipAlicuotaIvaRequest>            alicuotasIva = new List <AfipAlicuotaIvaRequest>();
            List <IGrouping <IVA, ProductoRequest> > grupos       = Productos.GroupBy(x => x.IVA).ToList();

            foreach (IGrouping <IVA, ProductoRequest> grupo in grupos)
            {
                decimal monto = ObtenerMontoSegunTipoDeCliente(grupo.Sum(y => y.NetoTotal), grupo.Key.Valor, condicionIVA);
                alicuotasIva.Add(new AfipAlicuotaIvaRequest()
                {
                    Codigo   = grupo.Key.Id,
                    Monto    = monto,
                    IvaMonto = monto * grupo.Key.Valor
                });
            }

            return(alicuotasIva);
        }
コード例 #13
0
        private static int ObtenerTipoComprobante(CondicionIVA condicionIVA, TipoDocumentoFiscal tipoDocumentoFiscal)
        {
            if (CONDICION_IVA == CondicionIVA.Monotributo)
            {
                switch (tipoDocumentoFiscal)
                {
                case TipoDocumentoFiscal.Factura:
                    return(FACTURA_C);

                case TipoDocumentoFiscal.NotaCredito:
                    return(NOTA_CREDITO_C);

                default:
                    throw new NegocioException($"Error al realizar la facturación. No se ha podido determinar un tipo de comprobante para el documento fiscal {tipoDocumentoFiscal}.");
                }
                ;
            }
            else
            {
                switch (condicionIVA)
                {
                case CondicionIVA.Responsable_Inscripto when tipoDocumentoFiscal == TipoDocumentoFiscal.Factura:
                    return(FACTURA_A);

                case CondicionIVA.Responsable_Inscripto when tipoDocumentoFiscal == TipoDocumentoFiscal.NotaCredito:
                    return(NOTA_CREDITO_A);

                case CondicionIVA.Consumidor_Final when tipoDocumentoFiscal == TipoDocumentoFiscal.Factura:
                case CondicionIVA.Monotributo when tipoDocumentoFiscal == TipoDocumentoFiscal.Factura:
                case CondicionIVA.Exento when tipoDocumentoFiscal == TipoDocumentoFiscal.Factura:
                    return(FACTURA_B);

                case CondicionIVA.Consumidor_Final when tipoDocumentoFiscal == TipoDocumentoFiscal.NotaCredito:
                case CondicionIVA.Monotributo when tipoDocumentoFiscal == TipoDocumentoFiscal.NotaCredito:
                case CondicionIVA.Exento when tipoDocumentoFiscal == TipoDocumentoFiscal.NotaCredito:
                    return(NOTA_CREDITO_B);

                default:
                    throw new NegocioException($"Error al realizar la facturación. No se ha podido determinar un tipo de comprobante para el tipo de cliente {condicionIVA} y documento fiscal {tipoDocumentoFiscal}.");
                }
                ;
            }
        }
コード例 #14
0
 public void datosPersonales(Localidad loc, string barr, string mail, string tel, int depar, int piso, int nro, string call, string razon, string ape, string nom, string cel, CondicionIVA iva, TipoConsumidor tipocon, DateTime fecha, Char sex)
 {
     localidad   = loc;
     barrio      = barr;
     email       = mail;
     telefono    = tel;
     dpto        = depar;
     pisoPer     = piso;
     nroCalle    = nro;
     razonSocial = razon;
     apellido    = ape;
     nombre      = nom;
     calle       = call;
     celular     = cel;
     condIva     = iva;
     tipoCons    = tipocon;
     fechaNac    = fecha;
     sexo        = sex;
 }
コード例 #15
0
        public List <CondicionIVA> ListarCondicionIVA()
        {
            List <CondicionIVA> ListadoCondicionIVA = new List <CondicionIVA>();

            AccederDatos.AbrirConexion();
            AccederDatos.DefinirTipoComando("SELECT * FROM CondicionesIVA");
            AccederDatos.EjecutarConsulta();
            while (AccederDatos.LectorDatos.Read())
            {
                CondicionIVA unaNuevaCondicionIVA = new CondicionIVA();

                unaNuevaCondicionIVA.CodigoCondicionIVA = (int)AccederDatos.LectorDatos["CodigoCondicionIVA"];
                unaNuevaCondicionIVA.Nombre             = AccederDatos.LectorDatos["NombreCondicionIVA"].ToString();
                ListadoCondicionIVA.Add(unaNuevaCondicionIVA);
            }

            AccederDatos.CerrarConexion();
            return(ListadoCondicionIVA);
        }
コード例 #16
0
        internal string ObtenerResponsableIvaComprador(CondicionIVA condicionesIVA)
        {
            switch (condicionesIVA)
            {
            case CondicionIVA.Consumidor_Final:
                return(CONSUMIDOR_FINAL);

            case CondicionIVA.Monotributo:
                return(MONOTRIBUTISTA);

            case CondicionIVA.Responsable_Inscripto:
                return(RESPONSABLE_INSCRIPTO);

            case CondicionIVA.Exento:
                return(EXENTO);

            default:
                throw new InvalidOperationException($"Error al realizar la facturación. No se pudo obtener la responsabilidad ante IVA, valor de IVA {condicionesIVA.ToString()}");
            }
        }
コード例 #17
0
 public EpsonTMU220FII(string tipoConexionControladora, TipoCliente tipoCliente, CondicionIVA condicionesIVA, decimal porcentajeFacturacion, string nombreYApellido, string direccion, string localidad, string cuit, string comprabanteOriginal)
     : this(tipoConexionControladora, tipoCliente, condicionesIVA, porcentajeFacturacion, nombreYApellido, direccion, localidad, cuit)
 {
     ComprabanteOriginal = comprabanteOriginal;
 }
コード例 #18
0
        internal EpsonTMU220FII(string tipoConexionControladora, TipoCliente tipoCliente, CondicionIVA condicionesIVA, decimal porcentajeFacturacion, string nombreYApellido, string direccion, string localidad, string cuit) :
            this(tipoConexionControladora)
        {
            NombreComprador1    = nombreYApellido;
            NombreComprador2    = "";
            DomicilioComprador1 = direccion;
            DomicilioComprador2 = localidad;
            DomicilioComprador3 = "";
            TasaIva             = TASA_IVA;

            switch (condicionesIVA)
            {
            case CondicionIVA.Consumidor_Final:
                TipoDocumentoComprador   = DNI;
                NumeroDocumentoComprador = cuit;
                ResponsableIvaComprador  = CONSUMIDOR_FINAL;
                break;

            case CondicionIVA.Monotributo:
            case CondicionIVA.Responsable_Inscripto:
            case CondicionIVA.Exento:
            default:
                LineaRemitoAsociados1    = ".";
                TipoDocumentoComprador   = CUIT;
                NumeroDocumentoComprador = cuit;
                ResponsableIvaComprador  = ObtenerResponsableIvaComprador(condicionesIVA);
                break;
            }

            TipoCliente           = tipoCliente;
            PorcentajeFacturacion = porcentajeFacturacion;
        }
コード例 #19
0
 public void UpdateCondicionIVA(CondicionIVA condicionIVA)
 {
     condicionIVARP.Update(condicionIVA);
     condicionIVARP.Save();
 }
コード例 #20
0
 public void AddCondicionIVA(CondicionIVA condicionIVA)
 {
     condicionIVARP.Add(condicionIVA);
     condicionIVARP.Save();
 }
コード例 #21
0
 public void RemoveCondicionIVA(CondicionIVA condicionIVA)
 {
     condicionIVARP.Delete(condicionIVA);
     condicionIVARP.Save();
 }
コード例 #22
0
 public Factura(long idVenta, int puntoVenta, TipoFactura tipoFactura, CondicionIVA condicionIVA, string nombreYApellido, string direccion, string localidad, string cuit, decimal subTotal, decimal iva, decimal total, IEnumerable <int> numeroFactura, string cae, DateTime?fechaVencimientoCae)
     : base(idVenta, puntoVenta, tipoFactura, condicionIVA, nombreYApellido, direccion, localidad, cuit, cae, fechaVencimientoCae, subTotal, iva, total)
 {
     IdVenta       = idVenta;
     NumeroFactura = numeroFactura.Select(x => new NumeroFactura(x, this.Id)).ToList();
 }
コード例 #23
0
        public static Pedido GetById(int id)
        {
            Acceso ac = new Acceso();

            Pedido p = new Pedido();

            SqlCommand cmd = new SqlCommand();
            string     sql = "SELECT * from CONSULTA_PEDIDOS where idPedido=@id";

            cmd.Parameters.AddWithValue("@id", id);
            SqlConnection conexion = new SqlConnection(ac.getCadenaConexion());

            try
            {
                conexion.Open();

                cmd.Connection  = conexion;
                cmd.CommandText = sql;
                cmd.CommandType = CommandType.Text;

                SqlDataReader dr = cmd.ExecuteReader();


                CondicionIVA  ci;
                Persona       c;
                TipoDocumento t;

                while (dr.Read())
                {
                    ci = new CondicionIVA();
                    ci.idCondicionIVA = Convert.ToInt32(dr["iva"]);
                    c = new Persona();
                    t = new TipoDocumento();

                    t.IDTipoDoc       = Convert.ToInt32(dr["idTipoDoc"]);
                    c.idPersona       = Convert.ToInt32(dr["idPersona"]);
                    c.RazonSocial     = dr["razonSocial"].ToString();
                    c.Nombre          = dr["nombre"].ToString();
                    c.Apellido        = dr["apellido"].ToString();
                    c.cuil            = dr["CUIT"].ToString();
                    c.NroDoc          = Convert.ToInt32(dr["nroDocumento"]);
                    c.tefefonoCelular = dr["telefonoCelular"].ToString();
                    c.condicionIVA    = ci;
                    c.TipoDoc         = t;


                    p.idPedido       = Convert.ToInt32(dr["idPedido"]);
                    p.fechaNecesidad = Convert.ToDateTime(dr["fechaNecesidad"]);
                    p.fechaPedido    = Convert.ToDateTime(dr["fechaPedido"]);
                    p.montoTotal     = Convert.ToDouble(dr["total"]);
                    p.nroPedido      = Convert.ToInt32(dr["nroPedido"]);
                    p.dirEntraga     = dr["direccion"].ToString();
                    p.cliente        = c;
                }
            }
            catch (InvalidOperationException ex)
            {
                throw new ApplicationException(ex.Message);
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error en BD: " + ex.Message);
            }
            finally
            {
                conexion.Close();
            }


            return(p);
        }
コード例 #24
0
 public EpsonTMT900FA(string tipoConexionControladora, TipoCliente tipoCliente, CondicionIVA condicionesIVA, decimal porcentajeFacturacion, string nombreYApellido, string direccion, string localidad, string cuit, string comprabanteOriginal, string PuntoVentaOrigen, CondicionIVA CondicionIVAOriginal)
     : this(tipoConexionControladora, tipoCliente, condicionesIVA, porcentajeFacturacion, nombreYApellido, direccion, localidad, cuit)
 {
     LineaRemitoAsociados1 = "";
     ComprabanteOriginal   = obtenerComprobanteOriginal(CondicionIVAOriginal, PuntoVentaOrigen, comprabanteOriginal);
 }
コード例 #25
0
ファイル: VentaItem.cs プロジェクト: santiagots/cinderella
        public decimal TotalCFT(decimal porcentajeFacturacion, TipoCliente tipoCliente, CondicionIVA condicionIva)
        {
            IEnumerable <VentaPago> pagos = ObtenerPagosDeProducto(porcentajeFacturacion, tipoCliente);
            decimal cft = pagos.Sum(x => x.MontoPago.CFT);

            return(CalcularMontoSegunCondicionIva(porcentajeFacturacion, condicionIva, tipoCliente, cft));
        }
コード例 #26
0
ファイル: VentaItem.cs プロジェクト: santiagots/cinderella
 private decimal CalcularMontoSegunCondicionIva(decimal porcentajeFacturacion, CondicionIVA condicionIva, TipoCliente tipoCliente, decimal monto)
 {
     if (tipoCliente == TipoCliente.Minorista)
     {
         return(CalcularMontoSegunCondicionIvaMinorista(porcentajeFacturacion, condicionIva, monto));
     }
     else
     {
         return(CalcularMontoSegunCondicionIvaMayorista(porcentajeFacturacion, condicionIva, monto));
     }
 }
コード例 #27
0
        private void btn_guardar_Click(object sender, EventArgs e)
        {
            if (_estado == estados.nuevo && validarCampos() == true)
            {
                Provincia pro = new Provincia
                {
                    idProvincia = (int)cmb_provincia.SelectedValue,
                    Nombre      = (string)cmb_provincia.SelectedItem.ToString()
                };
                Localidad loc = new Localidad()
                {
                    codPostal = (int)cmb_localidad.SelectedValue,
                    Nombre    = (string)cmb_localidad.SelectedItem.ToString(),
                    Provincia = pro
                };
                TipoConsumidor tc = new TipoConsumidor()
                {
                    idTipoConsumidor = (int)cmd_tipo_cons.SelectedValue
                };
                CondicionIVA iva = new CondicionIVA()
                {
                    idCondicionIVA = (int)cmb_cond_iva.SelectedValue
                };

                string tele = "";
                string cel  = "";
                int    dto  = 0;
                int    pis  = 0;
                int    call = 0;
                Char   sexo = 'O';

                if (!(txt_telefono.Text == "    -"))
                {
                    tele = txt_telefono.Text;
                }
                if (!(txt_celular.Text == "    -"))
                {
                    cel = txt_celular.Text;
                }
                if (!(txt_depto.Text == ""))
                {
                    dto = Convert.ToInt32(txt_depto.Text);
                }
                if (!(txt_piso.Text == ""))
                {
                    pis = Convert.ToInt32(txt_piso.Text);
                }
                if (!(txt_calle_nro.Text == ""))
                {
                    call = Convert.ToInt32(txt_calle_nro.Text);
                }
                if (cmb_sexo.SelectedIndex == 1)
                {
                    sexo = 'H';
                }
                else if (cmb_sexo.SelectedIndex == 2)
                {
                    sexo = 'M';
                }

                gestor.datosPersonales(loc, txt_barrio.Text, txt_mail.Text, tele, dto, pis, call, txt_calle.Text, txt_razon_social.Text, txt_apellido.Text, txt_nombre.Text, cel, iva, tc, dtp_fechaNac.Value, sexo);

                try
                {
                    gestor.confirmar();
                    MessageBox.Show("Registrado con Exito", "Exito", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                    limpiarCampos();
                    btn_guardar.Enabled = false;
                }
                catch (ApplicationException ex)
                {
                    MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                }
            }
            else
            {
                if (_estado == estados.modificar && validarCampos() == true)
                {
                    TipoDocumento tipo = new TipoDocumento()
                    {
                        IDTipoDoc = (int)cmb_tipo_doc.SelectedValue,
                        Nombre    = (string)cmb_tipo_doc.SelectedText
                    };
                    Localidad loc = new Localidad()
                    {
                        codPostal = (int)cmb_localidad.SelectedValue
                    };
                    TipoConsumidor tc = new TipoConsumidor()
                    {
                        idTipoConsumidor = (int)cmd_tipo_cons.SelectedValue
                    };
                    CondicionIVA iva = new CondicionIVA()
                    {
                        idCondicionIVA = (int)cmb_cond_iva.SelectedValue
                    };

                    gestor.datosClienteIngresados(txt_cuit.Text, Convert.ToInt32(txt_nro_doc.Text), tipo);
                    gestor.codigoTomado(_persModificar.NroCliente);
                    string tele;
                    string cel;
                    int    dto  = 0;
                    int    pis  = 0;
                    int    call = 0;
                    char   sexo = 'O';


                    tele = txt_telefono.Text;
                    cel  = txt_celular.Text;
                    dto  = Convert.ToInt32(txt_depto.Text);
                    pis  = Convert.ToInt32(txt_piso.Text);
                    call = Convert.ToInt32(txt_calle_nro.Text);

                    if (cmb_sexo.SelectedIndex == 1)
                    {
                        sexo = 'H';
                    }
                    else if (cmb_sexo.SelectedIndex == 2)
                    {
                        sexo = 'M';
                    }

                    gestor.datosPersonales(loc, txt_barrio.Text, txt_mail.Text, tele, dto, pis, call, txt_calle.Text, txt_razon_social.Text, txt_apellido.Text, txt_nombre.Text, cel, iva, tc, dtp_fechaNac.Value, sexo);

                    try
                    {
                        gestor.modificacionConfirmada();
                        MessageBox.Show("Actualizado con Exito", "Exito", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                        //limpiarCampos();
                        //btn_guardar.Enabled = false;
                        Close();
                        Dispose();
                    }
                    catch (ApplicationException ex)
                    {
                        MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
                    }
                }
            }
        }
コード例 #28
0
ファイル: VentaItem.cs プロジェクト: santiagots/cinderella
        private decimal CalcularMontoSegunCondicionIvaMayorista(decimal porcentajeFacturacion, CondicionIVA condicionIva, decimal monto)
        {
            //A los Excentos y Monotibutistas hay que agregarle el iva dado que los montos que manejan no tiene IVA
            switch (condicionIva)
            {
            case CondicionIVA.Responsable_Inscripto:
                return(monto * porcentajeFacturacion);

            case CondicionIVA.Monotributo:
            case CondicionIVA.Exento:
                decimal montoConIva = Monto.ObtenerConIVA(monto, this.Producto.SubCategoria.IVA.Valor, porcentajeFacturacion);
                return(montoConIva);

            default:
                throw new InvalidOperationException($"Error al realizar la facturación. Condición IVA no reconocido {condicionIva.ToString()}");
            }
        }
コード例 #29
0
        public static List <Persona> GetByFiltroProveedor(Persona per)
        {
            Acceso ac = new Acceso();

            List <Persona> personas = new List <Persona>();
            SqlCommand     cmd      = new SqlCommand();

            string sql = "SELECT * from CONSULTA_CLIENTES";

            sql += " where 1 = 1 and nroCliente = 0 ";


            if (per.Nombre != null)
            {
                sql += " and nombre LIKE @nombre";
                cmd.Parameters.AddWithValue("@nombre", "%" + per.Nombre + "%");
            }
            if (per.Apellido != null)
            {
                sql += " and apellido LIKE @apellido";
                cmd.Parameters.AddWithValue("@apellido", "%" + per.Apellido + "%");
            }
            if (per.RazonSocial != null)
            {
                sql += " and razonSocial LIKE @razon";
                cmd.Parameters.AddWithValue("@razon", "%" + per.RazonSocial + "%");
            }

            if (per.cuil != null)
            {
                sql += " and CUIT like @cuit";
                cmd.Parameters.AddWithValue("@cuit", per.cuil);
            }


            SqlConnection conexion = new SqlConnection(ac.getCadenaConexion());

            try
            {
                conexion.Open();

                cmd.Connection  = conexion;
                cmd.CommandText = sql;
                cmd.CommandType = CommandType.Text;

                SqlDataReader  dr = cmd.ExecuteReader();
                Provincia      pr;
                Persona        p;
                TipoDocumento  td;
                Localidad      l;
                TipoConsumidor tc;
                CondicionIVA   iva;

                while (dr.Read())
                {
                    pr = new Provincia();

                    pr.idProvincia = Convert.ToInt32(dr["idProvincia"]);
                    pr.Nombre      = dr["provincia"].ToString();

                    l = new Localidad();

                    l.codPostal = Convert.ToInt32(dr["codPostal"]);
                    l.Nombre    = dr["localidad"].ToString();
                    l.Provincia = pr;

                    td = new TipoDocumento();

                    td.IDTipoDoc   = Convert.ToInt32(dr["idTipo"]);
                    td.Nombre      = dr["tipoDocumento"].ToString();
                    td.Descripcion = dr["descripcion"].ToString();

                    tc = new TipoConsumidor();
                    tc.idTipoConsumidor = Convert.ToInt32(dr["idTipoConsumidor"]);

                    iva = new CondicionIVA();
                    iva.idCondicionIVA = Convert.ToInt32(dr["idCondicionIVA"]);

                    p = new Persona();

                    p.Apellido        = dr["apellido"].ToString();
                    p.Barrio          = dr["barrio"].ToString();
                    p.calle           = dr["calle"].ToString();
                    p.calle_nro       = Convert.ToInt32(dr["nro"]);
                    p.cuil            = dr["CUIT"].ToString();
                    p.depto           = Convert.ToInt32(dr["depto"]);
                    p.Localidad       = l;
                    p.mail            = dr["email"].ToString();
                    p.Nombre          = dr["nombre"].ToString();
                    p.NroCliente      = Convert.ToInt32(dr["nroCliente"]);
                    p.NroDoc          = Convert.ToInt32(dr["nroDocumento"]);
                    p.NroProveedor    = Convert.ToInt32(dr["nroProveedor"]);
                    p.piso            = Convert.ToInt32(dr["piso"]);
                    p.RazonSocial     = dr["razonSocial"].ToString();
                    p.telefono        = dr["telefonoContacto"].ToString();
                    p.TipoDoc         = td;
                    p.tefefonoCelular = dr["telefonoCelular"].ToString();
                    p.condicionIVA    = iva;
                    p.tipoConsumidor  = tc;
                    p.Sexo            = Convert.ToChar(dr["sexo"]);
                    p.fechaNAc        = Convert.ToDateTime(dr["fechaNac"]);
                    p.idPersona       = Convert.ToInt32(dr["idPersona"]);
                    personas.Add(p);
                }
            }
            catch (InvalidOperationException ex)
            {
                throw new ApplicationException(ex.Message);
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error en BD: " + ex.Message);
            }
            finally
            {
                conexion.Close();
            }


            return(personas);
        }
コード例 #30
0
        //public async Task GenerarComprobante(TipoComprobante tipoComprobante, string fechaComprobante, ConceptosIncluir Conceptos, CondicionIVA Condicion,
        //    TipoDocumento TipoDoc, string NroDocumento, CondicionVenta FormaPago)
        public async Task GenerarComprobante(TipoComprobante tipoComprobante, string fechaComprobante, ConceptosIncluir Conceptos, CondicionIVA Condicion,
                                             TipoDocumento TipoDoc, string NroDocumento, CondicionVenta FormaPago)
        {
            try
            {
                var btnGenerarComprantes = await newPage.QuerySelectorAsync("#btn_gen_cmp > span.ui-button-text");

                if (btnGenerarComprantes != null)
                {
                    await btnGenerarComprantes.ClickAsync();
                }
                else
                {
                    var btnGenerarComprantes2 = await newPage.QuerySelectorAsync("#btn_gen_cmp > span.ui-button-text");

                    await btnGenerarComprantes2.ClickAsync();
                }
                await newPage.WaitForNavigationAsync();

                //selector donde se seleccionan los puntos de venta
                await newPage.SelectAsync("select#puntodeventa", "3");

                await newPage.WaitForSelectorAsync("#universocomprobante > option:nth-child(2)");

                //se selecciona el tipo de comprobante
                switch (tipoComprobante)
                {
                case TipoComprobante.FacturaC:
                    await newPage.SelectAsync("select#universocomprobante", "2");

                    break;

                case TipoComprobante.NotaDebito:
                    await newPage.SelectAsync("select#universocomprobante", "3");

                    break;

                case TipoComprobante.NotaCredito:
                    await newPage.SelectAsync("select#universocomprobante", "4");

                    break;
                }


                //se presona el boton siguiente para pasar al siguiente formulario
                var btnSiguiente = await newPage.QuerySelectorAsync("#contenido > form > input[type=button]:nth-child(4)");

                if (btnSiguiente != null)
                {
                    await btnSiguiente.ClickAsync();
                }
                await newPage.WaitForNavigationAsync();

                var inputFecha = await newPage.QuerySelectorAsync("#fc");

                if (inputFecha != null)
                {
                    //Se ingresa la fecha en el input correspondiente el  formato dd/MM/yyyy
                    await inputFecha.EvaluateFunctionAsync <dynamic>("(el, value) => el.value = value", fechaComprobante);
                }
                if (inputFecha == null)
                {
                    Console.WriteLine("NO funca");
                }

                switch (Conceptos)
                {
                case ConceptosIncluir.Productos:
                    await newPage.SelectAsync("select#idconcepto", "1");

                    break;

                case ConceptosIncluir.Servicios:
                    await newPage.SelectAsync("select#idconcepto", "2");

                    break;

                case ConceptosIncluir.ProducosYServicios:
                    await newPage.SelectAsync("select#idconcepto", "3");

                    break;
                }
                //se presona el boton siguiente para pasar al siguiente formulario
                var btnSiguiente2 = await newPage.QuerySelectorAsync("#contenido > form > input[type=button]:nth-child(4)");

                if (btnSiguiente2 != null)
                {
                    await btnSiguiente2.ClickAsync();
                }

                await newPage.WaitForNavigationAsync();

                //switch case donde se selecciona la condicion del iva del receptor de la factura
                switch (Condicion)
                {
                case CondicionIVA.ConsumidoFinal:
                    await newPage.SelectAsync("select#idivareceptor", "5");

                    break;

                case CondicionIVA.IVAInscripto:
                    await newPage.SelectAsync("select#idivareceptor", "1");

                    break;
                }
                //switch case donde se selecciona el tipo de documento
                switch (TipoDoc)
                {
                case TipoDocumento.DNI:
                    await newPage.SelectAsync("select#idtipodocreceptor", "96");

                    break;

                case TipoDocumento.CUIL:
                    await newPage.SelectAsync("select#idtipodocreceptor", "96");

                    break;

                case TipoDocumento.CUIT:
                    await newPage.SelectAsync("select#idtipodocreceptor", "96");

                    break;
                }

                var inputNroDocumento = await newPage.QuerySelectorAsync("#nrodocreceptor");

                if (inputNroDocumento != null)
                {
                    //Se ingresa la
                    await inputNroDocumento.EvaluateFunctionAsync <dynamic>("(el, value) => el.value = value", NroDocumento);
                }



                string Forma  = "#formadepago";
                string Numero = "1";
                switch (FormaPago)
                {
                case CondicionVenta.Contado:
                    Numero = "1";
                    break;

                case CondicionVenta.TarjetaDebito:
                    Numero = "2";
                    break;

                case CondicionVenta.TarjetaCredito:
                    Numero = "3";
                    break;
                }
                var inputFormaPago = await newPage.QuerySelectorAsync(Forma + Numero);

                if (inputFormaPago != null)
                {
                    await inputFormaPago.ClickAsync();
                }
                else
                {
                    System.Windows.Forms.MessageBox.Show("algo que no esta bien esta mal");
                }

                //se presona el boton siguiente para pasar al siguiente formulario
                var btnSiguiente3 = await newPage.QuerySelectorAsync("#formulario > input[type=button]:nth-child(4)");

                if (btnSiguiente3 != null)
                {
                    await btnSiguiente3.ClickAsync();
                }

                await newPage.WaitForNavigationAsync();



                Console.ReadKey();
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message);

                throw;
            }
        }