/// <summary> /// Перегрузка для работы с SingleVisit Гостевым и диспетчером абонементов. Костыль по факту /// </summary> /// <param name="optionsWorkout"></param> /// <param name="abonement"></param> /// <param name="personName"></param> /// <returns></returns> public static DialogResult RunWorkoutOptionsSingleForm(ref WorkoutOptions optionsWorkout, AbonementBasic abonement, string personName) { if (abonement == null) { return(DialogResult.Cancel); } optionsWorkout.TypeWorkout = abonement.TypeWorkout; // Значение по умолчанию if (abonement is SingleVisit && abonement.TypeWorkout == TypeWorkout.Тренажерный_Зал) { return(DialogResult.OK); } // если не вышли , то запуск формы опций var workoutForm = new WorkoutForm(personName); var dlgReult = workoutForm.ShowDialog(); if (dlgReult == DialogResult.OK) { optionsWorkout = workoutForm.SelectedOptions; } return(dlgReult); }
/// <summary> /// Возвращает DialogResult.OK Если успешно всё выбрали /// </summary> public static DialogResult RunWorkoutOptionsForm(ref WorkoutOptions optionsWorkout, string personName) { // Если нет Персональных или Аэробных тренировок - не выводить окно выбора тренировок. По умолчанию отмечается Тренажерный зал var abon = PersonObject.GetLink(personName)?.AbonementCurent; if (abon == null) { return(DialogResult.Cancel); } optionsWorkout.TypeWorkout = abon.TypeWorkout; // Значение по умолчанию // установка праметров и выход в свитче switch (abon) { case ClubCardA clubCardA: { if (clubCardA.NumPersonalTr == 0 && clubCardA.NumAerobicTr == 0 && clubCardA.NumMiniGroup == 0) { optionsWorkout.TypeWorkout = TypeWorkout.Тренажерный_Зал; return(DialogResult.OK); } break; } case AbonementByDays byDays: { if (byDays.TypeWorkout == TypeWorkout.Тренажерный_Зал) { // Возвращаем текущий тип тренировки //optionsWorkout.TypeWorkout = abon.TypeWorkout; return(DialogResult.OK); } break; } case SingleVisit singleVisit: { if (singleVisit.TypeWorkout == TypeWorkout.Тренажерный_Зал) { return(DialogResult.OK); } break; } } // если не вышли , то запуск формы опций var workoutForm = new WorkoutForm(personName); var dlgReult = workoutForm.ShowDialog(); if (dlgReult == DialogResult.OK) { optionsWorkout = workoutForm.SelectedOptions; } return(dlgReult); }