From 08ad5292f5a65da529872a485822113b07edc2ea Mon Sep 17 00:00:00 2001 From: user Date: Sat, 14 Dec 2024 21:06:03 +0400 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D1=84=D0=B0=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D0=BD=D0=B3,=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D0=BB=20ServiceName?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ITServiceManager/Entities/Service.cs | 4 +- .../ITServiceManager/Forms/FormAppointment.cs | 127 +++++------ .../Forms/FormAppointments.cs | 116 +++++----- .../ITServiceManager/Forms/FormCompanies.cs | 180 +++++++-------- .../Forms/FormCompany.Designer.cs | 1 - .../ITServiceManager/Forms/FormCompany.cs | 103 ++++----- .../ITServiceManager/Forms/FormCompany.resx | 4 +- .../ITServiceManager/Forms/FormEmployees.cs | 208 +++++++++--------- .../ITServiceManager/Forms/FormOrder.cs | 89 ++++---- .../ITServiceManager/Forms/FormOrders.cs | 130 +++++------ .../Forms/FormService.Designer.cs | 55 +++-- .../ITServiceManager/Forms/FormService.cs | 7 +- .../ITServiceManager/Forms/FormService.resx | 4 +- ITServiceManager/ITServiceManager/Program.cs | 49 ++--- 14 files changed, 510 insertions(+), 567 deletions(-) diff --git a/ITServiceManager/ITServiceManager/Entities/Service.cs b/ITServiceManager/ITServiceManager/Entities/Service.cs index d907ddb..f7a841c 100644 --- a/ITServiceManager/ITServiceManager/Entities/Service.cs +++ b/ITServiceManager/ITServiceManager/Entities/Service.cs @@ -6,14 +6,16 @@ public class Service { public int Id { get; private set; } public ServiceType ServiceType { get; private set; } + public string ServiceName { get; private set; } = string.Empty; public string Description { get; private set; } = string.Empty; - public static Service CreateEntity(int id, ServiceType type, string description) + public static Service CreateEntity(int id, ServiceType type, string name, string description) { return new Service { Id = id, ServiceType = type, + ServiceName = name, Description = description }; } diff --git a/ITServiceManager/ITServiceManager/Forms/FormAppointment.cs b/ITServiceManager/ITServiceManager/Forms/FormAppointment.cs index 879aa55..6bf2274 100644 --- a/ITServiceManager/ITServiceManager/Forms/FormAppointment.cs +++ b/ITServiceManager/ITServiceManager/Forms/FormAppointment.cs @@ -1,86 +1,75 @@ using ITServiceManager.Entities; using ITServiceManager.Repositories; -using ITServiceManager.Repositories.Implementations; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; -namespace ITServiceManager.Forms +namespace ITServiceManager.Forms; + +public partial class FormAppointment : Form { - public partial class FormAppointment : Form + private readonly IAppointmentRepository _appointmentRepository; + private int? _appointmentId; + public int Id { - private readonly IAppointmentRepository _appointmentRepository; - private int? _appointmentId; - public int Id - { - set - { - try - { - var appointment = - _appointmentRepository.ReadAppointmentById(value); - if (appointment == null) - { - throw new - InvalidDataException(nameof(appointment)); - } - comboBoxEmployee.SelectedIndex = appointment.EmployeeId; - comboBoxOrder.SelectedIndex = appointment.OrderId; - _appointmentId = value; - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - } - } - public FormAppointment(IAppointmentRepository appointmentRepository, IEmployeeRepository employeeRepository, IOrderRepository orderRepository) - { - InitializeComponent(); - _appointmentRepository = appointmentRepository ?? - throw new ArgumentNullException(nameof(appointmentRepository)); - - comboBoxOrder.DataSource = orderRepository.ReadOrders(); - comboBoxOrder.DisplayMember = "Name"; - comboBoxOrder.ValueMember = "Id"; - - comboBoxEmployee.DataSource = employeeRepository.ReadEmployees(); - comboBoxEmployee.DisplayMember = "Name"; - comboBoxEmployee.ValueMember = "Id"; - } - private void ButtonAdd_Click(object sender, EventArgs e) + set { try { - if (comboBoxEmployee.SelectedIndex < 0 || comboBoxOrder.SelectedIndex < 0 || dateTimePickerStart.CustomFormat != " ") + var appointment = + _appointmentRepository.ReadAppointmentById(value); + if (appointment == null) { - throw new Exception("Имеются незаполненные поля"); + throw new + InvalidDataException(nameof(appointment)); } - if (_appointmentId.HasValue) - { - _appointmentRepository.UpdateAppointment(CreateAppointment(_appointmentId.Value)); - } - else - { - _appointmentRepository.CreateAppointment(CreateAppointment(0)); - } - Close(); + comboBoxEmployee.SelectedIndex = appointment.EmployeeId; + comboBoxOrder.SelectedIndex = appointment.OrderId; + _appointmentId = value; } catch (Exception ex) { - MessageBox.Show(ex.Message, "Ошибка при сохранении", - MessageBoxButtons.OK, MessageBoxIcon.Error); + MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error); + return; } } - private void ButtonCancel_Click(object sender, EventArgs e) => Close(); - private Appointment CreateAppointment(int id) => Appointment.CreateOperation(id, comboBoxOrder.SelectedIndex, comboBoxEmployee.SelectedIndex, Convert.ToDateTime(dateTimePickerStart) , - Convert.ToDateTime(dateTimePickerEnd)); } + public FormAppointment(IAppointmentRepository appointmentRepository, IEmployeeRepository employeeRepository, IOrderRepository orderRepository) + { + InitializeComponent(); + _appointmentRepository = appointmentRepository ?? + throw new ArgumentNullException(nameof(appointmentRepository)); + + comboBoxOrder.DataSource = orderRepository.ReadOrders(); + comboBoxOrder.DisplayMember = "Name"; + comboBoxOrder.ValueMember = "Id"; + + comboBoxEmployee.DataSource = employeeRepository.ReadEmployees(); + comboBoxEmployee.DisplayMember = "Name"; + comboBoxEmployee.ValueMember = "Id"; + } + private void ButtonAdd_Click(object sender, EventArgs e) + { + try + { + if (comboBoxEmployee.SelectedIndex < 0 || comboBoxOrder.SelectedIndex < 0 || dateTimePickerStart.CustomFormat != " ") + { + throw new Exception("Имеются незаполненные поля"); + } + if (_appointmentId.HasValue) + { + _appointmentRepository.UpdateAppointment(CreateAppointment(_appointmentId.Value)); + } + else + { + _appointmentRepository.CreateAppointment(CreateAppointment(0)); + } + Close(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при сохранении", + MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + private void ButtonCancel_Click(object sender, EventArgs e) => Close(); + private Appointment CreateAppointment(int id) => Appointment.CreateOperation(id, comboBoxOrder.SelectedIndex, comboBoxEmployee.SelectedIndex, Convert.ToDateTime(dateTimePickerStart) , + Convert.ToDateTime(dateTimePickerEnd)); } diff --git a/ITServiceManager/ITServiceManager/Forms/FormAppointments.cs b/ITServiceManager/ITServiceManager/Forms/FormAppointments.cs index 974dfc7..495394b 100644 --- a/ITServiceManager/ITServiceManager/Forms/FormAppointments.cs +++ b/ITServiceManager/ITServiceManager/Forms/FormAppointments.cs @@ -1,81 +1,71 @@ using ITServiceManager.Repositories; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; using Unity; -namespace ITServiceManager.Forms +namespace ITServiceManager.Forms; + +public partial class FormAppointments : Form { - public partial class FormAppointments : Form + private readonly IUnityContainer _container; + private readonly IAppointmentRepository _appointmentRepository; + public FormAppointments(IUnityContainer container, IAppointmentRepository appointmentRepository) { - private readonly IUnityContainer _container; - private readonly IAppointmentRepository _appointmentRepository; - public FormAppointments(IUnityContainer container, IAppointmentRepository appointmentRepository) + InitializeComponent(); + _container = container ?? throw new ArgumentNullException(nameof(container)); + _appointmentRepository = appointmentRepository ?? throw new ArgumentNullException(nameof(appointmentRepository)); + } + private void FormAppointments_Load(object sender, EventArgs e) + { + try { - InitializeComponent(); - _container = container ?? throw new ArgumentNullException(nameof(container)); - _appointmentRepository = appointmentRepository ?? throw new ArgumentNullException(nameof(appointmentRepository)); + LoadList(); } - private void FormAppointments_Load(object sender, EventArgs e) + catch (Exception ex) { - try - { - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error); - } + MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error); } - private void ButtonAdd_Click(object sender, EventArgs e) + } + private void ButtonAdd_Click(object sender, EventArgs e) + { + try { - try - { - _container.Resolve().ShowDialog(); - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error); - } + _container.Resolve().ShowDialog(); + LoadList(); } - private void ButtonUpd_Click(object sender, EventArgs e) + catch (Exception ex) { - if (!TryGetIdentifierFromSelectedRow(out var findId)) - { - return; - } - try - { - var form = _container.Resolve(); - form.Id = findId; - form.ShowDialog(); - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при изменении", - MessageBoxButtons.OK, MessageBoxIcon.Error); - } + MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error); } - private void LoadList() => dataGridView.DataSource = _appointmentRepository.ReadAppointments(); - private bool TryGetIdentifierFromSelectedRow(out int id) + } + private void ButtonUpd_Click(object sender, EventArgs e) + { + if (!TryGetIdentifierFromSelectedRow(out var findId)) { - id = 0; - if (dataGridView.SelectedRows.Count < 1) - { - MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); - return false; - } - id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); - return true; + return; } + try + { + var form = _container.Resolve(); + form.Id = findId; + form.ShowDialog(); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при изменении", + MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + private void LoadList() => dataGridView.DataSource = _appointmentRepository.ReadAppointments(); + private bool TryGetIdentifierFromSelectedRow(out int id) + { + id = 0; + if (dataGridView.SelectedRows.Count < 1) + { + MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); + return false; + } + id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); + return true; } } diff --git a/ITServiceManager/ITServiceManager/Forms/FormCompanies.cs b/ITServiceManager/ITServiceManager/Forms/FormCompanies.cs index 5c45845..ae01e62 100644 --- a/ITServiceManager/ITServiceManager/Forms/FormCompanies.cs +++ b/ITServiceManager/ITServiceManager/Forms/FormCompanies.cs @@ -1,106 +1,96 @@ using ITServiceManager.Repositories; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; using Unity; -namespace ITServiceManager.Forms +namespace ITServiceManager.Forms; + +public partial class FormCompanies : Form { - public partial class FormCompanies : Form + private readonly IUnityContainer _container; + private readonly ICompanyRepository _companyRepository; + + public FormCompanies(IUnityContainer container, ICompanyRepository companyRepository) { - private readonly IUnityContainer _container; - private readonly ICompanyRepository _companyRepository; - - public FormCompanies(IUnityContainer container, ICompanyRepository companyRepository) + InitializeComponent(); + _container = container ?? throw new ArgumentNullException(nameof(container)); + _companyRepository = companyRepository ?? throw new ArgumentNullException(nameof(companyRepository)); + } + private void FormCompanies_Load(object sender, EventArgs e) + { + try { - InitializeComponent(); - _container = container ?? throw new ArgumentNullException(nameof(container)); - _companyRepository = companyRepository ?? throw new ArgumentNullException(nameof(companyRepository)); + LoadList(); } - private void FormCompanies_Load(object sender, EventArgs e) + catch (Exception ex) { - try - { - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при загрузке", - MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - private void ButtonAdd_Click(object sender, EventArgs e) - { - try - { - _container.Resolve().ShowDialog(); - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - private void ButtonRemove_Click(object sender, EventArgs e) - { - if (!TryGetIdentifierFromSelectedRow(out var findId)) - { - return; - } - if (MessageBox.Show("Удалить запись?", "Удаление", MessageBoxButtons.YesNo) != DialogResult.Yes) - { - return; - } - try - { - _companyRepository.DeleteCompany(findId); - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при удалении", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - private void ButtonUpdate_Click(object sender, EventArgs e) - { - if (!TryGetIdentifierFromSelectedRow(out var findId)) - { - return; - } - try - { - var form = _container.Resolve(); - form.Id = findId; - form.ShowDialog(); - LoadList(); - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при изменении", MessageBoxButtons.OK, MessageBoxIcon.Error); - } - } - private void LoadList() => dataGridView.DataSource = _companyRepository.ReadCompanies(); - private bool TryGetIdentifierFromSelectedRow(out int id) - { - id = 0; - if (dataGridView.SelectedRows.Count < 1) - { - MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); - return false; - } - id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); - return true; - } - - private void dataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) - { - + MessageBox.Show(ex.Message, "Ошибка при загрузке", + MessageBoxButtons.OK, MessageBoxIcon.Error); } } + private void ButtonAdd_Click(object sender, EventArgs e) + { + try + { + _container.Resolve().ShowDialog(); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + private void ButtonRemove_Click(object sender, EventArgs e) + { + if (!TryGetIdentifierFromSelectedRow(out var findId)) + { + return; + } + if (MessageBox.Show("Удалить запись?", "Удаление", MessageBoxButtons.YesNo) != DialogResult.Yes) + { + return; + } + try + { + _companyRepository.DeleteCompany(findId); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при удалении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + private void ButtonUpdate_Click(object sender, EventArgs e) + { + if (!TryGetIdentifierFromSelectedRow(out var findId)) + { + return; + } + try + { + var form = _container.Resolve(); + form.Id = findId; + form.ShowDialog(); + LoadList(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при изменении", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + private void LoadList() => dataGridView.DataSource = _companyRepository.ReadCompanies(); + private bool TryGetIdentifierFromSelectedRow(out int id) + { + id = 0; + if (dataGridView.SelectedRows.Count < 1) + { + MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); + return false; + } + id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); + return true; + } + + private void dataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) + { + + } } diff --git a/ITServiceManager/ITServiceManager/Forms/FormCompany.Designer.cs b/ITServiceManager/ITServiceManager/Forms/FormCompany.Designer.cs index 746c07f..2e245ed 100644 --- a/ITServiceManager/ITServiceManager/Forms/FormCompany.Designer.cs +++ b/ITServiceManager/ITServiceManager/Forms/FormCompany.Designer.cs @@ -51,7 +51,6 @@ textBoxName.Name = "textBoxName"; textBoxName.Size = new Size(200, 23); textBoxName.TabIndex = 1; - textBoxName.TextChanged += textBoxName_TextChanged; // // buttonAdd // diff --git a/ITServiceManager/ITServiceManager/Forms/FormCompany.cs b/ITServiceManager/ITServiceManager/Forms/FormCompany.cs index a75fc60..c41a7c6 100644 --- a/ITServiceManager/ITServiceManager/Forms/FormCompany.cs +++ b/ITServiceManager/ITServiceManager/Forms/FormCompany.cs @@ -1,79 +1,64 @@ using ITServiceManager.Entities; using ITServiceManager.Repositories; -using ITServiceManager.Repositories.Implementations; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; -namespace ITServiceManager.Forms +namespace ITServiceManager.Forms; + +public partial class FormCompany : Form { - public partial class FormCompany : Form + private readonly ICompanyRepository _companyRepository; + private int? _companyId; + public int Id { - private readonly ICompanyRepository _companyRepository; - private int? _companyId; - public int Id - { - set - { - try - { - var company = _companyRepository.ReadCompanyById(value); - if (company == null) - { - throw new InvalidDataException(nameof(company)); - } - textBoxName.Text = company.Name; - textBoxAddress.Text = company.Address; - _companyId = value; - } - catch (Exception ex) - { - MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error); - return; - } - } - } - public FormCompany(ICompanyRepository companyRepository) - { - InitializeComponent(); - _companyRepository = companyRepository ?? throw new ArgumentNullException(nameof(companyRepository)); - } - - private void ButtonAdd_Click(object sender, EventArgs e) + set { try { - if (string.IsNullOrWhiteSpace(textBoxName.Text) || string.IsNullOrWhiteSpace(textBoxAddress.Text)) + var company = _companyRepository.ReadCompanyById(value); + if (company == null) { - throw new Exception("Имеются незаполненные поля"); + throw new InvalidDataException(nameof(company)); } - if (_companyId.HasValue) - { - _companyRepository.UpdateCompany(CreateCompany(_companyId.Value)); - } - else - { - _companyRepository.CreateCompany(CreateCompany(0)); - } - Close(); + textBoxName.Text = company.Name; + textBoxAddress.Text = company.Address; + _companyId = value; } catch (Exception ex) { - MessageBox.Show(ex.Message, "Ошибка при сохранении", MessageBoxButtons.OK, MessageBoxIcon.Error); + MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error); + return; } } - private void ButtonCancel_Click(object sender, EventArgs e) => Close(); - private Company CreateCompany(int id) => Company.CreateEntity(id, textBoxName.Text, textBoxAddress.Text); + } + public FormCompany(ICompanyRepository companyRepository) + { + InitializeComponent(); + _companyRepository = companyRepository ?? throw new ArgumentNullException(nameof(companyRepository)); + } - private void textBoxName_TextChanged(object sender, EventArgs e) + private void ButtonAdd_Click(object sender, EventArgs e) + { + try { - + if (string.IsNullOrWhiteSpace(textBoxName.Text) || string.IsNullOrWhiteSpace(textBoxAddress.Text)) + { + throw new Exception("Имеются незаполненные поля"); + } + if (_companyId.HasValue) + { + _companyRepository.UpdateCompany(CreateCompany(_companyId.Value)); + } + else + { + _companyRepository.CreateCompany(CreateCompany(0)); + } + Close(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Ошибка при сохранении", MessageBoxButtons.OK, MessageBoxIcon.Error); } } + private void ButtonCancel_Click(object sender, EventArgs e) => Close(); + private Company CreateCompany(int id) => Company.CreateEntity(id, textBoxName.Text, textBoxAddress.Text); + } diff --git a/ITServiceManager/ITServiceManager/Forms/FormCompany.resx b/ITServiceManager/ITServiceManager/Forms/FormCompany.resx index af32865..8b2ff64 100644 --- a/ITServiceManager/ITServiceManager/Forms/FormCompany.resx +++ b/ITServiceManager/ITServiceManager/Forms/FormCompany.resx @@ -1,7 +1,7 @@