private async void ButtonAdd_Click(object sender, EventArgs e) { UsersGridWidthChange(); if (!VerifyTextBoxes(out var fio, out var login, out var password, out var salary)) { return; } var user = new Models.Worker() { FIO = fio, Login = login, Password = password, Role = comboBoxRole.SelectedIndex == 0 ? "accountant" : comboBoxRole.SelectedIndex == 1 ? "manager" : comboBoxRole.SelectedIndex == 2 ? "archivarius" : "admin", Salary = Convert.ToSingle(salary) }; if (await _workersRepository.GetWorker(login) != null) { MessageBox.Show("Пользователь с таким логином уже существует."); return; } await _workersRepository.CreateWorker(user); await UpdateDataGridView(); }
private async void ButtonEnter_Click(object sender, EventArgs e) { var login = textBoxLogin.Text; var password = textBoxPassword.Text; FindAdmin(); if (IsAdminCreated == false) { if (login == "admin") { if (password == "admin") { Hide(); new AdminForm().ShowDialog(); return; } MessageBox.Show("Неверный логин или пароль."); return; } } var user = await _workersRepo.GetWorker(login); if (user == null || user.Password != password) { MessageBox.Show("Неверный логин или пароль."); return; } switch (user.Role) { case "accountant": Hide(); new MainAccounatantForm(user.Id, LogFileManager).ShowDialog(); break; case "manager": Hide(); new ManagerForm(user.Id).ShowDialog(); break; case "archivarius": Hide(); new ArchivariusForm(user.Id, LogFileManager).ShowDialog(); break; case "admin": Hide(); new AdminForm().ShowDialog(); break; default: MessageBox.Show("Ошибка 1: Неопознанная роль пользователя."); break; } }
public WorkerState EnsureWorkerRegistration() { if (_workerState == null) { object objLock; lock (objLock = new object()) { if (_workerState == null) { var worker = _repository.GetWorker(Environment.MachineName); if (worker == null) { worker = _repository.RegisterWorker(Environment.MachineName); } _workerState = worker; } } } return(_workerState); }
public async Task <WorkerInformation> GetWorker(int id) { return(await _repository.GetWorker(id)); }
/// <summary> /// Zwraca pracownika o danym ID /// </summary> public Worker GetWorkerByID(int id) { Worker worker = _workerRepo.GetWorker(id); return(worker); }
private async void addButton_Click(object sender, EventArgs e) { if (!VerifyDocumentsValues(out var name)) { return; } var document = new Models.Documents() { FileName = name }; var folder = localFileManager.CreateFileFolder("Document_" + document.Id.ToString()); var format = ".pdf"; var trueName = SearchNames(folder, name); folder = folder + @"\" + trueName + format; //folder = $@"{folder}\{name}" + ".pdf"; document.FileName = trueName; Document doc = new Document(); PdfWriter.GetInstance(doc, new FileStream(folder, FileMode.Create)); doc.Open(); string ttf = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Fonts), "ARIAL.TTF"); BaseFont baseFont = BaseFont.CreateFont(ttf, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); Font font = new Font(baseFont, iTextSharp.text.Font.DEFAULTSIZE, iTextSharp.text.Font.NORMAL); var dateFrom = dateTimePickerFrom.Value; var dateTo = dateTimePickerTo.Value; var currentOrders = await _ordersRepository.GetOrdersinDates(dateFrom, dateTo); for (int i = 0; i < currentOrders.Count; i++) { if (currentOrders[i].TimeCompleted != DateTime.MinValue) { var currentuser = await _clientsRepository.GetClient(currentOrders[i].ClientId); var currentworker = await _workerRepository.GetWorker(currentOrders[i].WorkerId); PdfPTable table = new PdfPTable(2); PdfPCell cell = new PdfPCell(new Phrase("Заказ " + $"{currentOrders[i].Id}", font)); cell.Colspan = 2; cell.HorizontalAlignment = 1; cell.Border = 0; table.AddCell(cell); table.AddCell(new Phrase("ID", font)); table.AddCell(new Phrase(currentOrders[i].Id.ToString(), font)); table.AddCell(new Phrase("ФИО заказчика", font)); table.AddCell(new Phrase(currentuser.FIO, font)); table.AddCell(new Phrase("телефон заказчика", font)); table.AddCell(new Phrase(currentuser.ContactNumber, font)); table.AddCell(new Phrase("ФИО исполнителя", font)); table.AddCell(new Phrase(currentworker.FIO, font)); var col = new PdfPCell(new Phrase(currentOrders[i].Payment.ToString(), font)); var col2 = new PdfPCell(new Phrase(currentOrders[i].PaymentIsDone.ToString(), font)); if (currentOrders[i].Payment > currentOrders[i].PaymentIsDone) { col.BackgroundColor = BaseColor.RED; col2.BackgroundColor = BaseColor.RED; } else { col.BackgroundColor = BaseColor.WHITE; col2.BackgroundColor = BaseColor.WHITE; } table.AddCell(new Phrase("Сумма к оплате", font)); table.AddCell(col); table.AddCell(new Phrase("Оплачено", font)); table.AddCell(col2); table.AddCell(new Phrase("Дата завершения", font)); table.AddCell(new Phrase(currentOrders[i].TimeCompleted.ToString(), font)); doc.Add(table); } } doc.Close(); document.FileLink = folder; document.TimeCreated = DateTime.Now; refreshGridWidth(); await _documentsRepository.CreateDocuments(document); await UpdateDataGridViewDocuments(dateTimePickerFrom.Value, dateTimePickerTo.Value); await UpdateDataGridViewOrders(dateTimePickerFrom.Value, dateTimePickerTo.Value); }