예제 #1
0
        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;
            }
        }
예제 #2
0
        public static List <XElement> Buscar(List <XElement> elemento, string LocalName)
        {
            if (elemento?.Elements().Any() == true)
            {
                return(elemento.Elements().Where(i => ValidarItemXML.Validar(i.Name.LocalName, LocalName)).ToList());
            }

            return(new List <XElement>());
        }
예제 #3
0
        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;
        }
예제 #4
0
        public VisualStudioModel(List <XMLNodoEntity> lstNodos)
        {
            try
            {
                Packages     = new List <PackagesEntity>();
                ValuesConfig = new List <ConfigEntity>();

                if (ValidarTipoNodo.Existe(out XMLNodoEntity nodo, Sistema.Nodo.VisualStudio, lstNodos))
                {
                    VisualStudio = new VisualStudioEntity(nodo);

                    XMLNodoEntity config;
                    if (ValidarTipoNodo.Existe(out config, Sistema.Nodo.Config, lstNodos))
                    {
                        var conexion = BuscarValueXML.Buscar(config?.connectionStrings, "connectionString", Sistema.Nivel.ElementroAtributo);

                        if (config?.appSettings?.Elements()?.Any() == true)
                        {
                            ValuesConfig.AddRange(from XElement item in config.appSettings.Elements()
                                                  where ValidarItemXML.Validar(item.Name.LocalName, "add")
                                                  select new ConfigEntity(item, conexion));
                        }
                    }

                    XMLNodoEntity Pack;
                    if (ValidarTipoNodo.Existe(out Pack, Sistema.Nodo.Nuget, lstNodos))
                    {
                        var package = Pack?.Nugets?.Elements().Where(p => ValidarItemXML.Validar(p.Name.LocalName, "package")).ToList();
                        Packages.AddRange(from XElement pack in package select new PackagesEntity(pack));
                    }
                }
            }
            catch (Exception ex)
            {
                Error = ex;
            }
        }
 public static List <XElement> ObtenerLista(XDocument xml, string Nodo) => xml?.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, Nodo)).ToList() ?? new List <XElement>();
 public static XElement ObtenerEntity(XElement xml, string Nodo) => xml?.Descendants().Where(e => ValidarItemXML.Validar(e.Name.LocalName, Nodo)).FirstOrDefault();