//ovdje ce prvo genrisati samostalne treninge, ostalo je isto za datume i id i program id, jedino NOVINA: ime i prezime i id klijenta je 0 private object PutTrainerTrainingsInOrder(List <ClientTrainingDTO> model, DateTime monday, DateTime sunday) { ClientTrainingDTO emptyTraining = new ClientTrainingDTO(); for (int i = 0; i < NUMBER_OF_TRAINING_ROWS; i++) { trainingDescriptions[i] = new ClientTrainingDTO[7]; for (int j = 0; j < NUMBER_OF_DAYS; j++) { emptyTraining = (ClientTrainingDTO)getTrainingByIAndJ(i, j, true, monday, sunday); emptyTraining.TrainingTypeId = 1; //samostalno //budu nule: //emptyTraining.ProgramId = 0; // emptyTraining.Id = 0; //popunjavanje podacima iz baze if (model != null) { trainingDescriptions[i][j] = (ClientTrainingDTO)(model.Where((m) => predicate(m, i)) // Func<TrainingDTO, int, bool> checkDoesMHasTimeLikeI = (m, ii) => predicate(m, ii); .FirstOrDefault(m => m.StartTime.DayOfWeek == getDayOfTheWeekForId(j))); } // inicijalizacija niza odgovarajucim elementom if (trainingDescriptions[i][j] == null) { trainingDescriptions[i][j] = emptyTraining; } } } return(trainingDescriptions); }
public List <ClientTrainingDTO> getTrainerTrainingsInPickedWeek(DateTime Monday) { List <ClientTrainingDTO> trainings; var training_type = 2;// todo Utility.TrainerTrainingType; string queryString = "SELECT t.id as id, t.program_id as program_id, t.training_type_id as training_type_id, t.start_time, t.end_time, t.description as description, c.id as client_id, c.first_name as first_name, c.last_name as last_name FROM training t " + "JOIN program p ON p.id=program_id " + "JOIN client c ON c.id=p.client_id " + " WHERE @training_type = training_type_id AND" + " t.start_time between @monday and @sunday"; using (SqlConnection connection = EstablishingConnection.GetConnection()) { connection.Open(); using (SqlCommand command = new SqlCommand(queryString, connection)) { command.Parameters.AddWithValue("@training_type", training_type); var monday = Monday.Date; var sunday = Monday.AddDays(6); command.Parameters.AddWithValue("@monday", monday); command.Parameters.AddWithValue("@sunday", sunday); SqlDataReader reader = command.ExecuteReader(); trainings = new List <ClientTrainingDTO>(); while (reader.Read()) { ClientTrainingDTO training = new ClientTrainingDTO { Id = (int)reader["id"], //training id ProgramId = (int)reader["program_id"], TrainingTypeId = (int)reader["training_type_id"], StartTime = Convert.ToDateTime(reader["start_time"]), EndTime = Convert.ToDateTime(reader["end_time"]), Description = (string)reader["description"], ClientId = (string)reader["client_id"], FirstName = (string)reader["first_name"], LastName = (string)reader["last_name"] }; trainings.Add(training); } connection.Close(); } return(trainings); } }
//OK private object getTrainingByIAndJ(int i, int j, bool isItClientTraining, DateTime monday, DateTime sunday) { var training = new TrainingDTO(); if (isItClientTraining) { training = new ClientTrainingDTO(); } DateTime dateByJ = getDayOfTheWeekById(j); if (i == 0) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 8, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 9, 0, 0); } else if (i == 1) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 9, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 10, 0, 0); } else if (i == 2) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 10, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 11, 0, 0); } else if (i == 3) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 11, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 12, 0, 0); } else if (i == 4) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 12, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 13, 0, 0); } else if (i == 5) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 13, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 14, 0, 0); } else if (i == 6) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 14, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 15, 0, 0); } else if (i == 7) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 15, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 16, 0, 0); } else if (i == 8) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 16, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 17, 0, 0); } else if (i == 9) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 17, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 18, 0, 0); } else if (i == 10) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 18, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 19, 0, 0); } else if (i == 11) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 19, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 20, 0, 0); } else if (i == 12) { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 20, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 21, 0, 0); } else { training.StartTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 21, 0, 0); training.EndTime = Utility.ChangeTime(getDayOfTheWeekByIdAndGetDateByWeek(j, monday, sunday), 22, 0, 0); } return(training); }