private void btnAdd_Click(object sender, EventArgs e) { //Создаём новый объект класса "Кафедра" clsDepartment Dp = new clsDepartment(); //Код назначаем на единицу больше, чем количество //элементов в коллекции Dp.Code = mdlData.colDepart.Count + 1; //Формируем задел названия для новой кафедры Dp.Kafedra = "Новая кафедра"; Dp.Short = "Нов. каф."; //Добавляем объект в коллекцию mdlData.colDepart.Add(Dp); //Заносим объект в список cmbDepartList.Items.Add(mdlData.colDepart[mdlData.colDepart.Count - 1].Code + ". " + mdlData.colDepart[mdlData.colDepart.Count - 1].Kafedra); //Переходим к новому элементу списка cmbDepartList.SelectedIndex = cmbDepartList.Items.Count - 1; }
/// <summary> /// Процедура инициализации текущего элемента класса "Преподаватели" /// </summary> /// <param name="Tab">Образ таблицы базы данных</param> /// <param name="id">Идентификатор текущего элемента</param> public void Initialize(DataTable Tab, int id) { int GetCode; string CurrentString; bool Detected; //Код this.Code = Convert.ToInt32(Tab.Rows[id]["№"].ToString()); //Фамилия, Имя, Отчество this.FIO = Tab.Rows[id]["ФИО"].ToString(); //Кафедра GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colDepart.Count - 1; i++) { CurrentString = Tab.Rows[id]["Кафедра"].ToString(); if (mdlData.colDepart[i].Short == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Depart = mdlData.colDepart[GetCode]; } else { this.Depart = null; } //Год рождения if (!(Tab.Rows[id]["Год_рождения"] is DBNull)) { this.DOB = Convert.ToDateTime(Tab.Rows[id]["Год_рождения"].ToString()); } else { this.DOB = new DateTime(2014, 01, 01); } //Должность GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colDuty.Count - 1; i++) { CurrentString = Tab.Rows[id]["Должность"].ToString(); if (mdlData.colDuty[i].Duty == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Duty = mdlData.colDuty[GetCode]; } else { this.Duty = null; } //Дополнительная должность GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colDuty.Count - 1; i++) { CurrentString = Tab.Rows[id]["Должность1"].ToString(); if (mdlData.colDuty[i].Duty == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Duty1 = mdlData.colDuty[GetCode]; } else { this.Duty1 = null; } //Учёное звание GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colStatus.Count - 1; i++) { CurrentString = Tab.Rows[id]["Учёное_звание"].ToString(); if (mdlData.colStatus[i].Status == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Status = mdlData.colStatus[GetCode]; } else { this.Status = null; } //Учёная степень GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colDegree.Count - 1; i++) { CurrentString = Tab.Rows[id]["Учёная_степень"].ToString(); if (mdlData.colDegree[i].Short == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Degree = mdlData.colDegree[GetCode]; } else { this.Degree = null; } //Совместительство GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colCombination.Count - 1; i++) { CurrentString = Tab.Rows[id]["Совместительство"].ToString(); if (mdlData.colCombination[i].CombType == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Combination = mdlData.colCombination[GetCode]; } else { this.Combination = null; MessageBox.Show("Не удалось определить совместительство у элемента с кодом " + this.Code, "Оповещение"); } //Общий стаж работы if (!(Tab.Rows[id]["Общий_стаж_работы"] is DBNull)) { this.Seniority = Convert.ToDateTime(Tab.Rows[id]["Общий_стаж_работы"].ToString()); } else { this.Seniority = new DateTime(2014, 01, 01);; } //Ставка if (!(Tab.Rows[id]["Ставка"] is DBNull)) { this.Rate = Convert.ToDouble(Tab.Rows[id]["Ставка"].ToString()); } else { this.Rate = 0; } //Максимальная нагрузка if (!(Tab.Rows[id]["Максимальная_нагрузка"] is DBNull)) { this.MaxLoad = Convert.ToInt32(Tab.Rows[id]["Максимальная_нагрузка"].ToString()); } else { this.MaxLoad = 0; } //Разгрузка this.UnLoad = Convert.ToInt32(Tab.Rows[id]["Разгрузка"].ToString()); //Примечание this.Text = Tab.Rows[id]["Для_диспетчерской"].ToString(); //Пожелания по аудиториям this.Preferences = Tab.Rows[id]["Аудитории"].ToString(); //Членство в совете if (Tab.Rows[id]["Совет"].ToString() == "False") { this.Soviet = false; } else { this.Soviet = true; } //Старая ставка if (!(Tab.Rows[id]["Старая_ставка"] is DBNull)) { this.OldRate = Convert.ToDouble(Tab.Rows[id]["Старая_ставка"].ToString()); } else { this.OldRate = 0; } //Ставка1 if (!(Tab.Rows[id]["Ставка1"] is DBNull)) { this.Rate1 = Convert.ToDouble(Tab.Rows[id]["Ставка1"].ToString()); } else { this.Rate1 = 0; } //Ставка2 if (!(Tab.Rows[id]["Ставка2"] is DBNull)) { this.Rate2 = Convert.ToDouble(Tab.Rows[id]["Ставка2"].ToString()); } else { this.Rate2 = 0; } //Переменная ставка if (Tab.Rows[id]["Смена_ставок"].ToString() == "False") { this.ChangeRate = false; } else { this.ChangeRate = true; } }
/// <summary> /// Процедура инициализации текущего элемента класса "Распределение нагрузки" /// </summary> /// <param name="Tab">Образ таблицы базы данных</param> /// <param name="id">Идентификатор текущего элемента</param> public void Initialize(DataTable Tab, int id) { int GetCode; string CurrentString; bool Detected; //Код this.Code = Convert.ToInt32(Tab.Rows[id]["Код"].ToString()); //ФИО this.FIO = Tab.Rows[id]["ФИО"].ToString(); //Кафедра GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colDepart.Count - 1; i++) { CurrentString = Tab.Rows[id]["Кафедра"].ToString(); if (mdlData.colDepart[i].Short == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Depart = mdlData.colDepart[GetCode]; } else { this.Depart = null; } //Руководитель GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colLecturer.Count - 1; i++) { CurrentString = Tab.Rows[id]["Руководитель"].ToString(); if (mdlData.colLecturer[i].FIO == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Lect = mdlData.colLecturer[GetCode]; } else { this.Lect = null; } //Курс GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colKursNum.Count - 1; i++) { CurrentString = Tab.Rows[id]["Курс"].ToString(); if (mdlData.colKursNum[i].Kurs.ToString() == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.KursNum = mdlData.colKursNum[GetCode]; } else { this.KursNum = null; } //Признак участия в индивидуальном плане преподавателя if (Tab.Rows[id]["В_плане"].ToString() == "False") { this.flgPlan = false; } else { this.flgPlan = true; } //Тема_работы this.Theme = Tab.Rows[id]["Тема_работы"].ToString(); //Количество выделенных часов if (!(Tab.Rows[id]["Часы"] is DBNull)) { this.Hours = Convert.ToInt32(Tab.Rows[id]["Часы"].ToString()); } else { this.Hours = 0; } //Признак бюджетной нагрузки if (Tab.Rows[id]["Бюджет"].ToString() == "False") { this.flgBudget = false; } else { this.flgBudget = true; } }
/// <summary> /// Процедура инициализации текущего элемента класса "Распределение нагрузки" /// </summary> /// <param name="Tab">Образ таблицы базы данных</param> /// <param name="id">Идентификатор текущего элемента</param> public void Initialize(DataTable Tab, int id) { int GetCode; string CurrentString; bool Detected; bool Even; //Код this.Code = Convert.ToInt32(Tab.Rows[id]["Код"].ToString()); //ФИО this.FIO = Tab.Rows[id]["ФИО"].ToString(); //Специальность GetCode = 0; Detected = false; Even = false; for (int i = 0; i <= mdlData.colSpecialisation.Count - 1; i++) { CurrentString = Tab.Rows[id]["Специальность"].ToString(); if (!mdlData.flgOldDB) { if (CurrentString.StartsWith("В-")) { CurrentString = CurrentString.Substring(2); Even = true; } if (mdlData.colSpecialisation[i].ShortDop == CurrentString) { //Если с вечернего факультета if (Even) { if (mdlData.colSpecialisation[i].Faculty != null) { if (mdlData.colSpecialisation[i].Faculty.Short.Equals("ВФ")) { GetCode = i; Detected = true; break; } } } //Если с дневного else { GetCode = i; Detected = true; break; } } } else { if (mdlData.colSpecialisation[i].ShortUpravlenie == CurrentString) { GetCode = i; Detected = true; break; } } } if (Detected) { this.Speciality = mdlData.colSpecialisation[GetCode]; } else { this.Speciality = null; } //Курс GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colKursNum.Count - 1; i++) { CurrentString = Tab.Rows[id]["Курс"].ToString(); if (mdlData.colKursNum[i].Kurs.ToString() == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.KursNum = mdlData.colKursNum[GetCode]; } else { this.KursNum = null; } //Кафедра GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colDepart.Count - 1; i++) { CurrentString = Tab.Rows[id]["Кафедра"].ToString(); if (mdlData.colDepart[i].Short == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Depart = mdlData.colDepart[GetCode]; } else { this.Depart = null; } //Руководитель GetCode = 0; Detected = false; for (int i = 0; i <= mdlData.colLecturer.Count - 1; i++) { CurrentString = Tab.Rows[id]["Руководитель"].ToString(); if (mdlData.colLecturer[i].FIO == CurrentString) { GetCode = i; Detected = true; } } if (Detected) { this.Lect = mdlData.colLecturer[GetCode]; } else { this.Lect = null; } //Тема_работы this.Theme = Tab.Rows[id]["Тема_работы"].ToString(); //Признак участия в индивидуальном плане преподавателя if (Tab.Rows[id]["В_плане"].ToString() == "False") { this.flgPlan = false; } else { this.flgPlan = true; } //Признак участия в почасовой if (Tab.Rows[id]["Почасовая"].ToString() == "False") { this.flgHoured = false; } else { this.flgHoured = true; } }