public void ShowAddTrainingGroup(IFormFactory formFactory, ITrainingGroupRepository trainingGroupRepository, ITrainingRepository trainingRepository, ITrainingPeriodRepository trainingPeriodRepository, IMainController mainController) { IAddTrainingGroupForm form = formFactory.CreateAddTrainingGroupForm(); List <Training> trainings = trainingRepository.GetAllTrainings(); List <TrainingPeriod> trainingPeriods = trainingPeriodRepository.GetAllTrainingPeriods().ToList(); // Uklanjanje zauzetih termina s popisa dostupnih termina foreach (TrainingGroup group in trainingGroupRepository.GetAllTrainingGroups()) { foreach (TrainingPeriod trainingPeriod in group.TrainingPeriods) { int index = trainingPeriods.FindIndex(period => period.PeriodId == trainingPeriod.PeriodId); if (index != -1) { trainingPeriods.RemoveAt(index); } } } List <TrainingPeriod> newPeriods = trainingPeriods.Select(item => item).ToList(); form.ShowModal(mainController, trainings, newPeriods); }
public void ShowAddClient(IFormFactory formFactory, ITrainingGroupRepository trainingGroupRepository, IMainController mainController) { IAddClientForm form = formFactory.CreateAddClientForm(); List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups(); form.ShowModal(mainController, trainingGroups); }
public void ShowTrainingGroups(IViewTrainingGroupsForm form, ITrainingGroupRepository trainingGroupRepository, IMainController mainController) { List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups(); Subject subject = (Subject)trainingGroupRepository; subject.Attach((IObserver)form); form.ShowModaless(mainController, trainingGroups); }
public void RemoveTrainingWithName(string trainingName, ITrainingRepository trainingRepository, ITrainingGroupRepository trainingGroupRepository) { List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups(); if (!trainingGroups.Any(group => group.Training.Name == trainingName)) { trainingRepository.RemoveTrainingWithName(trainingName); } else { throw new DependantDataNotDeletableException(); } }
public void ShowEditClient(IFormFactory formFactory, IClientRepository clientRepository, ITrainingGroupRepository trainingGroupRepository, string oib, IMainController mainController) { IEditClientForm form = formFactory.CreateEditClientForm(); Client client = clientRepository.GetClientWithOib(oib); List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups(); form.ShowModal(mainController, client, trainingGroups); }
public void RemoveTrainingPeriodWithId(int periodId, ITrainingPeriodRepository trainingPeriodRepository, ITrainingGroupRepository trainingGroupRepository) { List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups(); if (!trainingGroups.Any(group => group.TrainingPeriods.FindIndex(period => period.PeriodId == periodId) != -1)) { trainingPeriodRepository.RemoveTrainingPeriodWithId(periodId); } else { throw new DependantDataNotDeletableException(); } }