public ServiciosPlataformasTecnologicasModel(List <XMLNodoEntity> lstNodos) : base(lstNodos) { try { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.ServiciosPlataformasTecnologicas); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.ServiciosPlataformasTecnologicas); ServiciosPlataformasTecnologicas = new ServiciosPlataformasTecnologicasEntity(nodo?.PlataformasTecnologicas); Retenciones = new RetencionesSPTEntity(lstNodos); ImpuestosRetenidos = new ImpuestosRetenidosEntity(lstNodos); Periodo = new PeriodoEntity(lstNodos); var DetallesDelServicio = nodo?.Servicios.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, "DetallesDelServicio")).ToList(); ServiciosDetalles = new List <DetallesServicioEntity>(); if (DetallesDelServicio?.Any() == true) { nodo?.lstServicios.AddRange(from XElement item in DetallesDelServicio select new DetalleServicioSPTModel( item, item.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, "ImpuestosTrasladadosdelServicio")).ToList(), item.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, "ContribucionGubernamental")).FirstOrDefault(), item.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, "ComisionDelServicio")).FirstOrDefault() )); ServiciosDetalles.AddRange(from DetalleServicioSPTModel item in nodo.lstServicios select new DetallesServicioEntity(item)); } } catch (System.Exception ex) { Error = ex; } }
public XSDModel(List <XMLNodoEntity> nodos) { try { XMLNodoEntity nodo = nodos.Find(i => i.TipoNodo == Sistema.Nodo.xsd); Elementos = new List <ElementoEntity>(); var prefix = nodo?.NodoRaiz.GetNamespaceOfPrefix("xs"); ElementoEntity elementoRoot = new ElementoEntity(nodo?.NodoRaiz.Element(prefix + "complexType").Elements(), nodo?.NodoRaiz); Elementos.Add(elementoRoot); var subitems = nodo?.NodoRaiz.Element(prefix + "complexType")?.Element(prefix + "sequence")?.Elements(); if (subitems != null) { foreach (var item in subitems) { ElementoEntity elemento = new ElementoEntity(item.Element(prefix + "complexType").Elements(), item); Elementos.Add(elemento); } } } catch (Exception ex) { Error = ex; } }
public NominaModel(List <XMLNodoEntity> nodos) : base(nodos) { try { XMLNodoEntity nodo = nodos.Find(i => i.TipoNodo == Sistema.Nodo.Nomina); existeNodo = nodos.Exists(i => i.TipoNodo == Sistema.Nodo.Nomina); Nomina = new NominaEntity(nodo?.Nomina); Concepto = new ConceptoEntity(nodos); Comprobante = new ComprobanteEntity(nodos); Deducciones = new List <DeduccionesEntity>(); Percepciones = new List <PercepcionesEntity>(); if (nodo?.Percepcion.Elements().Any() == true) { Percepciones.AddRange(from XElement item in nodo?.Percepcion.Elements() select new PercepcionesEntity(nodo?.Percepcion, item)); } if (nodo?.Deducciones.Elements().Any() == true) { Deducciones.AddRange(from XElement item in nodo?.Deducciones.Elements() select new DeduccionesEntity(nodo?.Deducciones, item)); } } catch (System.Exception ex) { Error = ex; } }
public TimbreEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.Timbre); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.Timbre); uuid = BuscarValueXML.Buscar(nodo?.Timbre, "uuid"); fechatimbrado = BuscarValueXML.Buscar(nodo?.Timbre, "fechatimbrado"); }
public PeriodoEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.Periodo); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.Periodo); MesInicial = BuscarValueXML.Buscar(nodo?.Periodo, "MesIni"); MesFin = BuscarValueXML.Buscar(nodo?.Periodo, "MesFin"); Ejercicio = BuscarValueXML.Buscar(nodo?.Periodo, "Ejerc"); }
public RetencionesSPTEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.RetencionesSPT); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.RetencionesSPT); Version = nodo?.NodoRaiz?.Attribute("Version").Value; CveRetencion = nodo?.NodoRaiz?.Attribute("CveRetenc").Value; FolioInt = nodo?.NodoRaiz?.Attribute("FolioInt").Value; Sello = nodo?.NodoRaiz?.Attribute("Sello").Value; NumeroCertificado = nodo?.NodoRaiz?.Attribute("NumCert").Value; Certificado = nodo?.NodoRaiz?.Attribute("Cert").Value; FechaExpedicion = nodo?.NodoRaiz?.Attribute("FechaExp").Value; }
public ConceptoEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.Concepto); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.Concepto); ClaveProductorServicio = BuscarValueXML.Buscar(nodo?.Concepto, "ClaveProdServ", Sistema.Nivel.ElementroAtributo); Cantidad = BuscarValueXML.Buscar(nodo?.Concepto, "cantidad", Sistema.Nivel.ElementroAtributo); ClaveUnidad = BuscarValueXML.Buscar(nodo?.Concepto, "ClaveUnidad", Sistema.Nivel.ElementroAtributo); Descripcion = BuscarValueXML.Buscar(nodo?.Concepto, "descripcion", Sistema.Nivel.ElementroAtributo); ValorUnitario = BuscarValueXML.Buscar(nodo?.Concepto, "valorunitario", Sistema.Nivel.ElementroAtributo); Importe = BuscarValueXML.Buscar(nodo?.Concepto, "importe", Sistema.Nivel.ElementroAtributo); Descuento = BuscarValueXML.Buscar(nodo?.Concepto, "Descuento", Sistema.Nivel.ElementroAtributo); }
public ImpuestosRetenidosEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.TotalSPT); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.TotalSPT); MontoTotalOperacion = BuscarValueXML.Buscar(nodo?.Totales, "montoTotOperacion"); MontoTotalGravado = BuscarValueXML.Buscar(nodo?.Totales, "montoTotGrav"); MontoTotalExento = BuscarValueXML.Buscar(nodo?.Totales, "montoTotExent"); MontoTotalRetenido = BuscarValueXML.Buscar(nodo?.Totales, "montoTotRet"); Importes = new List <ImportesRetenidosEntity>(); if (nodo?.ImportesRetenidos.Any() == true) { Importes.AddRange(from XElement item in nodo.ImportesRetenidos select new ImportesRetenidosEntity(item)); } }
public VisualStudioEntity(XMLNodoEntity nodo) { AssemblyName = BuscarValueXML.Buscar(nodo?.PropertyGroup, "AssemblyName"); TargetFrameworkVersion = BuscarValueXML.Buscar(nodo?.PropertyGroup, "TargetFrameworkVersion"); PlatformTarget = BuscarValueXML.Buscar(nodo?.PropertyGroup, "PlatformTarget"); var item = BuscarElementosXML.Buscar(nodo?.ItemGroup, "ProjectReference"); Proyectos = new List <string>(); if (item?.Any() == true) { Proyectos.AddRange(from XElement x in item.Elements() where ValidarItemXML.Validar(x.Name.LocalName, "Name") select BuscarValueXML.Buscar(x, "Name", Sistema.Nivel.Raiz)); } TotalDependencias = Proyectos.Count; }
public EmisorEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.Emisor); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.Emisor); RFC = BuscarValueXML.Buscar(nodo?.Emisor, "Rfc"); if (string.IsNullOrWhiteSpace(RFC)) { RFC = BuscarValueXML.Buscar(nodo?.Emisor, "RFCEmisor"); } Nombre = BuscarValueXML.Buscar(nodo?.Emisor, "Nombre"); if (string.IsNullOrWhiteSpace(Nombre)) { Nombre = BuscarValueXML.Buscar(nodo?.Emisor, "NomDenRazSocE"); } }
public TrasladoEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.Traslado); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.Traslado); Tasa = string.Empty; TasaOCuota = BuscarValueXML.Buscar(nodo?.Traslado, "tasaocuota"); if (string.IsNullOrWhiteSpace(TasaOCuota)) { Tasa = BuscarValueXML.Buscar(nodo?.Traslado, "tasa"); } TotalImpuestosTrasladados = BuscarValueXML.Buscar(nodo?.Impuestos, "totalimpuestostrasladados"); ImpuestoTraslado = BuscarValueXML.Buscar(nodo?.Traslado, "impuesto"); ImporteTraslado = BuscarValueXML.Buscar(nodo?.Traslado, "importe"); TotalImpuestosRetenidos = BuscarValueXML.Buscar(nodo?.Impuestos, "totalimpuestosretenidos"); ImpuestoRetencion = BuscarValueXML.Buscar(nodo?.Retencion, "impuesto"); ImporteRetencion = BuscarValueXML.Buscar(nodo?.Retencion, "importe"); }
public ReceptorEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.Receptor); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.Receptor); Nacionalidad = BuscarValueXML.Buscar(nodo?.Receptor, "Nacionalidad"); RFC = BuscarValueXML.Buscar(nodo?.Nacional, "RFCRecep"); if (string.IsNullOrWhiteSpace(RFC)) { RFC = BuscarValueXML.Buscar(nodo?.Receptor, "Rfc"); } Nombre = BuscarValueXML.Buscar(nodo?.Nacional, "NomDenRazSocR"); if (string.IsNullOrWhiteSpace(Nombre)) { Nombre = BuscarValueXML.Buscar(nodo?.Receptor, "Nombre"); } CURP = BuscarValueXML.Buscar(nodo?.Nacional, "CURPR"); UsoCFDI = BuscarValueXML.Buscar(nodo?.Receptor, "UsoCFDI"); }
public ComprobanteEntity(List <XMLNodoEntity> lstNodos) { XMLNodoEntity nodo = lstNodos.Find(i => i.TipoNodo == Sistema.Nodo.Comprobante); existeNodo = lstNodos.Exists(i => i.TipoNodo == Sistema.Nodo.Comprobante); Fecha = BuscarValueXML.Buscar(nodo?.Comprobante, "fecha"); TipoDeComprobante = BuscarValueXML.Buscar(nodo?.Comprobante, "tipodecomprobante"); Version = BuscarValueXML.Buscar(nodo?.Comprobante, "version"); SubTotal = BuscarValueXML.Buscar(nodo?.Comprobante, "subtotal"); Descuento = BuscarValueXML.Buscar(nodo?.Comprobante, "descuento"); TipoCambio = BuscarValueXML.Buscar(nodo?.Comprobante, "tipocambio"); Moneda = BuscarValueXML.Buscar(nodo?.Comprobante, "moneda"); Total = BuscarValueXML.Buscar(nodo?.Comprobante, "total"); Version = BuscarValueXML.Buscar(nodo?.Comprobante, "Version"); MetodoPago = BuscarValueXML.Buscar(nodo?.Comprobante, "MetodoPago"); FormaPago = BuscarValueXML.Buscar(nodo?.Comprobante, "FormaPago"); NoCertificado = BuscarValueXML.Buscar(nodo?.Comprobante, "NoCertificado"); Certificado = BuscarValueXML.Buscar(nodo?.Comprobante, "Certificado"); Sello = BuscarValueXML.Buscar(nodo?.Comprobante, "Sello"); Folio = BuscarValueXML.Buscar(nodo?.Comprobante, "Folio"); Serie = BuscarValueXML.Buscar(nodo?.Comprobante, "Serie"); LugarExpedicion = BuscarValueXML.Buscar(nodo?.Comprobante, "LugarExpedicion"); }
public static bool Existe(out XMLNodoEntity nodo, Sistema.Nodo tipo, List <XMLNodoEntity> lstNodos) { nodo = lstNodos?.Find(i => i.TipoNodo == tipo) ?? new XMLNodoEntity(); return(lstNodos?.Exists(i => i.TipoNodo == tipo) == true); }