diff --git a/Components/WinForms/FormMain.Designer.cs b/Components/WinForms/FormMain.Designer.cs
index 03801cd..991577d 100644
--- a/Components/WinForms/FormMain.Designer.cs
+++ b/Components/WinForms/FormMain.Designer.cs
@@ -48,7 +48,7 @@
//
contextMenuStrip.Items.AddRange(new ToolStripItem[] { createElementToolStripMenuItem, updateElementToolStripMenuItem, deleteElementToolStripMenuItem, createWordDocumentToolStripMenuItem, createExcelDocumentToolStripMenuItem, createPdfDocumentToolStripMenuItem, orderTypesToolStripMenuItem });
contextMenuStrip.Name = "contextMenuStrip";
- contextMenuStrip.Size = new Size(205, 180);
+ contextMenuStrip.Size = new Size(205, 158);
contextMenuStrip.Text = "Контекстное меню";
//
// createElementToolStripMenuItem
diff --git a/Components/WinForms/FormMain.cs b/Components/WinForms/FormMain.cs
index 72ee528..09ba268 100644
--- a/Components/WinForms/FormMain.cs
+++ b/Components/WinForms/FormMain.cs
@@ -57,7 +57,7 @@ namespace WinForms
"Type",
"Sum",
"Id",
- "WaiterFullName",
+ "WaiterFullName"
};
userTreeView.SetHierarchy(hierarchy);
@@ -131,13 +131,7 @@ namespace WinForms
///
private void orderTypesToolStripMenuItem_Click(object sender, EventArgs e)
{
- var service = Program.ServiceProvider?.GetService(typeof(FormOrderTypes));
- if (!(service is FormOrderTypes form))
- {
- return;
- }
-
- form.ShowDialog();
+ ShowFormOrderTypes();
}
///
@@ -187,7 +181,7 @@ namespace WinForms
}
///
- /// Редактировать элемент
+ /// Редактировать запись
///
private void UpdateElement()
{
@@ -197,7 +191,7 @@ namespace WinForms
return;
}
- var selectedOrder = userTreeView.GetSelectedObject();
+ var selectedOrder = userTreeView.GetSelectedObject();
if (selectedOrder == null)
{
MessageBox.Show("Выберите счет для редактирования!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
@@ -212,16 +206,16 @@ namespace WinForms
}
///
- /// Удалить элемент
+ /// Удалить запись
///
private void DeleteElement()
{
- if (MessageBox.Show("Удалить запись", "Вопрос", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
+ if (MessageBox.Show("Удалить запись?", "Вопрос", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes)
{
return;
}
- var selectedOrder = userTreeView.GetSelectedObject();
+ var selectedOrder = userTreeView.GetSelectedObject();
int id = Convert.ToInt32(selectedOrder.Id);
try
{
@@ -356,7 +350,7 @@ namespace WinForms
int count = 0;
foreach (var order in orders)
{
- if (order.Type == orderType.Name && !string.IsNullOrEmpty(order.Sum))
+ if (order.Type == orderType.Name && string.IsNullOrEmpty(order.Sum))
{
count++;
}
@@ -367,5 +361,73 @@ namespace WinForms
pdfPieChart1.CreatePieChart(new DataForPieChart(fileName, "Информация по оплаченным счетам каждого типа заказов", "Круговая диаграмма", DiagramLegendEnum.Top, "Типы заказов", items));
}
+
+ ///
+ /// Вывести форму списка типов заказов
+ ///
+ private void ShowFormOrderTypes()
+ {
+ var service = Program.ServiceProvider?.GetService(typeof(FormOrderTypes));
+ if (!(service is FormOrderTypes form))
+ {
+ return;
+ }
+
+ form.ShowDialog();
+ }
+
+ ///
+ /// Обработка нажатия кнопок
+ ///
+ ///
+ ///
+ ///
+ protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
+ {
+ // Ctrl+A - добавить запись
+ if (keyData == (Keys.Control | Keys.A))
+ {
+ AddElement();
+ return true;
+ }
+ // Ctrl+U - редактировать запись
+ if (keyData == (Keys.Control | Keys.U))
+ {
+ UpdateElement();
+ return true;
+ }
+ // Ctrl+D - удалить запись
+ if (keyData == (Keys.Control | Keys.D))
+ {
+ DeleteElement();
+ return true;
+ }
+ // Ctrl+S - создать документ Word
+ if (keyData == (Keys.Control | Keys.S))
+ {
+ CreateWordDocument();
+ return true;
+ }
+ // Ctrl+T - создать документ Excel
+ if (keyData == (Keys.Control | Keys.T))
+ {
+ CreateExcelDocument();
+ return true;
+ }
+ // Ctrl+C - создать документ Pdf
+ if (keyData == (Keys.Control | Keys.C))
+ {
+ CreatePdfDocument();
+ return true;
+ }
+ // Ctrl+M - вывести форму списка типов заказов
+ if (keyData == (Keys.Control | Keys.M))
+ {
+ ShowFormOrderTypes();
+ return true;
+ }
+
+ return base.ProcessCmdKey(ref msg, keyData);
+ }
}
}
diff --git a/Components/WinForms/FormOrder.cs b/Components/WinForms/FormOrder.cs
index acb1b48..ac9cd64 100644
--- a/Components/WinForms/FormOrder.cs
+++ b/Components/WinForms/FormOrder.cs
@@ -84,7 +84,7 @@ namespace WinForms
textBoxWaiterFullName.Text = order.WaiterFullName;
textBoxInfo.Text = order.Info;
customComboBox.SelectedItem = order.Type;
- if (string.IsNullOrEmpty(order.Sum))
+ if (!string.IsNullOrEmpty(order.Sum))
{
controlInputNullableDouble.Value = double.Parse(order.Sum!);
}
diff --git a/Components/WinForms/FormOrderTypes.cs b/Components/WinForms/FormOrderTypes.cs
index ba103cb..a53a09f 100644
--- a/Components/WinForms/FormOrderTypes.cs
+++ b/Components/WinForms/FormOrderTypes.cs
@@ -1,6 +1,7 @@
using Contracts.BindingModels;
using Contracts.BusinessLogicsContracts;
using DocumentFormat.OpenXml.Office2010.ExcelAc;
+using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -17,7 +18,7 @@ namespace WinForms
/// Форма для типов заказов
///
public partial class FormOrderTypes : Form
- {
+ {
///
/// Бизнес-логика для сущности "Тип заказа"
///
@@ -71,7 +72,7 @@ namespace WinForms
Name = name
};
- var operatingResult = id == 0 ? _orderTypeLogic.Update(model) : _orderTypeLogic.Create(model);
+ var operatingResult = id != 0 ? _orderTypeLogic.Update(model) : _orderTypeLogic.Create(model);
if (!operatingResult)
{
throw new Exception("Ошибка при создании сущности 'Тип заказа'!");
@@ -112,7 +113,7 @@ namespace WinForms
if (e.KeyData == Keys.Delete)
{
- if (MessageBox.Show("Удалить выбранный элемент&", "Удаление", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
+ if (MessageBox.Show("Удалить выбранный элемент?", "Удаление", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
_orderTypeLogic.Delete(new OrderTypeBindingModel { Id = (int)dataGridView.CurrentRow.Cells[0].Value });
LoadData();