71 lines
2.5 KiB
C#
71 lines
2.5 KiB
C#
|
using ProjectFamilyBudget.Entities;
|
|||
|
using ProjectFamilyBudget.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;
|
|||
|
|
|||
|
namespace ProjectFamilyBudget.Forms
|
|||
|
{
|
|||
|
public partial class FormPeopleIncome : Form
|
|||
|
{
|
|||
|
private readonly IPeopleIncome _peopleIncome;
|
|||
|
public FormPeopleIncome(IPeopleIncome peopleIncome, IPeople people, IIncome income)
|
|||
|
{
|
|||
|
InitializeComponent();
|
|||
|
_peopleIncome = peopleIncome ??
|
|||
|
throw new ArgumentNullException(nameof(peopleIncome));
|
|||
|
comboBoxPeople.DataSource = people.ReadPeople();
|
|||
|
comboBoxPeople.DisplayMember = "Name";
|
|||
|
comboBoxPeople.ValueMember = "Id";
|
|||
|
|
|||
|
ColumnIncome.DataSource = income.ReadIncome();
|
|||
|
ColumnIncome.DisplayMember = "Name";
|
|||
|
ColumnIncome.ValueMember = "Id";
|
|||
|
}
|
|||
|
|
|||
|
private void buttonSave_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
if ((dataGridView.RowCount < 1)
|
|||
|
||
|
|||
|
(comboBoxPeople.SelectedIndex < 0))
|
|||
|
{
|
|||
|
throw new Exception("Имеются незаполненные поля");
|
|||
|
}
|
|||
|
_peopleIncome.CreatePeopleIncome(PeopleIncome.CreateOperation(0, (int)comboBoxPeople.SelectedValue!,
|
|||
|
CreateListPeopleIncomeFromDataGrid()));
|
|||
|
Close();
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
MessageBox.Show(ex.Message, "Ошибка при сохранении",
|
|||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void buttonCansel_Click(object sender, EventArgs e) => Close();
|
|||
|
private List<IncomePeopleIncome> CreateListPeopleIncomeFromDataGrid()
|
|||
|
{
|
|||
|
var list = new List<IncomePeopleIncome>();
|
|||
|
foreach (DataGridViewRow row in dataGridView.Rows)
|
|||
|
{
|
|||
|
if (row.Cells["ColumnIncome"].Value == null || row.Cells["ColumnSum"].Value == null)
|
|||
|
{
|
|||
|
continue;
|
|||
|
}
|
|||
|
list.Add(IncomePeopleIncome.CreateElement(0, Convert.ToInt32(row.Cells["ColumnIncome"].Value)
|
|||
|
, Convert.ToInt32(row.Cells["ColumnSum"].Value)));
|
|||
|
}
|
|||
|
return list;
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
}
|