public void ReqFEELFactura() { RequestFactura req = new RequestFactura() { Factura = new FacturaEstandar() }; RequestFactura req2 = new RequestFactura() { Factura = new NotaMonedaExtranjera() }; Debug.WriteLine(req.ToString()); Debug.WriteLine(req2.ToString()); }
public ResponseFactura SimulacionFEEL(RequestFactura request) { // Thread.Sleep(500); request.Factura.Cabecera.CUF = "CUFprueba"; ResponseFactura response = new ResponseFactura() { Factura = request.Factura, Proceso = new Proceso() { CodEstado = "123", CodigoTipoFactura = (int)request.Factura.Tipo, CUFD = "CUFDPRUEBA", IdDocFiscalERP = request.IdDocFiscalERP, IdDocFiscalFEEL = request.IdDocFiscalERP }, Respuesta = new Respuesta() { CodRespuesta = "0", TxtRespuesta = "Exito" } }; return(response); }
public void CambiarJsonNAMEprop() { Factura f1 = new FacturaEstandar() { Cabecera = new CabeceraFacturaEstandar() { NumeroFactura = 102, Direccion = "GV", FechaEmision = "20190116180000", CodigoTipoDocumentoIdentidad = "3", CUF = null, NumeroDocumento = "5642111", Complemento = null, CodigoSucursal = 1, CodigoPuntoVenta = 123, NombreRazonSocial = "Juan Perez", MontoTotal = 50.5m, MontoDescuento = 0, CodigoCliente = "55421", CodigoDocumentoSector = 1, NITEmisor = 305080026, CodigoMetodoPago = 1, NumeroTarjeta = 414, Leyenda = "Ley No 453: ", Usuario = "FTL", CodigoMoneda = 1, MontoTotalMoneda = 50.5m, TipoCambio = 6.96m }, //ListaDetalle= new List<Detalle>() }; ((FacturaEstandar)f1).ListaDetalle.Add( new DetalleFacturaEstandar() { ActividadEconomica = 123123, CodigoProductoSIN = 123, CodigoProducto = 123, Descripcion = "coca cola 1 litro", Cantidad = 5, PrecioUnitario = 10.1m, MontoDescuentoDetalle = 0, SubTotal = 50.5m, NumeroSerie = "ABC345", UnidadMedida = "botella" }); Factura f2 = new FacturaAlquiler() { Cabecera = new CabeceraFacturaAlquiler() { NumeroFactura = 102, Direccion = "GV", FechaEmision = "20190116180000", CodigoTipoDocumentoIdentidad = "3", CUF = null, NumeroDocumento = "5642111", Complemento = null, CodigoSucursal = 1, CodigoPuntoVenta = 123, NombreRazonSocial = "Juan Perez", MontoTotal = 50.5m, MontoDescuento = 0, CodigoCliente = "55421", CodigoDocumentoSector = 1, NITEmisor = 305080026, CodigoMetodoPago = 1, PeriodoFacturado = "string", Leyenda = "Ley No 453: ", Usuario = "FTL", CodigoMoneda = 1, MontoTotalMoneda = 50.5m, TipoCambio = 6.96m }, //ListaDetalle = new List<Detalle>() }; f2.ListaDetalle.Add( new Detalle() { ActividadEconomica = 123123, CodigoProductoSIN = 123, CodigoProducto = 123, Descripcion = "coca cola 1 litro", MontoDescuentoDetalle = 0, SubTotal = 50.5m, UnidadMedida = "botella" }); string r1 = @"{ ""respuesta"": null, ""proceso"":null, ""facturaEstandar"": " + f1.ToString() + "}"; string r2 = @"{ ""respuesta"": null, ""proceso"": null, ""facturaAlquiler"": " + f2.ToString() + "}"; string r3 = @"{ ""respuesta"": null, ""proceso"": null, ""fac"": null }"; string r4 = @"{ ""respuesta"": { ""codRespuesta"": ""0"", ""txtRespuesta"": ""Exito"" }, ""proceso"": { ""idDocFiscalFEEL"": 11, ""cufd"": ""42bf9913ec06745b7f3c5cc62b32a59e"", ""codEstado"": ""D1"", ""idDocFiscalERP"": ""3"", ""codigoTipoFactura"": 1 }, ""facturaEstandar"": { ""cabecera"": { ""numeroFactura"": 3, ""direccion"": ""Gualberto villarroel 123"", ""fechaEmision"": 20190101180000, ""codigoTipoDocumentoIdentidad"": 1, ""cuf"": ""B41ECAD147A6BE9D2AD905278126E6FB4B88B3E3"", ""numeroDocumento"": ""5642111"", ""complemento"": """", ""codigoSucursal"": 0, ""nombreRazonSocial"": ""Juan Perez"", ""montoTotal"": 50.5, ""codigoCliente"": ""55421"", ""codigoDocumentoSector"": 1, ""nitEmisor"": 1028305029, ""codigoMetodoPago"": 1, ""leyenda"": ""Ley N° 453: Los medios de comunicación deben promover el respeto de los derechos de los usuarios y consumidores."", ""usuario"": ""FTL"", ""codigoMoneda"": 1, ""montoTotalMoneda"": 50.5, ""tipoCambio"": 6.97, ""numeroTarjeta"": 54321 }, ""detalle"": [ { ""actividadEconomica"": 123123, ""codigoProductoSin"": 123, ""codigoProducto"": ""123"", ""descripcion"": ""coca cola 1 litro"", ""cantidad"": 5, ""precioUnitario"": 10, ""subTotal"": 10, ""numeroSerie"": ""1234567ADC"", ""unidadMedida"": ""botella"" }, { ""actividadEconomica"": 123123, ""codigoProductoSin"": 123, ""codigoProducto"": ""123"", ""descripcion"": ""Fanta 1 litro"", ""cantidad"": 5, ""precioUnitario"": 10, ""subTotal"": 10, ""numeroSerie"": ""1234567ADC"", ""unidadMedida"": ""botella"" } ] } }"; string r5 = @"{ ""respuesta"": { ""codRespuesta"": ""1200"", ""txtRespuesta"": ""Error la facturaEstandar ya se encuentra registrada numeroFactura :3"" } }"; RequestFactura reqq = new RequestFactura() { CodigoTipoFactura = 1, Contingencia = false, Cufd = "42bf9913ec06745b7f3c5cc62b32a59e", EsLote = false, IdDocFiscalERP = "3", IdLoteERP = "", UltFacturaLote = false, Factura = f1 }; Debug.WriteLine(reqq); Debug.WriteLine(JObject.FromObject(reqq).ToString()); ResponseFactura resp4 = new ResponseFactura(r4); Debug.WriteLine(resp4); Debug.WriteLine(((CabeceraFacturaEstandar)resp4.Factura.Cabecera).NumeroTarjeta); ResponseFactura resp5 = new ResponseFactura(r5); Debug.WriteLine(resp5); //ResponseFactura resp1 = JsonConvert.DeserializeObject<ResponseFactura>(r1, HelperJson.AdaptarResponseFactura(r1)); //ResponseFactura resp2 = JsonConvert.DeserializeObject<ResponseFactura>(r2, HelperJson.AdaptarResponseFactura(r2)); ////RequestFactura req3 = JsonConvert.DeserializeObject<RequestFactura>(r3, HelperJson.AdaptarResponseFactura(r3)); //Debug.WriteLine(resp1.Factura.GetType().ToString()); //Debug.WriteLine(resp2.Factura.GetType().ToString()); //Debug.WriteLine((FacturaEstandar)resp1.Factura); //Debug.WriteLine((FacturaAlquiler)resp2.Factura); }
public RequestFactura ArmarFacturaElectronicaJson2(DataRow drCabeceraFactura, DataTable dtDetalleFactura) { string facturaJson = string.Empty; List <Detalle> ListadoDetalleFactura = new List <Detalle>(); RequestFactura requestFactura = new RequestFactura(); //string file = Log.Instancia.GeneraNombreLog(); //file += drCabeceraFactura["fehfeiddf"].ToString(); //nro. correlativo interno. try { Factura factura = FabricaFactura.Fabricar((TipoFactura)int.Parse(drCabeceraFactura["fehfecdse"].ToString())); CargarObjetoFactura(factura.Cabecera, drCabeceraFactura, factura.CamposDB); Detalle detalle = null; foreach (DataRow drDetalleFactura in dtDetalleFactura.Rows) { detalle = FabricaFactura.FabricarDetalle(factura.Tipo); CargarObjetoFactura(detalle, drDetalleFactura, factura.CamposDB); #warning Completar este switch switch (factura.Tipo) { case TipoFactura.facturaEstandar: ((FacturaEstandar)factura).ListaDetalle.Add(detalle as DetalleFacturaEstandar); break; case TipoFactura.facturaColegio: ((FacturaColegio)factura).ListaDetalle.Add(detalle as DetalleFacturaColegio); break; case TipoFactura.facturaAlquiler: ((FacturaAlquiler)factura).ListaDetalle.Add(detalle as DetalleFacturaAlquiler); break; case TipoFactura.facturaCombustible: ((FacturaCombustible)factura).ListaDetalle.Add(detalle as DetalleFacturaCombustible); break; case TipoFactura.facturaServicios: ((FacturaServiciosBasicos)factura).ListaDetalle.Add(detalle as DetalleFacturaServiciosBasicos); break; case TipoFactura.facturaEmbotelladoras: ((FacturaEmbotelladora)factura).ListaDetalle.Add(detalle as DetalleFacturaEmbotelladora); break; case TipoFactura.facturaBancos: ((FacturaBanco)factura).ListaDetalle.Add(detalle as DetalleFacturaBanco); break; case TipoFactura.facturaHoteles: ((FacturaHotel)factura).ListaDetalle.Add(detalle as DetalleFacturaHotel); break; case TipoFactura.facturaHospitales: ((FacturaHospital)factura).ListaDetalle.Add(detalle as DetalleFacturaHospital); break; case TipoFactura.facturaJuegos: ((FacturaJuego)factura).ListaDetalle.Add(detalle as DetalleFacturaJuego); break; case TipoFactura.facturaEspectaculoPublicoInternacional: ((FacturaEspectaculoPublicoInternacional)factura).ListaDetalle.Add(detalle as DetalleFacturaEspectaculoPublicoInternacional); break; case TipoFactura.notaExportacion: ((NotaExportacion)factura).ListaDetalle.Add(detalle as DetalleNotaExportacion); break; case TipoFactura.notaLibreConsignacion: ((NotaLibreConsignacion)factura).ListaDetalle.Add(detalle as DetalleNotaLibreConsignacion); break; case TipoFactura.notaZonaFranca: ((NotaZonaFranca)factura).ListaDetalle.Add(detalle as DetalleNotaZonaFranca); break; case TipoFactura.notaEspectaculoPublicoNacional: ((NotaEspectaculoPublicoNacional)factura).ListaDetalle.Add(detalle as DetalleFacturaEspectaculoPublicoInternacional); break; case TipoFactura.notaSeguridadAlimentaria: ((NotaSeguridadAlimentaria)factura).ListaDetalle.Add(detalle as DetalleNotaSeguridadAlimentaria); break; case TipoFactura.notaMonedaExtranjera: ((NotaMonedaExtranjera)factura).ListaDetalle.Add(detalle as DetalleNotaMonedaExtranjera); break; //case TipoFactura.NOTA_DE_CREDITO_DEBITO: // break; //case TipoFactura.NOTA_DE_CONCILIACION: // break; //case TipoFactura.BOLETO_AEREO: // break; case TipoFactura.notaTurismoReceptivo: ((NotaTurismoReceptivo)factura).ListaDetalle.Add(detalle as DetalleNotaTurismoReceptivo); break; case TipoFactura.notaTasaCero: factura.ListaDetalle.Add(detalle); break; case TipoFactura.facturaHidrocarburos: ((FacturaHidrocarburos)factura).ListaDetalle.Add(detalle as DetalleFacturaHidrocarburos); break; } } requestFactura.Factura = factura; requestFactura.IdDocFiscalERP = drCabeceraFactura["fehfeiddf"].ToString(); requestFactura.Cufd = null; requestFactura.Contingencia = (drCabeceraFactura["fehfecont"].ToString() != "0"); requestFactura.EsLote = (drCabeceraFactura["fehfelote"].ToString() != "0"); requestFactura.IdLoteERP = drCabeceraFactura["fehfeidlo"].ToString(); requestFactura.UltFacturaLote = (drCabeceraFactura["fehfeufac"].ToString() != "0"); requestFactura.CodigoTipoFactura = int.Parse(drCabeceraFactura["fehfectip"].ToString()); } catch (Exception ex) { throw new Exception(ex.Message); //Log.Instancia.LogWS_Mensaje_FSX(file, "Excepción: ArmarFacturaElectronicaJson2(DataTable dtCabezeraFactura, DataTable dtDetalleFactura) \r\n" + // ex.Message); } return(requestFactura); }