First form common.

This commit is contained in:
Programmist73 2023-05-10 13:13:06 +04:00
parent fc980a2b47
commit b475dac5d5
4 changed files with 215 additions and 162 deletions

View File

@ -42,7 +42,8 @@ namespace TransportCompany
{ {
dataGridView.DataSource = list; dataGridView.DataSource = list;
dataGridView.Columns["Id"].Visible = false; dataGridView.Columns["Id"].Visible = false;
dataGridView.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; dataGridView.Columns["MongoId"].Visible = false;
dataGridView.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
} }
_logger.LogInformation("Загрузка типов грузов"); _logger.LogInformation("Загрузка типов грузов");
@ -78,6 +79,8 @@ namespace TransportCompany
{ {
form.Id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); form.Id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
form.MongoId = Convert.ToString(dataGridView.SelectedRows[0].Cells["MongoId"].Value);
if (form.ShowDialog() == DialogResult.OK) if (form.ShowDialog() == DialogResult.OK)
{ {
LoadData(); LoadData();
@ -95,13 +98,16 @@ namespace TransportCompany
{ {
int id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value); int id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
string _mongoId = Convert.ToString(dataGridView.SelectedRows[0].Cells["MongoId"].Value);
_logger.LogInformation("Удаление типа груза"); _logger.LogInformation("Удаление типа груза");
try try
{ {
if (!_logicC.Delete(new CargoBindingModel if (!_logicC.Delete(new CargoBindingModel
{ {
Id = id Id = id,
MongoId = _mongoId
})) }))
{ {
throw new Exception("Ошибка при удалении. Дополнительная информация в логах."); throw new Exception("Ошибка при удалении. Дополнительная информация в логах.");

View File

@ -22,8 +22,12 @@ namespace TransportCompany
private int? _id; private int? _id;
private string? _mongoId;
public int Id { set { _id = value; } } public int Id { set { _id = value; } }
public string MongoId { set { _mongoId = value; } }
public FormCreateCargo(ILogger<FormCreateCargo> logger, ICargoLogic logicCg) public FormCreateCargo(ILogger<FormCreateCargo> logger, ICargoLogic logicCg)
{ {
InitializeComponent(); InitializeComponent();
@ -35,7 +39,27 @@ namespace TransportCompany
private void FormCreateCargo_Load(object sender, EventArgs e) private void FormCreateCargo_Load(object sender, EventArgs e)
{ {
//проверка на заполнение поля id. Если оно заполнено, то пробуем получить запись и выести её на экран //проверка на заполнение поля id. Если оно заполнено, то пробуем получить запись и выести её на экран
if (_id.HasValue) if (!string.IsNullOrEmpty(_mongoId))
{
try
{
_logger.LogInformation("Получение типа груза");
var view = _logicCg.ReadElement(new CargoSearchModel { MongoId = _mongoId });
if (view != null)
{
textBoxCargo.Text = view.TypeCargo;
}
}
catch (Exception ex)
{
_logger.LogError(ex, "Ошибка получения типа груза");
MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
else if (_id.HasValue)
{ {
try try
{ {
@ -71,7 +95,8 @@ namespace TransportCompany
{ {
var model = new CargoBindingModel var model = new CargoBindingModel
{ {
Id = 0, Id = _id ?? 0,
MongoId = _mongoId,
TypeCargo = textBoxCargo.Text TypeCargo = textBoxCargo.Text
}; };
@ -79,7 +104,7 @@ namespace TransportCompany
if (!operationResult) if (!operationResult)
{ {
throw new Exception("Ошибка при сохранеии. Дополнительная информация в логах."); throw new Exception("Ошибка при сохранении. Дополнительная информация в логах.");
} }
MessageBox.Show("Сохранение прошло успешно", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information); MessageBox.Show("Сохранение прошло успешно", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information);

View File

@ -32,6 +32,8 @@
textBoxTransport = new TextBox(); textBoxTransport = new TextBox();
buttonCreate = new Button(); buttonCreate = new Button();
buttonCancel = new Button(); buttonCancel = new Button();
label2 = new Label();
textBoxTypeTransportation = new TextBox();
SuspendLayout(); SuspendLayout();
// //
// label1 // label1
@ -52,7 +54,7 @@
// //
// buttonCreate // buttonCreate
// //
buttonCreate.Location = new Point(262, 92); buttonCreate.Location = new Point(262, 164);
buttonCreate.Name = "buttonCreate"; buttonCreate.Name = "buttonCreate";
buttonCreate.Size = new Size(94, 29); buttonCreate.Size = new Size(94, 29);
buttonCreate.TabIndex = 2; buttonCreate.TabIndex = 2;
@ -62,7 +64,7 @@
// //
// buttonCancel // buttonCancel
// //
buttonCancel.Location = new Point(375, 92); buttonCancel.Location = new Point(375, 164);
buttonCancel.Name = "buttonCancel"; buttonCancel.Name = "buttonCancel";
buttonCancel.Size = new Size(94, 29); buttonCancel.Size = new Size(94, 29);
buttonCancel.TabIndex = 3; buttonCancel.TabIndex = 3;
@ -70,11 +72,29 @@
buttonCancel.UseVisualStyleBackColor = true; buttonCancel.UseVisualStyleBackColor = true;
buttonCancel.Click += ButtonCancel_Click; buttonCancel.Click += ButtonCancel_Click;
// //
// label2
//
label2.AutoSize = true;
label2.Location = new Point(36, 112);
label2.Name = "label2";
label2.Size = new Size(116, 20);
label2.TabIndex = 4;
label2.Text = "Тип перевозки:";
//
// textBoxTypeTransportation
//
textBoxTypeTransportation.Location = new Point(215, 109);
textBoxTypeTransportation.Name = "textBoxTypeTransportation";
textBoxTypeTransportation.Size = new Size(254, 27);
textBoxTypeTransportation.TabIndex = 5;
//
// FormCreateTransport // FormCreateTransport
// //
AutoScaleDimensions = new SizeF(8F, 20F); AutoScaleDimensions = new SizeF(8F, 20F);
AutoScaleMode = AutoScaleMode.Font; AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(527, 155); ClientSize = new Size(527, 215);
Controls.Add(textBoxTypeTransportation);
Controls.Add(label2);
Controls.Add(buttonCancel); Controls.Add(buttonCancel);
Controls.Add(buttonCreate); Controls.Add(buttonCreate);
Controls.Add(textBoxTransport); Controls.Add(textBoxTransport);
@ -92,5 +112,7 @@
private TextBox textBoxTransport; private TextBox textBoxTransport;
private Button buttonCreate; private Button buttonCreate;
private Button buttonCancel; private Button buttonCancel;
private Label label2;
private TextBox textBoxTypeTransportation;
} }
} }