public WorkerTicketBLL searchBySerial(WorkerTicketBLL worker) { WorkerTicketDAL workDal = new WorkerTicketDAL { serial = worker.serial, number = worker.number, lastName = worker.lastName, name = worker.name, patronimic = worker.patronimic, spec = worker.speciality, phoneNumber = worker.phoneNumber, workDays = worker.workDays }; WorkerTicketDAL result; PGUserRepository repository = repositoryFactory.getUserRepository(); result = repository.findBySerial(workDal); return(new WorkerTicketBLL { serial = result.serial, number = result.number, lastName = result.lastName, name = result.name, patronimic = result.patronimic, phoneNumber = result.phoneNumber, speciality = result.spec, workDays = result.workDays }); }
public WorkerTicketBLL getWorkerFromTextBoxes() { List <string> list = new List <string>(); this.form.getTextBoxValues().ForEach(o => list.Add(o.Text.ToString())); WorkerTicketBLL worker = new WorkerTicketBLL { lastName = list[0].ToString(), name = list[1].ToString(), patronimic = list[2].ToString(), speciality = list[3].ToString(), phoneNumber = list[4].ToString(), serial = list[5].ToString(), number = list[6].ToString() }; if (!form.getDayValue().Equals("не указано")) { WorkDayDAL wd = new WorkDayDAL { day = form.getDayValue() }; worker.workDays = new List <WorkDayDAL>(); worker.workDays.Add(wd); } return(worker); }
public IEnumerable <WorkerTicketBLL> searchBy(WorkerTicketBLL worker) { IEnumerable <WorkerTicketDAL> listDAL = new List <WorkerTicketDAL>(); WorkerTicketDAL searchPattern = new WorkerTicketDAL { lastName = worker.lastName, name = worker.name, patronimic = worker.patronimic, number = worker.number, serial = worker.serial, phoneNumber = worker.phoneNumber, spec = worker.speciality, workDays = worker.workDays }; PGUserRepository repository = repositoryFactory.getUserRepository(); listDAL = (repository.searchBy(searchPattern) as IEnumerable <WorkerTicketDAL>); return(listDAL.Select(w => new WorkerTicketBLL { lastName = w.lastName, name = w.name, number = w.number, patronimic = w.patronimic, serial = w.serial, phoneNumber = w.phoneNumber, speciality = w.spec }).AsEnumerable()); }
private void DGV_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { if (DGV.CurrentRow.Cells[0].Value.ToString().Equals("")) { btnUpdate.Enabled = false; MessageBox.Show("Данная запись пуста, выберите другую"); } else { btnUpdate.Enabled = true; for (int i = 0; i < DGV.ColumnCount; i++) { tbList[i].Text = DGV.CurrentRow.Cells[i].Value.ToString(); } if (списокСтудентовToolStripMenuItem.Checked) { if (rbSearch.Checked || rbDelete.Checked) { presenter.loadRoomsForSearch(); } else if (rbAdd.Checked || rbResettle.Checked) { presenter.loadAvailableRooms(); } cbRoom.Text = tbRoom.Text; } if (списокРаботниковToolStripMenuItem.Checked) { listBoxWD.Items.Clear(); WorkerTicketBLL worker = presenter.findWorkerInUserListBySerial(tbSerial.Text, tbNumber.Text); setWorkDaysText(worker.workDays); } } }
public WorkDaysFormPresenter(WorkDaysForm form, WorkerTicketBLL worker) { this.form = form; this.worker = worker; validator = new FormValidator(); initWeek(); disableDays(); }
public WorkerEditPresenter(WorkerEditForm form, WorkerTicketBLL worker) { this.form = form; this.worker = worker; validator = new FormValidator(); serviceFactory = new ServiceFactory(new PGRepositoryFactory()); service = serviceFactory.getUserService(); }
public void loadCurrentWorkerInfo() { WorkerTicketBLL currentWorker = (userTicket as WorkerTicketBLL); ComboBox box = form.getAuthorComboBox(); box.Items.Clear(); box.Items.Add(currentWorker.serial + currentWorker.number); box.Text = box.Items[0].ToString(); }
private void getDaysForWorkerFromList(ref WorkerTicketBLL worker) { foreach (WorkerTicketBLL w in userList) { if (w.serial.Equals(worker.serial) && w.number.Equals(worker.number)) { worker.workDays = w.workDays; } } }
public void openUpdateWorkerForm() { WorkerTicketBLL worker = getWorkerFromTextBoxes(); getDaysForWorkerFromList(ref worker); WorkerEditForm edit = new WorkerEditForm(worker); edit.ShowDialog(); getListOfWorkers(); reloadWorkerGrid(); }
public WorkDaysForm(ref WorkerTicketBLL worker) { InitializeComponent(); fillComboBoxes(); getAllControls(); presenter = new WorkDaysFormPresenter(this, worker); loadWorkerDays(); lbWS.Text = "Время\nначала:"; lbWE.Text = "Время\nокончания:"; lbRS.Text = "Время\nначала:"; lbRE.Text = "Время\nокончания:"; }
public bool openWorkDaysForm(ref WorkerTicketBLL worker) { WorkDaysForm wdForm = new WorkDaysForm(ref worker); wdForm.ShowDialog(); bool result = false; if (wdForm.DialogResult == DialogResult.OK) { result = true; } return(result); }
public void openWorkdaysForm() { WorkerTicketBLL workerWithNewDays = worker; WorkDaysForm form = new WorkDaysForm(ref workerWithNewDays); form.ShowDialog(); if (form.DialogResult == DialogResult.OK) { service.addWorkDays(workerWithNewDays); worker = service.searchBySerial(worker); loadWorkerToForm(); } }
public WorkerEditForm(WorkerTicketBLL worker) { InitializeComponent(); getTextBoxes(); presenter = new WorkerEditPresenter(this, worker); loadWorker(); setLimits(); btnDelete.Enabled = false; tbSpec.Enabled = false; if (LoginInfo.isWorker()) { btnPwd.Visible = false; } }
public WorkerTicketBLL findWorkerInUserListBySerial(string serial, string number) { WorkerTicketBLL worker = new WorkerTicketBLL(); foreach (WorkerTicketBLL w in userList) { if (w.serial == serial && w.number == number) { worker = (w as WorkerTicketBLL); break; } } return(worker); }
public void updateData(WorkerTicketBLL updatedWorker) { WorkerTicketDAL wDal = new WorkerTicketDAL { name = updatedWorker.name, lastName = updatedWorker.lastName, patronimic = updatedWorker.patronimic, number = updatedWorker.number, serial = updatedWorker.serial, phoneNumber = updatedWorker.phoneNumber, spec = updatedWorker.speciality }; PGUserRepository repository = repositoryFactory.getUserRepository(); repository.updateInfo(wDal); }
public void deleteUser(WorkerTicketBLL worker) { PGUserRepository repository = repositoryFactory.getUserRepository(); WorkerTicketDAL workerDAL = new WorkerTicketDAL { serial = worker.serial, number = worker.number, lastName = worker.lastName, name = worker.name, patronimic = worker.patronimic, phoneNumber = worker.phoneNumber, spec = worker.speciality, workDays = worker.workDays }; repository.removeBySerial(workerDAL); }
public void deleteWorkDay(WorkerTicketBLL worker) { WorkerTicketDAL wDal = new WorkerTicketDAL { name = worker.name, lastName = worker.lastName, patronimic = worker.patronimic, number = worker.number, serial = worker.serial, phoneNumber = worker.phoneNumber, spec = worker.speciality, workDays = worker.workDays }; PGUserRepository repository = repositoryFactory.getUserRepository(); repository.deleteWorkDay(wDal); }
public WorkerTicketBLL getWorkerFromTextBoxes() { List <TextBox> textBoxes = form.getTextBoxesValues(); List <string> list = new List <string>(); textBoxes.ForEach(t => list.Add(t.Text)); WorkerTicketBLL worker = new WorkerTicketBLL(); worker.lastName = list[0]; worker.name = list[1]; worker.patronimic = list[2]; worker.speciality = list[3]; worker.phoneNumber = list[4]; worker.serial = list[5]; worker.number = list[6]; worker.workDays = new List <WorkDayDAL>(); return(worker); }
public void validateWorkerToSearch(WorkerTicketBLL worker) { resetValues(); #region Проверка на запрещенные символы if (worker.lastName.Any(s => (char.IsDigit(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле фамилии содержит недопустимый(е) символ(ы) (цифры,знаки пунктуации, */-+ и т.п.)"); validFlag = false; } if (worker.name.Any(s => (char.IsDigit(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле имени содержит недопустимый(е) символ(ы) (цифры,знаки пунктуации, */-+ и т.п.)"); validFlag = false; } if (worker.patronimic.Any(s => (char.IsDigit(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле отчества содержит недопустимый(е) символ(ы) (цифры,знаки пунктуации, */-+ и т.п.)"); validFlag = false; } if (worker.serial.Any(s => (char.IsDigit(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле серии студ билета содержит недопустимый(е) символ(ы) (цифры,знаки пунктуации, */-+ и т.п.)"); validFlag = false; } if (!string.IsNullOrWhiteSpace(worker.speciality)) { if (!(worker.speciality.Equals("сантехник")) && !(worker.speciality.Equals("электрик")) && !(worker.speciality.Equals("не опред."))) { brokenRules.Add("Поле специальности может сдержать только значения - сантехник, электрик или не опред."); validFlag = false; } } if (worker.phoneNumber.Any(s => ((char.IsPunctuation(s) && !s.Equals('-')) || s.Equals('*') || s.Equals('/')))) { brokenRules.Add("Поле номера телефона содержит недопустимый(е) символ(ы) (знаки пунктуации, */ и т.п.)"); validFlag = false; } if (worker.number.Any(s => (char.IsLetter(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле номера студ билета содержит недопустимый(е) символ(ы) (буквы, знаки пунктуации, */-+ и т.п.)"); validFlag = false; } #endregion }
public void deleteDay() { ListBox list = form.getWorkDayList(); string selectedDay = list.SelectedItem.ToString(); WorkerTicketBLL delWorker = new WorkerTicketBLL { serial = worker.serial, number = worker.number }; delWorker.workDays = new List <WorkDayDAL>(); delWorker.workDays.Add(new WorkDayDAL { day = selectedDay }); service.deleteWorkDay(delWorker); list.Items.Remove(selectedDay); worker = service.searchBySerial(worker); loadWorkerToForm(); }
public void loadInfo() { form.setInfo(""); if (userType.Equals("С")) { StringBuilder sb = new StringBuilder(); currentUser = service.searchBySerial(new StudentTicketBLL { serial = login.Substring(1, 2), number = login.Substring(3, login.Length - 3) }); StudentTicketBLL st = (currentUser as StudentTicketBLL); sb.Append("Информация о Вас:\n" + "Логин: " + login + "\nНомер студ. билета: " + login.Substring(1, login.Length - 1) + "\nФамилия:" + st.lastName + "\nИмя: " + st.name + "\nОтчество: " + st.patronimic + "\nКурс: " + st.kurs + "\nФакультет: " + st.facult + "\nГруппа: " + st.group + "\nСпециальность: " + st.speciality + "\nКомната:" + st.roomNumber ); form.setInfo(sb.ToString()); } else if (userType.Equals("Р") || userType.Equals("К")) { StringBuilder sb = new StringBuilder(); currentUser = service.searchBySerial(new WorkerTicketBLL { serial = login.Substring(1, 2), number = login.Substring(3, login.Length - 3) }); WorkerTicketBLL worker = (currentUser as WorkerTicketBLL); sb.Append("Информация о Вас:\n" + "Логин: " + login + "\nНомер удостоверения: " + login.Substring(1, login.Length - 1) + "\nФамилия:" + worker.lastName + "\nИмя: " + worker.name + "\nОтчество: " + worker.patronimic + "\nСпециализация: " + worker.speciality + "\nНомер тел.: " + worker.phoneNumber ); form.setInfo(sb.ToString()); } }
public void addUser(WorkerTicketBLL worker) { WorkerTicketDAL wDAL = new WorkerTicketDAL { lastName = worker.lastName, name = worker.name, patronimic = worker.patronimic, number = worker.number, serial = worker.serial, phoneNumber = worker.phoneNumber, spec = worker.speciality }; if (worker.workDays != null) { wDAL.workDays = worker.workDays; } PGUserRepository repository = repositoryFactory.getUserRepository(); repository.addUser(wDAL); }
public void addWorker() { validator.validateWorkerToAdd(getWorkerFromTextBoxes()); if (validator.isValid()) { WorkerTicketBLL worker = getWorkerFromTextBoxes(); if (openWorkDaysForm(ref worker)) { userService.addUser(worker); getListOfWorkers(); reloadWorkerGrid(); } else { MessageBox.Show("Рабочие дни не были указаны", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { MessageBox.Show(validator.getErrorString(), "Ошибки ввода", MessageBoxButtons.OK, MessageBoxIcon.Warning); } validator.resetValues(); }
public void validateWorkerToAdd(WorkerTicketBLL worker) { resetValues(); #region Проверка полей на пустоту if (string.IsNullOrWhiteSpace(worker.lastName)) { brokenRules.Add("Поле фамилии не может быть пустым"); validFlag = false; } if (string.IsNullOrWhiteSpace(worker.name)) { brokenRules.Add("Поле имени не может быть пустым"); validFlag = false; } if (string.IsNullOrWhiteSpace(worker.serial)) { brokenRules.Add("Поле серии рабочего удостоверения не может быть пустым"); validFlag = false; } if (string.IsNullOrWhiteSpace(worker.number)) { brokenRules.Add("Поле номера рабочего удостоверения не может быть пустым"); validFlag = false; } if (string.IsNullOrWhiteSpace(worker.speciality)) { brokenRules.Add("Поле специализации не может быть пустым"); validFlag = false; } if (string.IsNullOrWhiteSpace(worker.phoneNumber)) { brokenRules.Add("Поле номера телефона не может быть пустым"); validFlag = false; } #endregion #region Проверка на запрещенные символы if (worker.lastName.Any(s => (char.IsDigit(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле фамилии содержит недопустимый(е) символ(ы) (цифры,знаки пунктуации, */-+ и т.п.)"); validFlag = false; } if (worker.name.Any(s => (char.IsDigit(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле имени содержит недопустимый(е) символ(ы) (цифры,знаки пунктуации, */-+ и т.п.)"); validFlag = false; } if (worker.patronimic.Any(s => (char.IsDigit(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле отчества содержит недопустимый(е) символ(ы) (цифры,знаки пунктуации, */-+ и т.п.)"); validFlag = false; } if (worker.serial.Any(s => (char.IsDigit(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле серии студ билета содержит недопустимый(е) символ(ы) (цифры,знаки пунктуации, */-+ и т.п.)"); validFlag = false; } if (!string.IsNullOrWhiteSpace(worker.speciality)) { if (!(worker.speciality.Equals("сантехник")) && !(worker.speciality.Equals("электрик")) && !(worker.speciality.Equals("не опред."))) { brokenRules.Add("Поле специальности может сдержать только значения - сантехник, электрик или не опред."); validFlag = false; } } if (worker.number.Any(s => (char.IsLetter(s) || char.IsPunctuation(s) || char.IsSymbol(s)))) { brokenRules.Add("Поле номера студ билета содержит недопустимый(е) символ(ы) (буквы, знаки пунктуации, */-+ и т.п.)"); validFlag = false; } #endregion #region Телефон if (!string.IsNullOrWhiteSpace(worker.phoneNumber)) { if (worker.phoneNumber[0] != '+') { brokenRules.Add("Номер телефона может начинаться только с +"); validFlag = false; } if (!Regex.IsMatch(worker.phoneNumber, "^[+]{1}380[0-9]{2}-[0-9]{3}-[0-9]{2}-[0-9]{2}$")) { brokenRules.Add("Номер телефона должен иметь вид: +380ХХ-ХХХ-ХХ-ХХ"); validFlag = false; } } #endregion if (worker.number.Length < 6 && !string.IsNullOrWhiteSpace(worker.number)) { brokenRules.Add("Длина номера рабочего удостоверения не может быть меньше 6 символов, сейчас она равна" + worker.number.Length); validFlag = false; } }