// LEER TRABAJADORES public static Trabajador[] getTrabajadores() // OBTIENE LA BASE DE DATOS DE TRABAJADORES, DEVUELVE UN ARRAY DE TRABAJADORES DE LA EMPRESA { doc = new XmlDocument(); Trabajador trb = null; Trabajador[] trbArray = null; string dni, nombre, apellidos; try { doc.Load(rutaEMP); XmlNodeList listaEmpleados = doc.SelectNodes("Plantilla/Trabajador"); // SELECCIONA LOS NODOS TRABAJADOR DENTRO DEL NODO RAIZ XmlNode unEmpleado; trbArray = new Trabajador[listaEmpleados.Count]; for (int i = 0; i < listaEmpleados.Count; i++) { trb = new Trabajador(); unEmpleado = listaEmpleados.Item(i); dni = Encriptacion.DesEncriptar(unEmpleado.Attributes.GetNamedItem("DNI").InnerText); // OBTIENE EL DNI trb.dni_pre = dni.ToString(); nombre = Encriptacion.DesEncriptar(unEmpleado.SelectSingleNode("Nombre").InnerText); // OBTIENE EL NOMBRE trb.nombre_pre = nombre; apellidos = Encriptacion.DesEncriptar(unEmpleado.SelectSingleNode("Apellidos").InnerText); // OBTIENE EL/LOS APELLIDOS trb.apellidos_pre = apellidos; trbArray[i] = trb; // GUARDA EL TRABAJADOR EN EL ARRAY } } catch (FileNotFoundException) { throw new Exception("Archivo no encontrado"); } catch (ArgumentException) { throw new Exception("El archivo al que trata de acceder esta vacio. Por favor inserte minimo un trabajador."); } catch (XmlException) { throw new Exception("No se ha podido abrir el archivo, revise el contenido."); } return(trbArray); }
// FIN CREAR TRABAJADORES public static Trabajador GetDatosTrabajador(string dni_trb) // DEVUELVE LOS DATOS DE UN TRABAJADOR EN PARTICULAR (PARA MOSTRAROS EN LA NÓMINA) { doc = new XmlDocument(); Trabajador trb = new Trabajador(); string dni = null, nombre = null, apellidos = null; try { doc.Load(rutaEMP); XmlNodeList listaEmpleados = doc.SelectNodes("Plantilla/Trabajador"); // OBTIENE LOS NODOS DE TRABAJADOR XmlNode empleado = null; trb = new Trabajador(); for (int i = 0; i < listaEmpleados.Count; i++) { empleado = listaEmpleados.Item(i); dni = Encriptacion.DesEncriptar(empleado.Attributes.GetNamedItem("DNI").InnerText); if (dni.Equals(dni_trb)) // SI EL DNI DEL TRABAJADOR COINCIDE CON EL PASADO POR PARAMETRO, DEVUELVE LOS DATOS DE ESTE. { trb.dni_pre = dni_trb; nombre = Encriptacion.DesEncriptar(empleado.SelectSingleNode("Nombre").InnerText); // OBTIENE EL NOMBRE trb.nombre_pre = nombre; apellidos = Encriptacion.DesEncriptar(empleado.SelectSingleNode("Apellidos").InnerText); // OBTIENE EL/LOS APELLIDOS trb.apellidos_pre = apellidos; } } return(trb); // DEVUELVE UN OBJETO TRABAJADOR } catch (FileNotFoundException) { throw new Exception("Archivo no encontrado"); } catch (ArgumentException) { throw new Exception("El archivo al que trata de acceder esta vacio. Por favor inserte minimo un trabajador."); } catch (XmlException) { throw new Exception("No se ha podido abrir el archivo, revise el contenido."); } }