// Metodos privados private List <TiemposDia> extraerDiasDeTokens(string[] tokens) { Acceso entrada1 = new Acceso(); Acceso salida1 = new Acceso(); Acceso entrada2 = new Acceso(); Acceso salida2 = new Acceso(); DateTime dia = DateTime.Now; List <TiemposDia> diasList = new List <TiemposDia>(); TiemposDia[] diasInfo = new TiemposDia[tokens.Length]; for (int i = 0; i < tokens.Length; i++) { string[] grupoDia = tokens[i].Split('\n'); entrada1 = new Acceso(); salida1 = new Acceso(); entrada2 = new Acceso(); salida2 = new Acceso(); for (int j = 0; j < grupoDia.Length; j++) { // Separa elementos string[] diaElementos = grupoDia[j].Split(' '); Acceso temp = new Acceso(); // Obtiene la fecha del día if (j == 0) { dia = DateTime.Parse(diaElementos[0]); } if (!diaElementos.Contains("A")) { // En caso de nuevo dia if (j == 0) { temp.Hora = DateTime.Parse(diaElementos[1]); // Asigna status temp.status = diaElementos[4]; // Observaciones if (diaElementos.Length > 5) { temp.observaciones = diaElementos[5]; } } else { temp.Hora = DateTime.Parse(diaElementos[0]); // Asigna status temp.status = diaElementos[3]; // Observaciones if (diaElementos.Length > 4) { temp.observaciones = diaElementos[4]; } } } else { if (j == 0) { // status temp.status = diaElementos[3]; // observaciones if (diaElementos.Length > 4) { string[] observaciones = new string[diaElementos.Length - 4]; Array.Copy(diaElementos, 4, observaciones, 0, observaciones.Length); temp.observaciones = string.Join(" ", observaciones); } } else { // Asigna status temp.status = diaElementos[2]; // Observaciones if (diaElementos.Length > 3) { string[] observaciones = new string[diaElementos.Length - 3]; Array.Copy(diaElementos, 3, observaciones, 0, observaciones.Length); temp.observaciones = string.Join(" ", observaciones); } } } if (diaElementos.Contains("ENTRADA1") || diaElementos.Contains("ENTRADA")) { entrada1 = temp; } else if (diaElementos.Contains("SALIDA1") || diaElementos.Contains("SALIDA")) { salida1 = temp; } else if (diaElementos.Contains("ENTRADA2")) { entrada2 = temp; } else if (diaElementos.Contains("SALIDA2")) { salida2 = temp; } } diasInfo[i] = new TiemposDia(dia, entrada1, salida1, entrada2, salida2); } foreach (TiemposDia t in diasInfo) { diasList.Add(t); } return(diasList); }
public void setDia(TiemposDia nuevoHorario, int index) { this.Dias[index] = nuevoHorario; }