68 lines
2.3 KiB
C#
68 lines
2.3 KiB
C#
using ConfectioneryContracts.BusinessLogicsContracts;
|
||
using System;
|
||
using System.Collections;
|
||
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 ConfectioneryView
|
||
{
|
||
public partial class FormSellPastry : Form
|
||
{
|
||
private readonly IShopLogic _shopLogic;
|
||
private readonly IPastryLogic _pastryLogic;
|
||
|
||
public FormSellPastry(IPastryLogic logic, IShopLogic shopLogic)
|
||
{
|
||
InitializeComponent();
|
||
_pastryLogic = logic;
|
||
_shopLogic = shopLogic;
|
||
var list = logic.ReadList(null);
|
||
if (list != null)
|
||
{
|
||
comboBoxPastry.DisplayMember = "PastryName";
|
||
comboBoxPastry.ValueMember = "Id";
|
||
comboBoxPastry.DataSource = list;
|
||
comboBoxPastry.SelectedItem = null;
|
||
}
|
||
}
|
||
|
||
private void ButtonSell_Click(object sender, EventArgs e)
|
||
{
|
||
if (comboBoxPastry.SelectedValue == null)
|
||
{
|
||
MessageBox.Show("Выберите изделие", "Ошибка",
|
||
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||
return;
|
||
}
|
||
if (numericUpDownCount.Value <= 0)
|
||
{
|
||
MessageBox.Show("Количество должно быть больше нуля", "Ошибка",
|
||
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||
return;
|
||
}
|
||
var count = (int)numericUpDownCount.Value;
|
||
var pastry = _pastryLogic.ReadElement(new() { Id = (int)comboBoxPastry.SelectedValue });
|
||
if (pastry == null || !_shopLogic.SellPastries(pastry, count))
|
||
{
|
||
MessageBox.Show("Не удалось продать изделия. Информацию смотрите в логах", "Ошибка",
|
||
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||
return;
|
||
}
|
||
DialogResult = DialogResult.OK;
|
||
Close();
|
||
}
|
||
|
||
private void ButtonCancel_Click(object sender, EventArgs e)
|
||
{
|
||
DialogResult = DialogResult.Cancel;
|
||
Close();
|
||
}
|
||
}
|
||
}
|