private static void GenerarDetalleMonedaLocal(string TipoCbte, FeaEntidades.Turismo.detalle det, System.Collections.Generic.List <FeaEntidades.Turismo.linea> listadelineas, int i, string TipoPtoVta) { det.linea[i].precio_unitarioSpecified = listadelineas[i].precio_unitarioSpecified; det.linea[i].precio_unitario = listadelineas[i].precio_unitario; det.linea[i].importe_total_articulo = listadelineas[i].importe_total_articulo; det.linea[i].importe_ivaSpecified = listadelineas[i].importe_ivaSpecified; det.linea[i].importe_iva = listadelineas[i].importe_iva; }
public FeaEntidades.Turismo.detalle GenerarDetalles(string MonedaComprobante, string TipoDeCambio, string TipoPtoVta, string TipoCbte, bool EsParaImprimirPDF) { FeaEntidades.Turismo.detalle det = new FeaEntidades.Turismo.detalle(); System.Collections.Generic.List <FeaEntidades.Turismo.linea> listadelineas = (System.Collections.Generic.List <FeaEntidades.Turismo.linea>)ViewState["lineas"]; for (int i = 0; i < listadelineas.Count; i++) { det.linea[i] = new FeaEntidades.Turismo.linea(); det.linea[i].numeroLinea = i + 1; if (listadelineas[i].descripcion == null) { throw new Exception("Debe informar al menos un artículo"); } string textoSinSaltoDeLinea = listadelineas[i].descripcion.Replace("\n", "<br>").Replace("\r", string.Empty); det.linea[i].descripcion = textoSinSaltoDeLinea; GenerarDetallesAlicuotaIVA(TipoPtoVta, TipoCbte, det, listadelineas, i); if (!listadelineas[i].unidad.Equals(Convert.ToString(new FeaEntidades.CodigosUnidad.SinInformar().Codigo))) { det.linea[i].unidad = listadelineas[i].unidad; } det.linea[i].codigo_Turismo = listadelineas[i].codigo_Turismo; det.linea[i].cantidad = listadelineas[i].cantidad; det.linea[i].cantidadSpecified = listadelineas[i].cantidadSpecified; det.linea[i].GTIN = listadelineas[i].GTIN; det.linea[i].GTINSpecified = listadelineas[i].GTINSpecified; det.linea[i].codigo_producto_comprador = listadelineas[i].codigo_producto_comprador; det.linea[i].codigo_producto_vendedor = listadelineas[i].codigo_producto_vendedor; GenerarDetallesIndExGravado(TipoPtoVta, TipoCbte, det, listadelineas, i); if (MonedaComprobante.Equals(FeaEntidades.CodigosMoneda.CodigoMoneda.Local)) { GenerarDetalleMonedaLocal(TipoCbte, det, listadelineas, i, TipoPtoVta); } else { GenerarDetalleMonedaExtranjera(TipoDeCambio, TipoCbte, det, listadelineas, i, TipoPtoVta); } } return(det); }
private static void GenerarDetallesAlicuotaIVA(string TipoPtoVta, string TipoCbte, FeaEntidades.Turismo.detalle det, System.Collections.Generic.List <FeaEntidades.Turismo.linea> listadelineas, int i) { if (listadelineas[i].alicuota_iva.Equals(new FeaEntidades.IVA.SinInformar().Codigo)) { //throw new Exception("La alícuota de IVA es obligatoria"); det.linea[i].alicuota_ivaSpecified = listadelineas[i].alicuota_ivaSpecified; det.linea[i].alicuota_iva = listadelineas[i].alicuota_iva; } else { det.linea[i].alicuota_ivaSpecified = listadelineas[i].alicuota_ivaSpecified; det.linea[i].alicuota_iva = listadelineas[i].alicuota_iva; } }
private static void GenerarDetallesIndExGravado(string TipoPtoVta, string TipoCbte, FeaEntidades.Turismo.detalle det, System.Collections.Generic.List <FeaEntidades.Turismo.linea> listadelineas, int i) { if (listadelineas[i].indicacion_exento_gravado != null) { if (!listadelineas[i].indicacion_exento_gravado.Equals(string.Empty)) { det.linea[i].indicacion_exento_gravado = listadelineas[i].indicacion_exento_gravado; } } }
private static void GenerarDetalleMonedaExtranjera(string TipoDeCambio, string TipoCbte, FeaEntidades.Turismo.detalle det, System.Collections.Generic.List <FeaEntidades.Turismo.linea> listadelineas, int i, string TipoPtoVta) { det.linea[i].precio_unitarioSpecified = listadelineas[i].precio_unitarioSpecified; det.linea[i].importe_iva = Math.Round(listadelineas[i].importe_iva * Convert.ToDouble(TipoDeCambio), 2); det.linea[i].importe_ivaSpecified = listadelineas[i].alicuota_ivaSpecified; det.linea[i].precio_unitario = Math.Round(listadelineas[i].precio_unitario * Convert.ToDouble(TipoDeCambio), 3); det.linea[i].importe_total_articulo = Math.Round(listadelineas[i].importe_total_articulo * Convert.ToDouble(TipoDeCambio), 2); FeaEntidades.InterFacturas.lineaImportes_moneda_origen limo = new FeaEntidades.InterFacturas.lineaImportes_moneda_origen(); limo.importe_total_articuloSpecified = true; limo.precio_unitarioSpecified = listadelineas[i].precio_unitarioSpecified; limo.importe_ivaSpecified = listadelineas[i].importe_ivaSpecified; limo.importe_iva = listadelineas[i].importe_iva; limo.precio_unitario = listadelineas[i].precio_unitario; limo.importe_total_articulo = listadelineas[i].importe_total_articulo; det.linea[i].importes_moneda_origen = limo; }