140 lines
5.1 KiB
C#
140 lines
5.1 KiB
C#
using MySql.Data.MySqlClient;
|
|
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 Musical
|
|
{
|
|
public partial class TabControl : Form
|
|
{
|
|
public TabControl()
|
|
{
|
|
InitializeComponent();
|
|
|
|
}
|
|
|
|
|
|
|
|
public partial class MainForm : Form
|
|
{
|
|
private string connectionString = "Server=192.168.201.207;Database=ISP41_Gusarov_Musical;Uid=ISP41_Gusarov;Pwd=ISP41_Gusarov;";
|
|
private object tabMusicalInstrument;
|
|
private object tabSellHistory;
|
|
private object dataGridView1;
|
|
|
|
public MainForm()
|
|
{
|
|
|
|
LoadMusicalInstruments();
|
|
LoadClients();
|
|
LoadSellHistory();
|
|
}
|
|
|
|
// Загрузка инструментов
|
|
private void LoadMusicalInstruments()
|
|
{
|
|
using (MySqlConnection conn = new MySqlConnection(connectionString))
|
|
{
|
|
try
|
|
{
|
|
conn.Open();
|
|
string query = "SELECT id, name, price, brand FROM MusicalInstrument";
|
|
MySqlDataAdapter adapter = new MySqlDataAdapter(query, conn);
|
|
DataTable dt = new DataTable();
|
|
adapter.Fill(dt);
|
|
DataGridView DataSource = dt;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show("Ошибка загрузки инструментов: " + ex.Message);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Загрузка клиентов
|
|
private void LoadClients()
|
|
{
|
|
using (MySqlConnection conn = new MySqlConnection(connectionString))
|
|
{
|
|
try
|
|
{
|
|
conn.Open();
|
|
string query = "SELECT id, name, phone, email FROM Clients";
|
|
MySqlDataAdapter adapter = new MySqlDataAdapter(query, conn);
|
|
DataTable dt = new DataTable();
|
|
adapter.Fill(dt);
|
|
tabMusicalInstrument.DataSource = dt;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show("Ошибка загрузки клиентов: " + ex.Message);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Загрузка истории продаж
|
|
private void LoadSellHistory()
|
|
{
|
|
using (MySqlConnection conn = new MySqlConnection(connectionString))
|
|
{
|
|
try
|
|
{
|
|
conn.Open();
|
|
string query = @"
|
|
SELECT s.id, c.name AS ClientName, i.name AS InstrumentName, s.sell_date
|
|
FROM SellHistory s
|
|
JOIN Clients c ON s.client_id = c.id
|
|
JOIN MusicalInstrument i ON s.instrument_id = i.id";
|
|
MySqlDataAdapter adapter = new MySqlDataAdapter(query, conn);
|
|
DataTable dt = new DataTable();
|
|
adapter.Fill(dt);
|
|
tabSellHistory.DataSource = dt;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show("Ошибка загрузки истории продаж: " + ex.Message);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Кнопки добавить/редактировать/удалить (пример для инструментов)
|
|
private void btnAddInstrument_Click(object sender, EventArgs e)
|
|
{
|
|
// Открыть форму добавления
|
|
MessageBox.Show("Добавить инструмент");
|
|
// Здесь можно открыть новую форму или диалог
|
|
}
|
|
|
|
private void btnEditInstrument_Click(object sender, EventArgs e)
|
|
{
|
|
if (dataGridView1.SelectedRows.Count > 0)
|
|
{
|
|
int id = (int)dataGridView1.SelectedRows[0].Cells["id"].Value;
|
|
MessageBox.Show("Редактировать инструмент ID: " + id);
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show("Выберите строку для редактирования.");
|
|
}
|
|
}
|
|
|
|
private void btnDeleteInstrument_Click(object sender, EventArgs e)
|
|
{
|
|
if (dataGridView1.SelectedRows.Count <= 0)
|
|
{
|
|
return;
|
|
}
|
|
int id = (int)dataGridView1.SelectedRows[0].Cells["id"].Value;
|
|
if (MessageBox.Show("Удалить запись?", "Подтверждение", MessageBoxButtons.YesNo) == DialogResult) ;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|