public static Dictionary <string, Categoria> getProductos() { leerXml leer = new leerXml(Globales.GetDataXml("RESPRODUCTOS", TypeUsuario.CadenaXML), "RESPRODUCTOS"); var temp = leer.getElemento("RESPRODUCTOS"); var padre = temp[0]; var categorias = padre.ChildNodes; Categoria objCategoria; Dictionary <string, Categoria> categoriaX = new Dictionary <string, Categoria>(); foreach (XmlNode item in categorias) { objCategoria = new Categoria(); var hijos = item.ChildNodes; objCategoria.id_categoria = hijos[0].InnerText; objCategoria.descripcion = hijos[1].InnerText; objCategoria.st_capt_tel_imp = hijos[2].InnerText; for (int x = 3; x < hijos.Count; x++) { XmlNodeList hijoProductos = hijos[x].ChildNodes; productoCategoria producto = new productoCategoria(); producto.id_proveedor = hijoProductos[0].InnerText; producto.desc_proveedo = hijoProductos[1].InnerText; producto.id = hijoProductos[2].InnerText; producto.descripcion = hijoProductos[3].InnerText; objCategoria.listaProductos.Add(producto); } string nombreNodo = item.Name; categoriaX.Add(hijos[0].InnerText, objCategoria); } return(categoriaX); }
public static Dictionary <string, List <MenuOpciones> > getMenu() { //Menus extras; XmlNodeList temporalHijos = null; string llaveHijoTemporal; List <MenuOpciones> auxMenu5 = null; List <MenuOpciones> aux; bool repetir = true; leerXml leer = new leerXml(Globales.GetDataXml("menupcpayagencias", TypeUsuario.CadenaXML)); var temp = leer.getElemento("menupcpayagencias"); XmlNode padre = temp[0]; Dictionary <string, List <MenuOpciones> > menu = new Dictionary <string, List <MenuOpciones> >(); XmlNode temporalHijo = null; if (Globales.GetDataXml("id_company", TypeUsuario.CadenaXML) == Globales.userSantanderVta) { string nombre2 = "Recompensas,Venta,Venta sin presencia,Reportes,Reimpresión"; string opcion2 = "10111"; auxMenu5 = operacionMenu(opcion2, nombre2, "recompensas"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); if (Globales.GetDataXml("st_tokenizacion", TypeUsuario.CadenaXML).ToUpper() == "1") { nombre2 = "Token"; opcion2 = "1"; auxMenu5 = operacionMenu(opcion2, nombre2, "token"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); if (!(Globales.setReader)) { Globales.setReader = Globales.cpIntegraEMV.dbgSetReader(); } } if (Globales.GetDataXml("activa_cupones", TypeUsuario.CadenaXML) == "1") { nombre2 = "Cupones,Alta cliente,Canjear,Número celular"; opcion2 = "1111"; auxMenu5 = operacionMenu(opcion2, nombre2, "cupones"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); } if (Globales.GetDataXml("st_pague_directo", TypeUsuario.CadenaXML) == "1") { if (!Globales.cpIntegraEMV.chkPp_soportaDUKPT()) { nombre2 = "Pague Directo,Ventas,Reimpresión,Reporte"; opcion2 = "1111"; auxMenu5 = operacionMenu(opcion2, nombre2, "pagueDirecto"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); } } } else { foreach (XmlNode item in padre.ChildNodes) { try { XmlNodeList hijosItem = item.ChildNodes; if (item.Name == "menu5") { temporalHijo = item; //Reacomodar despues continue; } string auxName = item.Name; volver: if (item.Name == "menu10") { if (TypeUsuario.Points2 == "1") { string[] menupoints = Globales.GetDataXml("menu_points2", TypeUsuario.CadenaXML).Split(','); string nombre2 = menupoints[0] + "," + menupoints[1]; string opcion2 = "11"; auxMenu5 = operacionMenu(opcion2, nombre2, "menuPoints"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); } if (Globales.GetDataXml("wallets", TypeUsuario.CadenaXML) == "1") { string nombre2 = "Wallets,Impresión voucher"; string opcion2 = "11"; auxMenu5 = operacionMenu(opcion2, nombre2, "Wallets"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); } if (Globales.cpIntegraEMV.isRecompensas()) { string nombre2 = "Recompensas,Venta,Venta sin presencia,Reportes,Reimpresión"; string opcion2 = "10011"; auxMenu5 = operacionMenu(opcion2, nombre2, "recompensas"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); } if (Globales.GetDataXml("st_tokenizacion", TypeUsuario.CadenaXML).ToUpper() == "1") { string nombre2 = "Token"; string opcion2 = "1"; auxMenu5 = operacionMenu(opcion2, nombre2, "token"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); if (!(Globales.setReader)) { Globales.setReader = Globales.cpIntegraEMV.dbgSetReader(); } } if (Globales.GetDataXml("conectaycobra", TypeUsuario.CadenaXML) == "1" || Globales.GetDataXml("supernegocio", TypeUsuario.CadenaXML) == "1") { string nombre2 = "Reportes,Reportes"; string opcion2 = "11"; auxMenu5 = operacionMenu(opcion2, nombre2, "reportes"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); } if (Globales.GetDataXml("activa_cupones", TypeUsuario.CadenaXML) == "1") { string nombre2 = "Cupones,Alta cliente,Canjear,Número celular"; string opcion2 = "1111"; auxMenu5 = operacionMenu(opcion2, nombre2, "cupones"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); } if (Globales.GetDataXml("st_pague_directo", TypeUsuario.CadenaXML) == "1") { if (!Globales.cpIntegraEMV.chkPp_soportaDUKPT()) { string nombre2 = "Pague Directo,Ventas,Reimpresión,Reporte"; string opcion2 = "1111"; auxMenu5 = operacionMenu(opcion2, nombre2, "pagueDirecto"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); } } temporalHijos = temporalHijo.ChildNodes; auxMenu5 = operacionMenu(temporalHijos[0].InnerText, temporalHijos[1].InnerText, "menu5"); llaveHijoTemporal = auxMenu5.First().nombre; auxMenu5.RemoveAt(0); menu.Add(llaveHijoTemporal, auxMenu5); aux = operacionMenu("11", "Salir,Salir", "menu10"); } else { if (auxName == "menu6") { continue; } if (auxName == "menu8") { hijosItem[0].InnerText += "1"; hijosItem[1].InnerText += ",Reporte Venta de Servicios"; } aux = operacionMenu(hijosItem[0].InnerText, hijosItem[1].InnerText, auxName); } string llave = aux.First().nombre; aux.RemoveAt(0); menu.Add(llave, aux); if (Globales.isAerolinea) { if (repetir) { repetir = false; hijosItem[0].InnerText = hijosItem[0].InnerText.Substring(0, 12) + "00" + hijosItem[0].InnerText.Substring(14); auxName = "menu2"; goto volver; } } } catch { string name = string.Empty; string opcion = string.Empty; XmlNode valor = item; if (valor.Name == "menuprepago") { XmlNodeList nodos = valor.ChildNodes; if (nodos.Count > 0) { XmlNode a1 = item.PreviousSibling; XmlNodeList a2 = a1.ChildNodes; name = a2[1].InnerText.Substring(0, a2[1].InnerText.IndexOf(',')) + ","; opcion = "1"; foreach (XmlNode nodito in nodos) { name += nodito.InnerText + ","; opcion += "1"; } name = name.Substring(0, name.Length - 1); } } List <MenuOpciones> temporal = operacionMenu(opcion, name, "menuprepago"); string llave = temporal.First().nombre; temporal.RemoveAt(0); menu.Add(llave, temporal); } } } return(menu); }