public static List <FuncionesModel> ValidarFunciones(FuncionesListModel model) { List <FuncionesModel> listaVer = model.ListaFunciones; bool esCorrecto = true; var queryFuncion = from obj in listaVer group obj by obj.fechaFuncion into newGFunciones orderby newGFunciones.Key select newGFunciones; foreach (var fGroup in queryFuncion) { List <DateTime> listComp = new List <DateTime>(); foreach (var dFuncion in fGroup) { listComp.Add(dFuncion.horaInicio); } for (int i = 0; i < listComp.Count - 1; i++) { for (int j = i + 1; j < listComp.Count; j++) { if (DateValidationMethods.VerifyDifferentHours(listComp[i], listComp[j]) == 0) { esCorrecto = false; } } } } model.esCorrecto = esCorrecto; return(listaVer); }
public static List <BloqueDeTiempoModel> ValidarBloquesDeTiempoDeVenta(BloqueTiempoListModel model) { //bloquetiempolistmodel tiene los datos en string, hay que crearlo ahora con date List <BloqueDeTiempoModel> listaVer = model.ListaBTM; //quito bloques duplicados listaVer = DateValidationMethods.QuitaDuplicados(listaVer); bool esCorrecto = true; for (int i = 0; i < listaVer.Count - 1; i++) { for (int j = i + 1; j < listaVer.Count; j++) { if (DateValidationMethods.VerifyOverlapDates(listaVer[i].fechaInicio, listaVer[i].fechaFin, listaVer[j].fechaInicio, listaVer[j].fechaFin)) { esCorrecto = false; listaVer[i].razon = "Cruce con bloque de tiempo de venta #" + (j + 1); } } } model.esCorrecto = esCorrecto; return(listaVer); }