59 lines
1.9 KiB
C#
59 lines
1.9 KiB
C#
|
using ProjectGSM.Entities;
|
|||
|
using ProjectGSM.Repositories;
|
|||
|
|
|||
|
namespace ProjectGSM.Forms
|
|||
|
{
|
|||
|
|
|||
|
public partial class FormStatusHistory : Form
|
|||
|
{
|
|||
|
private readonly IStatusHistoryRepository _statusHistoryRepository;
|
|||
|
|
|||
|
|
|||
|
public FormStatusHistory(IStatusHistoryRepository statusHistoryRepository,
|
|||
|
IStatusRepository statusRepository, ICaseRepository caseRepository)
|
|||
|
{
|
|||
|
InitializeComponent();
|
|||
|
_statusHistoryRepository = statusHistoryRepository ??
|
|||
|
throw new
|
|||
|
ArgumentNullException(nameof(statusHistoryRepository));
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
caseBox.DataSource = caseRepository.ReadCases();
|
|||
|
caseBox.DisplayMember = "Name";
|
|||
|
caseBox.SelectedIndex = 0;
|
|||
|
}
|
|||
|
catch (Exception ex) { }
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
statusBox.DataSource = statusRepository.ReadStatuses();
|
|||
|
statusBox.DisplayMember = "Name";
|
|||
|
statusBox.SelectedIndex = 0;
|
|||
|
}
|
|||
|
catch (Exception ex) { }
|
|||
|
}
|
|||
|
|
|||
|
private void saveButton_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
if (caseBox.SelectedIndex < 0 || statusBox.SelectedIndex < 0)
|
|||
|
{
|
|||
|
throw new Exception("Имеются незаполненные поля");
|
|||
|
}
|
|||
|
_statusHistoryRepository.CreateStatusHistory(StatusHistory.CreateEntity(caseBox.SelectedIndex, statusBox.SelectedIndex, dateTimePicker1.Value));
|
|||
|
Close();
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
MessageBox.Show(ex.Message, "Ошибка при сохранении",
|
|||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
private void cancelButton_Click(object sender, EventArgs e) => Close();
|
|||
|
}
|
|||
|
}
|