Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
310a3a8117 | ||
|
eb6aaa25a6 |
29
ProjectAirline/Entities/Airplane.cs
Normal file
29
ProjectAirline/Entities/Airplane.cs
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Entities;
|
||||||
|
|
||||||
|
public class Airplane
|
||||||
|
{
|
||||||
|
public int Id { get; private set; }
|
||||||
|
public string Country { get; private set; } = string.Empty;
|
||||||
|
public string Model { get; private set; } = string.Empty;
|
||||||
|
public int Capacity { get; private set; }
|
||||||
|
|
||||||
|
public static Airplane CreateEntity(int id, string country, string model, int capacity)
|
||||||
|
{
|
||||||
|
return new Airplane
|
||||||
|
{
|
||||||
|
Id = id,
|
||||||
|
Country = country ?? string.Empty,
|
||||||
|
Model = model ?? string.Empty,
|
||||||
|
Capacity = capacity
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
29
ProjectAirline/Entities/Employee.cs
Normal file
29
ProjectAirline/Entities/Employee.cs
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
using ProjectAirline.Entities.Enums;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Entities;
|
||||||
|
|
||||||
|
public class Employee
|
||||||
|
{
|
||||||
|
public int Id { get; private set; }
|
||||||
|
public string FirstName { get; private set; } = string.Empty;
|
||||||
|
public string LastName { get; private set; } = string.Empty;
|
||||||
|
public string ContactInformation { get; private set; } = string.Empty;
|
||||||
|
public EmployeePost EmployeePost { get; private set; }
|
||||||
|
public static Employee CreateEntity(int id, string first, string last, string contactInfo,
|
||||||
|
EmployeePost employeePost)
|
||||||
|
{
|
||||||
|
return new Employee
|
||||||
|
{
|
||||||
|
Id = id,
|
||||||
|
FirstName = first ?? string.Empty,
|
||||||
|
LastName = last ?? string.Empty,
|
||||||
|
ContactInformation = contactInfo ?? string.Empty,
|
||||||
|
EmployeePost = employeePost
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
25
ProjectAirline/Entities/EmployeeFlight.cs
Normal file
25
ProjectAirline/Entities/EmployeeFlight.cs
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Entities;
|
||||||
|
|
||||||
|
public class EmployeeFlight
|
||||||
|
{
|
||||||
|
public int Id { get; private set; }
|
||||||
|
public int EmployeeId { get; private set; }
|
||||||
|
public int FlightId { get; private set; }
|
||||||
|
public int HoursWorked { get; private set; }
|
||||||
|
public static EmployeeFlight CreateOperation(int id, int employeeId, int flightId, int hoursWorked)
|
||||||
|
{
|
||||||
|
return new EmployeeFlight
|
||||||
|
{
|
||||||
|
Id = id,
|
||||||
|
EmployeeId = employeeId,
|
||||||
|
FlightId = flightId,
|
||||||
|
HoursWorked = hoursWorked
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
18
ProjectAirline/Entities/Enums/EmployeePost.cs
Normal file
18
ProjectAirline/Entities/Enums/EmployeePost.cs
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Entities.Enums;
|
||||||
|
|
||||||
|
public enum EmployeePost
|
||||||
|
{
|
||||||
|
None = 0,
|
||||||
|
|
||||||
|
FlightAttendant = 1,
|
||||||
|
|
||||||
|
FlightEngineer = 2,
|
||||||
|
|
||||||
|
Pilot = 3
|
||||||
|
}
|
20
ProjectAirline/Entities/Enums/FoodPreferences.cs
Normal file
20
ProjectAirline/Entities/Enums/FoodPreferences.cs
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Entities.Enums;
|
||||||
|
[Flags]
|
||||||
|
public enum FoodPreferences
|
||||||
|
{
|
||||||
|
None = 0,
|
||||||
|
|
||||||
|
SpicyFood = 1,
|
||||||
|
|
||||||
|
Meat = 2,
|
||||||
|
|
||||||
|
Sweets = 4,
|
||||||
|
|
||||||
|
BitterFood = 8
|
||||||
|
}
|
37
ProjectAirline/Entities/Flight.cs
Normal file
37
ProjectAirline/Entities/Flight.cs
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Entities;
|
||||||
|
|
||||||
|
public class Flight
|
||||||
|
{
|
||||||
|
public int Id { get; private set; }
|
||||||
|
public int AirplaneID { get; private set; }
|
||||||
|
public DateTime DepartureTime { get; private set; }
|
||||||
|
public DateTime ArrivalTime { get; private set; }
|
||||||
|
public string Destination { get; private set; } = string.Empty;
|
||||||
|
public string DeparturePoint { get; private set; } = string.Empty;
|
||||||
|
public int TicketPrice { get; private set; }
|
||||||
|
public IEnumerable<EmployeeFlight> EmployeeFlights { get; private set; } = [];
|
||||||
|
public static Flight CreateOperation(int id, int airPlaneID, string destination, string departurePoint, int ticketPrice,
|
||||||
|
IEnumerable<EmployeeFlight> employeeFlights)
|
||||||
|
{
|
||||||
|
return new Flight
|
||||||
|
{
|
||||||
|
Id = id,
|
||||||
|
AirplaneID = airPlaneID,
|
||||||
|
DepartureTime = DateTime.Now,
|
||||||
|
ArrivalTime = DateTime.Now,
|
||||||
|
Destination = destination ?? string.Empty,
|
||||||
|
DeparturePoint = departurePoint ?? string.Empty,
|
||||||
|
TicketPrice = ticketPrice,
|
||||||
|
EmployeeFlights = employeeFlights
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
28
ProjectAirline/Entities/Passanger.cs
Normal file
28
ProjectAirline/Entities/Passanger.cs
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
using ProjectAirline.Entities.Enums;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Entities;
|
||||||
|
|
||||||
|
public class Passenger
|
||||||
|
{
|
||||||
|
public int Id { get; private set; }
|
||||||
|
public FoodPreferences FoodPreferences { get; private set; }
|
||||||
|
public string FirstName { get; private set; } = string.Empty;
|
||||||
|
public string LastName { get; private set; } = string.Empty;
|
||||||
|
public DateTime DateBirth { get; private set; }
|
||||||
|
public static Passenger CreateEntity(int id, FoodPreferences foodPreferences, string first, string last)
|
||||||
|
{
|
||||||
|
return new Passenger
|
||||||
|
{
|
||||||
|
Id = id,
|
||||||
|
FoodPreferences = foodPreferences,
|
||||||
|
FirstName = first ?? string.Empty,
|
||||||
|
LastName = last ?? string.Empty,
|
||||||
|
DateBirth = DateTime.Now
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
30
ProjectAirline/Entities/Ticket.cs
Normal file
30
ProjectAirline/Entities/Ticket.cs
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Entities;
|
||||||
|
|
||||||
|
public class Ticket
|
||||||
|
{
|
||||||
|
public int Id { get; private set; }
|
||||||
|
public int FlightID { get; private set; }
|
||||||
|
public int PassengerID { get; private set; }
|
||||||
|
|
||||||
|
public int TicketPrice { get; private set; }
|
||||||
|
public DateTime DateBuy { get; private set; }
|
||||||
|
public static Ticket CreateTicket(int id, int flightID, int passengerID, int ticketPrice)
|
||||||
|
{
|
||||||
|
return new Ticket
|
||||||
|
{
|
||||||
|
Id = id,
|
||||||
|
FlightID = flightID,
|
||||||
|
PassengerID = passengerID,
|
||||||
|
TicketPrice = ticketPrice,
|
||||||
|
DateBuy = DateTime.Now
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
39
ProjectAirline/Form1.Designer.cs
generated
39
ProjectAirline/Form1.Designer.cs
generated
@ -1,39 +0,0 @@
|
|||||||
namespace ProjectAirline
|
|
||||||
{
|
|
||||||
partial class Form1
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Required designer variable.
|
|
||||||
/// </summary>
|
|
||||||
private System.ComponentModel.IContainer components = null;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Clean up any resources being used.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
|
||||||
protected override void Dispose(bool disposing)
|
|
||||||
{
|
|
||||||
if (disposing && (components != null))
|
|
||||||
{
|
|
||||||
components.Dispose();
|
|
||||||
}
|
|
||||||
base.Dispose(disposing);
|
|
||||||
}
|
|
||||||
|
|
||||||
#region Windows Form Designer generated code
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Required method for Designer support - do not modify
|
|
||||||
/// the contents of this method with the code editor.
|
|
||||||
/// </summary>
|
|
||||||
private void InitializeComponent()
|
|
||||||
{
|
|
||||||
this.components = new System.ComponentModel.Container();
|
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
||||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
|
||||||
this.Text = "Form1";
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
namespace ProjectAirline
|
|
||||||
{
|
|
||||||
public partial class Form1 : Form
|
|
||||||
{
|
|
||||||
public Form1()
|
|
||||||
{
|
|
||||||
InitializeComponent();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
138
ProjectAirline/Forms/FormAirline.Designer.cs
generated
Normal file
138
ProjectAirline/Forms/FormAirline.Designer.cs
generated
Normal file
@ -0,0 +1,138 @@
|
|||||||
|
namespace ProjectAirline
|
||||||
|
{
|
||||||
|
partial class FormAirline
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
menuStrip = new MenuStrip();
|
||||||
|
справочникиToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
AirplaneToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
EmployeeToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
PassengerToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
операцииToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
FlightToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
TicketToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
отчетыToolStripMenuItem = new ToolStripMenuItem();
|
||||||
|
menuStrip.SuspendLayout();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// menuStrip
|
||||||
|
//
|
||||||
|
menuStrip.ImageScalingSize = new Size(20, 20);
|
||||||
|
menuStrip.Items.AddRange(new ToolStripItem[] { справочникиToolStripMenuItem, операцииToolStripMenuItem, отчетыToolStripMenuItem });
|
||||||
|
menuStrip.Location = new Point(0, 0);
|
||||||
|
menuStrip.Name = "menuStrip";
|
||||||
|
menuStrip.Size = new Size(782, 28);
|
||||||
|
menuStrip.TabIndex = 0;
|
||||||
|
menuStrip.Text = "menuStrip1";
|
||||||
|
//
|
||||||
|
// справочникиToolStripMenuItem
|
||||||
|
//
|
||||||
|
справочникиToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { AirplaneToolStripMenuItem, EmployeeToolStripMenuItem, PassengerToolStripMenuItem });
|
||||||
|
справочникиToolStripMenuItem.Name = "справочникиToolStripMenuItem";
|
||||||
|
справочникиToolStripMenuItem.Size = new Size(117, 24);
|
||||||
|
справочникиToolStripMenuItem.Text = "Справочники";
|
||||||
|
//
|
||||||
|
// AirplaneToolStripMenuItem
|
||||||
|
//
|
||||||
|
AirplaneToolStripMenuItem.Name = "AirplaneToolStripMenuItem";
|
||||||
|
AirplaneToolStripMenuItem.Size = new Size(173, 26);
|
||||||
|
AirplaneToolStripMenuItem.Text = "Самолёты";
|
||||||
|
AirplaneToolStripMenuItem.Click += AirplaneToolStripMenuItem_Click;
|
||||||
|
//
|
||||||
|
// EmployeeToolStripMenuItem
|
||||||
|
//
|
||||||
|
EmployeeToolStripMenuItem.Name = "EmployeeToolStripMenuItem";
|
||||||
|
EmployeeToolStripMenuItem.Size = new Size(173, 26);
|
||||||
|
EmployeeToolStripMenuItem.Text = "Работники";
|
||||||
|
EmployeeToolStripMenuItem.Click += EmployeeToolStripMenuItem_Click;
|
||||||
|
//
|
||||||
|
// PassengerToolStripMenuItem
|
||||||
|
//
|
||||||
|
PassengerToolStripMenuItem.Name = "PassengerToolStripMenuItem";
|
||||||
|
PassengerToolStripMenuItem.Size = new Size(173, 26);
|
||||||
|
PassengerToolStripMenuItem.Text = "Пассажиры";
|
||||||
|
PassengerToolStripMenuItem.Click += PassengerToolStripMenuItem_Click;
|
||||||
|
//
|
||||||
|
// операцииToolStripMenuItem
|
||||||
|
//
|
||||||
|
операцииToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { FlightToolStripMenuItem, TicketToolStripMenuItem });
|
||||||
|
операцииToolStripMenuItem.Name = "операцииToolStripMenuItem";
|
||||||
|
операцииToolStripMenuItem.Size = new Size(95, 24);
|
||||||
|
операцииToolStripMenuItem.Text = "Операции";
|
||||||
|
//
|
||||||
|
// FlightToolStripMenuItem
|
||||||
|
//
|
||||||
|
FlightToolStripMenuItem.Name = "FlightToolStripMenuItem";
|
||||||
|
FlightToolStripMenuItem.Size = new Size(211, 26);
|
||||||
|
FlightToolStripMenuItem.Text = "Рейсы";
|
||||||
|
FlightToolStripMenuItem.Click += FlightToolStripMenuItem_Click;
|
||||||
|
//
|
||||||
|
// TicketToolStripMenuItem
|
||||||
|
//
|
||||||
|
TicketToolStripMenuItem.Name = "TicketToolStripMenuItem";
|
||||||
|
TicketToolStripMenuItem.Size = new Size(211, 26);
|
||||||
|
TicketToolStripMenuItem.Text = "Покупка билетов";
|
||||||
|
TicketToolStripMenuItem.Click += TicketToolStripMenuItem_Click;
|
||||||
|
//
|
||||||
|
// отчетыToolStripMenuItem
|
||||||
|
//
|
||||||
|
отчетыToolStripMenuItem.Name = "отчетыToolStripMenuItem";
|
||||||
|
отчетыToolStripMenuItem.Size = new Size(73, 24);
|
||||||
|
отчетыToolStripMenuItem.Text = "Отчеты";
|
||||||
|
//
|
||||||
|
// FormAirline
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
BackgroundImage = Properties.Resources.samolet;
|
||||||
|
BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
ClientSize = new Size(782, 453);
|
||||||
|
Controls.Add(menuStrip);
|
||||||
|
MainMenuStrip = menuStrip;
|
||||||
|
Name = "FormAirline";
|
||||||
|
StartPosition = FormStartPosition.CenterScreen;
|
||||||
|
Text = "Авиалинии";
|
||||||
|
menuStrip.ResumeLayout(false);
|
||||||
|
menuStrip.PerformLayout();
|
||||||
|
ResumeLayout(false);
|
||||||
|
PerformLayout();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private MenuStrip menuStrip;
|
||||||
|
private ToolStripMenuItem справочникиToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem операцииToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem отчетыToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem AirplaneToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem EmployeeToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem PassengerToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem FlightToolStripMenuItem;
|
||||||
|
private ToolStripMenuItem TicketToolStripMenuItem;
|
||||||
|
}
|
||||||
|
}
|
76
ProjectAirline/Forms/FormAirline.cs
Normal file
76
ProjectAirline/Forms/FormAirline.cs
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
using ProjectAirline.Forms;
|
||||||
|
using Unity;
|
||||||
|
|
||||||
|
namespace ProjectAirline
|
||||||
|
{
|
||||||
|
public partial class FormAirline : Form
|
||||||
|
{
|
||||||
|
private readonly IUnityContainer _container;
|
||||||
|
|
||||||
|
public FormAirline(IUnityContainer container)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_container = container ?? throw new ArgumentNullException(nameof(container));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AirplaneToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormAirplanes>().ShowDialog();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void EmployeeToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormEmployees>().ShowDialog();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void PassengerToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormPassengers>().ShowDialog();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void FlightToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormFlights>().ShowDialog();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void TicketToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormTickets>().ShowDialog();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
123
ProjectAirline/Forms/FormAirline.resx
Normal file
123
ProjectAirline/Forms/FormAirline.resx
Normal file
@ -0,0 +1,123 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<metadata name="menuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<value>17, 17</value>
|
||||||
|
</metadata>
|
||||||
|
</root>
|
142
ProjectAirline/Forms/FormAirplane.Designer.cs
generated
Normal file
142
ProjectAirline/Forms/FormAirplane.Designer.cs
generated
Normal file
@ -0,0 +1,142 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormAirplane
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
label1 = new Label();
|
||||||
|
label2 = new Label();
|
||||||
|
label3 = new Label();
|
||||||
|
textBoxCountry = new TextBox();
|
||||||
|
textBoxModel = new TextBox();
|
||||||
|
numericUpDownCapacity = new NumericUpDown();
|
||||||
|
buttonAdd = new Button();
|
||||||
|
buttonCancel = new Button();
|
||||||
|
((System.ComponentModel.ISupportInitialize)numericUpDownCapacity).BeginInit();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// label1
|
||||||
|
//
|
||||||
|
label1.AutoSize = true;
|
||||||
|
label1.Location = new Point(31, 41);
|
||||||
|
label1.Name = "label1";
|
||||||
|
label1.Size = new Size(61, 20);
|
||||||
|
label1.TabIndex = 0;
|
||||||
|
label1.Text = "Страна:";
|
||||||
|
//
|
||||||
|
// label2
|
||||||
|
//
|
||||||
|
label2.AutoSize = true;
|
||||||
|
label2.Location = new Point(31, 106);
|
||||||
|
label2.Name = "label2";
|
||||||
|
label2.Size = new Size(66, 20);
|
||||||
|
label2.TabIndex = 1;
|
||||||
|
label2.Text = "Модель:";
|
||||||
|
//
|
||||||
|
// label3
|
||||||
|
//
|
||||||
|
label3.AutoSize = true;
|
||||||
|
label3.Location = new Point(31, 167);
|
||||||
|
label3.Name = "label3";
|
||||||
|
label3.Size = new Size(103, 20);
|
||||||
|
label3.TabIndex = 2;
|
||||||
|
label3.Text = "Вместимость:";
|
||||||
|
//
|
||||||
|
// textBoxCountry
|
||||||
|
//
|
||||||
|
textBoxCountry.Location = new Point(155, 41);
|
||||||
|
textBoxCountry.Name = "textBoxCountry";
|
||||||
|
textBoxCountry.Size = new Size(150, 27);
|
||||||
|
textBoxCountry.TabIndex = 3;
|
||||||
|
//
|
||||||
|
// textBoxModel
|
||||||
|
//
|
||||||
|
textBoxModel.Location = new Point(155, 99);
|
||||||
|
textBoxModel.Name = "textBoxModel";
|
||||||
|
textBoxModel.Size = new Size(150, 27);
|
||||||
|
textBoxModel.TabIndex = 4;
|
||||||
|
//
|
||||||
|
// numericUpDownCapacity
|
||||||
|
//
|
||||||
|
numericUpDownCapacity.Location = new Point(155, 165);
|
||||||
|
numericUpDownCapacity.Name = "numericUpDownCapacity";
|
||||||
|
numericUpDownCapacity.Size = new Size(150, 27);
|
||||||
|
numericUpDownCapacity.TabIndex = 5;
|
||||||
|
//
|
||||||
|
// buttonAdd
|
||||||
|
//
|
||||||
|
buttonAdd.Location = new Point(45, 244);
|
||||||
|
buttonAdd.Name = "buttonAdd";
|
||||||
|
buttonAdd.Size = new Size(101, 43);
|
||||||
|
buttonAdd.TabIndex = 6;
|
||||||
|
buttonAdd.Text = "Сохранить";
|
||||||
|
buttonAdd.UseVisualStyleBackColor = true;
|
||||||
|
buttonAdd.Click += ButtonAdd_Click;
|
||||||
|
//
|
||||||
|
// buttonCancel
|
||||||
|
//
|
||||||
|
buttonCancel.Location = new Point(177, 244);
|
||||||
|
buttonCancel.Name = "buttonCancel";
|
||||||
|
buttonCancel.Size = new Size(100, 43);
|
||||||
|
buttonCancel.TabIndex = 7;
|
||||||
|
buttonCancel.Text = "Отмена";
|
||||||
|
buttonCancel.UseVisualStyleBackColor = true;
|
||||||
|
buttonCancel.Click += ButtonCancel_Click;
|
||||||
|
//
|
||||||
|
// FormAirplane
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(403, 356);
|
||||||
|
Controls.Add(buttonCancel);
|
||||||
|
Controls.Add(buttonAdd);
|
||||||
|
Controls.Add(numericUpDownCapacity);
|
||||||
|
Controls.Add(textBoxModel);
|
||||||
|
Controls.Add(textBoxCountry);
|
||||||
|
Controls.Add(label3);
|
||||||
|
Controls.Add(label2);
|
||||||
|
Controls.Add(label1);
|
||||||
|
Name = "FormAirplane";
|
||||||
|
StartPosition = FormStartPosition.CenterParent;
|
||||||
|
Text = "Самолёт";
|
||||||
|
((System.ComponentModel.ISupportInitialize)numericUpDownCapacity).EndInit();
|
||||||
|
ResumeLayout(false);
|
||||||
|
PerformLayout();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Label label1;
|
||||||
|
private Label label2;
|
||||||
|
private Label label3;
|
||||||
|
private TextBox textBoxCountry;
|
||||||
|
private TextBox textBoxModel;
|
||||||
|
private NumericUpDown numericUpDownCapacity;
|
||||||
|
private Button buttonAdd;
|
||||||
|
private Button buttonCancel;
|
||||||
|
}
|
||||||
|
}
|
78
ProjectAirline/Forms/FormAirplane.cs
Normal file
78
ProjectAirline/Forms/FormAirplane.cs
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using ProjectAirline.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 ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormAirplane : Form
|
||||||
|
{
|
||||||
|
private readonly IAirplaneRepository _airplaneRepository;
|
||||||
|
private int? _airplaneId;
|
||||||
|
public int Id
|
||||||
|
{
|
||||||
|
set
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var airplane = _airplaneRepository.ReadAirplaneById(value);
|
||||||
|
if (airplane == null)
|
||||||
|
{
|
||||||
|
throw new InvalidDataException(nameof(airplane));
|
||||||
|
}
|
||||||
|
textBoxCountry.Text = airplane.Country;
|
||||||
|
textBoxModel.Text = airplane.Model;
|
||||||
|
numericUpDownCapacity.Value = airplane.Capacity;
|
||||||
|
_airplaneId = value;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public FormAirplane(IAirplaneRepository airplaneRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_airplaneRepository = airplaneRepository ?? throw new ArgumentNullException(nameof(airplaneRepository));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAdd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (string.IsNullOrWhiteSpace(textBoxCountry.Text) || string.IsNullOrWhiteSpace(textBoxModel.Text))
|
||||||
|
{
|
||||||
|
throw new Exception("Имеются незаполненные поля");
|
||||||
|
}
|
||||||
|
if (_airplaneId.HasValue)
|
||||||
|
{
|
||||||
|
_airplaneRepository.UpdateAirplane(CreateAirplane(_airplaneId.Value));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_airplaneRepository.CreateAirplane(CreateAirplane(0));
|
||||||
|
}
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при сохранении", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonCancel_Click(object sender, EventArgs e) => Close();
|
||||||
|
|
||||||
|
private Airplane CreateAirplane(int id) => Airplane.CreateEntity(id, textBoxCountry.Text,
|
||||||
|
textBoxModel.Text, Convert.ToInt32(numericUpDownCapacity.Value));
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
131
ProjectAirline/Forms/FormAirplanes.Designer.cs
generated
Normal file
131
ProjectAirline/Forms/FormAirplanes.Designer.cs
generated
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormAirplanes
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormAirplanes));
|
||||||
|
panel1 = new Panel();
|
||||||
|
buttonUpd = new Button();
|
||||||
|
buttonDel = new Button();
|
||||||
|
buttonAdd = new Button();
|
||||||
|
dataGridView = new DataGridView();
|
||||||
|
panel1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).BeginInit();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// panel1
|
||||||
|
//
|
||||||
|
panel1.Controls.Add(buttonUpd);
|
||||||
|
panel1.Controls.Add(buttonDel);
|
||||||
|
panel1.Controls.Add(buttonAdd);
|
||||||
|
panel1.Dock = DockStyle.Right;
|
||||||
|
panel1.Location = new Point(612, 0);
|
||||||
|
panel1.Name = "panel1";
|
||||||
|
panel1.Size = new Size(187, 468);
|
||||||
|
panel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// buttonUpd
|
||||||
|
//
|
||||||
|
buttonUpd.BackColor = SystemColors.ButtonHighlight;
|
||||||
|
buttonUpd.BackgroundImage = (Image)resources.GetObject("buttonUpd.BackgroundImage");
|
||||||
|
buttonUpd.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonUpd.Location = new Point(57, 203);
|
||||||
|
buttonUpd.Name = "buttonUpd";
|
||||||
|
buttonUpd.Size = new Size(88, 79);
|
||||||
|
buttonUpd.TabIndex = 2;
|
||||||
|
buttonUpd.UseVisualStyleBackColor = false;
|
||||||
|
buttonUpd.Click += ButtonUpd_Click;
|
||||||
|
//
|
||||||
|
// buttonDel
|
||||||
|
//
|
||||||
|
buttonDel.BackColor = SystemColors.ButtonHighlight;
|
||||||
|
buttonDel.BackgroundImage = (Image)resources.GetObject("buttonDel.BackgroundImage");
|
||||||
|
buttonDel.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonDel.Location = new Point(57, 120);
|
||||||
|
buttonDel.Name = "buttonDel";
|
||||||
|
buttonDel.Size = new Size(88, 77);
|
||||||
|
buttonDel.TabIndex = 1;
|
||||||
|
buttonDel.UseVisualStyleBackColor = false;
|
||||||
|
buttonDel.Click += ButtonDel_Click;
|
||||||
|
//
|
||||||
|
// buttonAdd
|
||||||
|
//
|
||||||
|
buttonAdd.BackColor = SystemColors.ButtonHighlight;
|
||||||
|
buttonAdd.BackgroundImage = Properties.Resources.plus;
|
||||||
|
buttonAdd.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonAdd.Location = new Point(57, 40);
|
||||||
|
buttonAdd.Name = "buttonAdd";
|
||||||
|
buttonAdd.Size = new Size(88, 74);
|
||||||
|
buttonAdd.TabIndex = 0;
|
||||||
|
buttonAdd.UseVisualStyleBackColor = false;
|
||||||
|
buttonAdd.Click += ButtonAdd_Click;
|
||||||
|
//
|
||||||
|
// dataGridView
|
||||||
|
//
|
||||||
|
dataGridView.AllowUserToAddRows = false;
|
||||||
|
dataGridView.AllowUserToDeleteRows = false;
|
||||||
|
dataGridView.AllowUserToResizeColumns = false;
|
||||||
|
dataGridView.AllowUserToResizeRows = false;
|
||||||
|
dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
|
||||||
|
dataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||||
|
dataGridView.Dock = DockStyle.Fill;
|
||||||
|
dataGridView.Location = new Point(0, 0);
|
||||||
|
dataGridView.MultiSelect = false;
|
||||||
|
dataGridView.Name = "dataGridView";
|
||||||
|
dataGridView.ReadOnly = true;
|
||||||
|
dataGridView.RowHeadersVisible = false;
|
||||||
|
dataGridView.RowHeadersWidth = 51;
|
||||||
|
dataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
|
||||||
|
dataGridView.Size = new Size(612, 468);
|
||||||
|
dataGridView.TabIndex = 1;
|
||||||
|
//
|
||||||
|
// FormAirplanes
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(799, 468);
|
||||||
|
Controls.Add(dataGridView);
|
||||||
|
Controls.Add(panel1);
|
||||||
|
Name = "FormAirplanes";
|
||||||
|
StartPosition = FormStartPosition.CenterParent;
|
||||||
|
Text = "Самолёты";
|
||||||
|
Load += FormAirplanes_Load;
|
||||||
|
panel1.ResumeLayout(false);
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).EndInit();
|
||||||
|
ResumeLayout(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Panel panel1;
|
||||||
|
private Button buttonUpd;
|
||||||
|
private Button buttonDel;
|
||||||
|
private Button buttonAdd;
|
||||||
|
private DataGridView dataGridView;
|
||||||
|
}
|
||||||
|
}
|
106
ProjectAirline/Forms/FormAirplanes.cs
Normal file
106
ProjectAirline/Forms/FormAirplanes.cs
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
using ProjectAirline.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;
|
||||||
|
using System.Xml.Linq;
|
||||||
|
using Unity;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormAirplanes : Form
|
||||||
|
{
|
||||||
|
private readonly IUnityContainer _container;
|
||||||
|
private readonly IAirplaneRepository _airplaneRepository;
|
||||||
|
|
||||||
|
public FormAirplanes(IUnityContainer container, IAirplaneRepository airplaneRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_container = container ?? throw new ArgumentNullException(nameof(container));
|
||||||
|
_airplaneRepository = airplaneRepository ?? throw new ArgumentNullException(nameof(airplaneRepository));
|
||||||
|
}
|
||||||
|
private void FormAirplanes_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAdd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormAirplane>().ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonDel_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!TryGetIdentifierFromSelectedRow(out var findId))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (MessageBox.Show("Удалить запись?", "Удаление", MessageBoxButtons.YesNo) != DialogResult.Yes)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_airplaneRepository.DeleteAirplane(findId);
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при удалении", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonUpd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!TryGetIdentifierFromSelectedRow(out var findId))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var form = _container.Resolve<FormAirplane>();
|
||||||
|
form.Id = findId;
|
||||||
|
form.ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при изменении", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private void LoadList() => dataGridView.DataSource = _airplaneRepository.ReadAirplanes();
|
||||||
|
private bool TryGetIdentifierFromSelectedRow(out int id)
|
||||||
|
{
|
||||||
|
id = 0;
|
||||||
|
if (dataGridView.SelectedRows.Count < 1)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
470
ProjectAirline/Forms/FormAirplanes.resx
Normal file
470
ProjectAirline/Forms/FormAirplanes.resx
Normal file
@ -0,0 +1,470 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="buttonUpd.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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
|
||||||
|
AAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZ
|
||||||
|
FJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsj
|
||||||
|
q93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d
|
||||||
|
5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQVia
|
||||||
|
RIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa
|
||||||
|
Xm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFZxSM
|
||||||
|
fQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW
|
||||||
|
9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq9zwW9MAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZ
|
||||||
|
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
|
||||||
|
AAAAAAAAAAAAUAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU4AEYAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAADJ4E4EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJ88AEAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAvOckggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp4EAkkAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAEgAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgEAkYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAgAkkksoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAEgdzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
EEA5uzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEk4JuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk/
|
||||||
|
PJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJ
|
||||||
|
uzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuz
|
||||||
|
oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuz4AAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAKkPJuwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJryAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AKkvmJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkokeoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK
|
||||||
|
ickBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj2UkCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhAU
|
||||||
|
jwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIzlgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACNsA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAA
|
||||||
|
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
|
||||||
|
YsTyO4+SUvkJVWbq3j/xx//Z
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonDel.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//Z
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
163
ProjectAirline/Forms/FormEmployee.Designer.cs
generated
Normal file
163
ProjectAirline/Forms/FormEmployee.Designer.cs
generated
Normal file
@ -0,0 +1,163 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormEmployee
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
comboBoxPost = new ComboBox();
|
||||||
|
label1 = new Label();
|
||||||
|
label2 = new Label();
|
||||||
|
label3 = new Label();
|
||||||
|
label4 = new Label();
|
||||||
|
textBoxContactInfo = new TextBox();
|
||||||
|
textBoxLastName = new TextBox();
|
||||||
|
textBoxFirstName = new TextBox();
|
||||||
|
buttonSave = new Button();
|
||||||
|
buttonCancel = new Button();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// comboBoxPost
|
||||||
|
//
|
||||||
|
comboBoxPost.DropDownStyle = ComboBoxStyle.DropDownList;
|
||||||
|
comboBoxPost.FormattingEnabled = true;
|
||||||
|
comboBoxPost.Location = new Point(249, 262);
|
||||||
|
comboBoxPost.Name = "comboBoxPost";
|
||||||
|
comboBoxPost.Size = new Size(202, 28);
|
||||||
|
comboBoxPost.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// label1
|
||||||
|
//
|
||||||
|
label1.AutoSize = true;
|
||||||
|
label1.Location = new Point(31, 39);
|
||||||
|
label1.Name = "label1";
|
||||||
|
label1.Size = new Size(39, 20);
|
||||||
|
label1.TabIndex = 1;
|
||||||
|
label1.Text = "Имя";
|
||||||
|
//
|
||||||
|
// label2
|
||||||
|
//
|
||||||
|
label2.AutoSize = true;
|
||||||
|
label2.Location = new Point(31, 96);
|
||||||
|
label2.Name = "label2";
|
||||||
|
label2.Size = new Size(73, 20);
|
||||||
|
label2.TabIndex = 2;
|
||||||
|
label2.Text = "Фамилия";
|
||||||
|
//
|
||||||
|
// label3
|
||||||
|
//
|
||||||
|
label3.AutoSize = true;
|
||||||
|
label3.Location = new Point(31, 170);
|
||||||
|
label3.Name = "label3";
|
||||||
|
label3.Size = new Size(183, 20);
|
||||||
|
label3.TabIndex = 3;
|
||||||
|
label3.Text = "Контактная информация";
|
||||||
|
//
|
||||||
|
// label4
|
||||||
|
//
|
||||||
|
label4.AutoSize = true;
|
||||||
|
label4.Location = new Point(31, 265);
|
||||||
|
label4.Name = "label4";
|
||||||
|
label4.Size = new Size(86, 20);
|
||||||
|
label4.TabIndex = 4;
|
||||||
|
label4.Text = "Должность";
|
||||||
|
//
|
||||||
|
// textBoxContactInfo
|
||||||
|
//
|
||||||
|
textBoxContactInfo.Location = new Point(249, 170);
|
||||||
|
textBoxContactInfo.Name = "textBoxContactInfo";
|
||||||
|
textBoxContactInfo.Size = new Size(202, 27);
|
||||||
|
textBoxContactInfo.TabIndex = 5;
|
||||||
|
//
|
||||||
|
// textBoxLastName
|
||||||
|
//
|
||||||
|
textBoxLastName.Location = new Point(249, 94);
|
||||||
|
textBoxLastName.Name = "textBoxLastName";
|
||||||
|
textBoxLastName.Size = new Size(202, 27);
|
||||||
|
textBoxLastName.TabIndex = 6;
|
||||||
|
//
|
||||||
|
// textBoxFirstName
|
||||||
|
//
|
||||||
|
textBoxFirstName.Location = new Point(249, 38);
|
||||||
|
textBoxFirstName.Name = "textBoxFirstName";
|
||||||
|
textBoxFirstName.Size = new Size(202, 27);
|
||||||
|
textBoxFirstName.TabIndex = 7;
|
||||||
|
//
|
||||||
|
// buttonSave
|
||||||
|
//
|
||||||
|
buttonSave.Location = new Point(31, 335);
|
||||||
|
buttonSave.Name = "buttonSave";
|
||||||
|
buttonSave.Size = new Size(115, 62);
|
||||||
|
buttonSave.TabIndex = 8;
|
||||||
|
buttonSave.Text = "Сохранить";
|
||||||
|
buttonSave.UseVisualStyleBackColor = true;
|
||||||
|
buttonSave.Click += ButtonSave_Click;
|
||||||
|
//
|
||||||
|
// buttonCancel
|
||||||
|
//
|
||||||
|
buttonCancel.Location = new Point(230, 335);
|
||||||
|
buttonCancel.Name = "buttonCancel";
|
||||||
|
buttonCancel.Size = new Size(116, 62);
|
||||||
|
buttonCancel.TabIndex = 9;
|
||||||
|
buttonCancel.Text = "Отмена";
|
||||||
|
buttonCancel.UseVisualStyleBackColor = true;
|
||||||
|
buttonCancel.Click += ButtonCancel_Click;
|
||||||
|
//
|
||||||
|
// FormEmployee
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(800, 450);
|
||||||
|
Controls.Add(buttonCancel);
|
||||||
|
Controls.Add(buttonSave);
|
||||||
|
Controls.Add(textBoxFirstName);
|
||||||
|
Controls.Add(textBoxLastName);
|
||||||
|
Controls.Add(textBoxContactInfo);
|
||||||
|
Controls.Add(label4);
|
||||||
|
Controls.Add(label3);
|
||||||
|
Controls.Add(label2);
|
||||||
|
Controls.Add(label1);
|
||||||
|
Controls.Add(comboBoxPost);
|
||||||
|
Name = "FormEmployee";
|
||||||
|
Text = "Сотрудник";
|
||||||
|
ResumeLayout(false);
|
||||||
|
PerformLayout();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private ComboBox comboBoxPost;
|
||||||
|
private Label label1;
|
||||||
|
private Label label2;
|
||||||
|
private Label label3;
|
||||||
|
private Label label4;
|
||||||
|
private TextBox textBoxContactInfo;
|
||||||
|
private TextBox textBoxLastName;
|
||||||
|
private TextBox textBoxFirstName;
|
||||||
|
private Button buttonSave;
|
||||||
|
private Button buttonCancel;
|
||||||
|
}
|
||||||
|
}
|
89
ProjectAirline/Forms/FormEmployee.cs
Normal file
89
ProjectAirline/Forms/FormEmployee.cs
Normal file
@ -0,0 +1,89 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using ProjectAirline.Entities.Enums;
|
||||||
|
using ProjectAirline.Repositories;
|
||||||
|
using ProjectAirline.Repositories.Implementations;
|
||||||
|
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 ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormEmployee : Form
|
||||||
|
{
|
||||||
|
private readonly IEmployeeRepository _employeeRepository;
|
||||||
|
private int? _employeeId;
|
||||||
|
|
||||||
|
public int Id
|
||||||
|
{
|
||||||
|
set
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var employee =
|
||||||
|
_employeeRepository.ReadEmployeeById(value);
|
||||||
|
if (employee == null)
|
||||||
|
{
|
||||||
|
throw new InvalidDataException(nameof(employee));
|
||||||
|
}
|
||||||
|
textBoxFirstName.Text = employee.FirstName;
|
||||||
|
textBoxLastName.Text = employee.LastName;
|
||||||
|
textBoxContactInfo.Text = employee.ContactInformation;
|
||||||
|
comboBoxPost.SelectedItem = employee.EmployeePost;
|
||||||
|
_employeeId = value;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public FormEmployee(IEmployeeRepository employeeRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_employeeRepository = employeeRepository ??
|
||||||
|
throw new ArgumentNullException(nameof(employeeRepository));
|
||||||
|
comboBoxPost.DataSource = Enum.GetValues(typeof(EmployeePost));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonSave_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (string.IsNullOrWhiteSpace(textBoxFirstName.Text) ||
|
||||||
|
string.IsNullOrWhiteSpace(textBoxLastName.Text) ||
|
||||||
|
string.IsNullOrWhiteSpace(textBoxContactInfo.Text)
|
||||||
|
||
|
||||||
|
comboBoxPost.SelectedIndex < 1)
|
||||||
|
{
|
||||||
|
throw new Exception("Имеются незаполненные поля");
|
||||||
|
}
|
||||||
|
if (_employeeId.HasValue)
|
||||||
|
{
|
||||||
|
_employeeRepository.UpdateEmployee(CreateEmployee(_employeeId.Value));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_employeeRepository.CreateEmployee(CreateEmployee(0));
|
||||||
|
}
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при сохранении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonCancel_Click(object sender, EventArgs e) => Close();
|
||||||
|
private Employee CreateEmployee(int id) =>
|
||||||
|
Employee.CreateEntity(id, textBoxFirstName.Text, textBoxLastName.Text, textBoxContactInfo.Text, (EmployeePost)comboBoxPost.SelectedItem!);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
120
ProjectAirline/Forms/FormEmployee.resx
Normal file
120
ProjectAirline/Forms/FormEmployee.resx
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
128
ProjectAirline/Forms/FormEmployees.Designer.cs
generated
Normal file
128
ProjectAirline/Forms/FormEmployees.Designer.cs
generated
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormEmployees
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormEmployees));
|
||||||
|
panel1 = new Panel();
|
||||||
|
buttonUpdate = new Button();
|
||||||
|
buttonRemove = new Button();
|
||||||
|
buttonAdd = new Button();
|
||||||
|
dataGridView = new DataGridView();
|
||||||
|
panel1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).BeginInit();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// panel1
|
||||||
|
//
|
||||||
|
panel1.Controls.Add(buttonUpdate);
|
||||||
|
panel1.Controls.Add(buttonRemove);
|
||||||
|
panel1.Controls.Add(buttonAdd);
|
||||||
|
panel1.Dock = DockStyle.Right;
|
||||||
|
panel1.Location = new Point(628, 0);
|
||||||
|
panel1.Name = "panel1";
|
||||||
|
panel1.Size = new Size(153, 455);
|
||||||
|
panel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// buttonUpdate
|
||||||
|
//
|
||||||
|
buttonUpdate.BackgroundImage = (Image)resources.GetObject("buttonUpdate.BackgroundImage");
|
||||||
|
buttonUpdate.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonUpdate.Location = new Point(33, 271);
|
||||||
|
buttonUpdate.Name = "buttonUpdate";
|
||||||
|
buttonUpdate.Size = new Size(94, 82);
|
||||||
|
buttonUpdate.TabIndex = 2;
|
||||||
|
buttonUpdate.UseVisualStyleBackColor = true;
|
||||||
|
buttonUpdate.Click += ButtonUpdate_Click;
|
||||||
|
//
|
||||||
|
// buttonRemove
|
||||||
|
//
|
||||||
|
buttonRemove.BackgroundImage = (Image)resources.GetObject("buttonRemove.BackgroundImage");
|
||||||
|
buttonRemove.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonRemove.Location = new Point(33, 166);
|
||||||
|
buttonRemove.Name = "buttonRemove";
|
||||||
|
buttonRemove.Size = new Size(94, 82);
|
||||||
|
buttonRemove.TabIndex = 1;
|
||||||
|
buttonRemove.UseVisualStyleBackColor = true;
|
||||||
|
buttonRemove.Click += ButtonRemove_Click;
|
||||||
|
//
|
||||||
|
// buttonAdd
|
||||||
|
//
|
||||||
|
buttonAdd.BackgroundImage = Properties.Resources.plus;
|
||||||
|
buttonAdd.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonAdd.Location = new Point(33, 50);
|
||||||
|
buttonAdd.Name = "buttonAdd";
|
||||||
|
buttonAdd.Size = new Size(94, 82);
|
||||||
|
buttonAdd.TabIndex = 0;
|
||||||
|
buttonAdd.UseVisualStyleBackColor = true;
|
||||||
|
buttonAdd.Click += ButtonAdd_Click;
|
||||||
|
//
|
||||||
|
// dataGridView
|
||||||
|
//
|
||||||
|
dataGridView.AllowUserToAddRows = false;
|
||||||
|
dataGridView.AllowUserToDeleteRows = false;
|
||||||
|
dataGridView.AllowUserToResizeColumns = false;
|
||||||
|
dataGridView.AllowUserToResizeRows = false;
|
||||||
|
dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
|
||||||
|
dataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||||
|
dataGridView.Dock = DockStyle.Fill;
|
||||||
|
dataGridView.Location = new Point(0, 0);
|
||||||
|
dataGridView.MultiSelect = false;
|
||||||
|
dataGridView.Name = "dataGridView";
|
||||||
|
dataGridView.ReadOnly = true;
|
||||||
|
dataGridView.RowHeadersVisible = false;
|
||||||
|
dataGridView.RowHeadersWidth = 51;
|
||||||
|
dataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
|
||||||
|
dataGridView.Size = new Size(628, 455);
|
||||||
|
dataGridView.TabIndex = 1;
|
||||||
|
//
|
||||||
|
// FormEmployees
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(781, 455);
|
||||||
|
Controls.Add(dataGridView);
|
||||||
|
Controls.Add(panel1);
|
||||||
|
Name = "FormEmployees";
|
||||||
|
StartPosition = FormStartPosition.CenterParent;
|
||||||
|
Text = "Сотрудники";
|
||||||
|
Load += FormEmployees_Load;
|
||||||
|
panel1.ResumeLayout(false);
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).EndInit();
|
||||||
|
ResumeLayout(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Panel panel1;
|
||||||
|
private Button buttonUpdate;
|
||||||
|
private Button buttonRemove;
|
||||||
|
private Button buttonAdd;
|
||||||
|
private DataGridView dataGridView;
|
||||||
|
}
|
||||||
|
}
|
118
ProjectAirline/Forms/FormEmployees.cs
Normal file
118
ProjectAirline/Forms/FormEmployees.cs
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
using ProjectAirline.Repositories;
|
||||||
|
using ProjectAirline.Repositories.Implementations;
|
||||||
|
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;
|
||||||
|
using System.Xml.Linq;
|
||||||
|
using Unity;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormEmployees : Form
|
||||||
|
{
|
||||||
|
private readonly IUnityContainer _container;
|
||||||
|
private readonly IEmployeeRepository _employeeRepository;
|
||||||
|
public FormEmployees(IUnityContainer container, IEmployeeRepository
|
||||||
|
employeeRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_container = container ??
|
||||||
|
throw new ArgumentNullException(nameof(container));
|
||||||
|
_employeeRepository = employeeRepository ??
|
||||||
|
throw new
|
||||||
|
ArgumentNullException(nameof(employeeRepository));
|
||||||
|
}
|
||||||
|
private void FormEmployees_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAdd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormEmployee>().ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при добавлении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonRemove_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!TryGetIdentifierFromSelectedRow(out var findId))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (MessageBox.Show("Удалить запись?", "Удаление",
|
||||||
|
MessageBoxButtons.YesNo) != DialogResult.Yes)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_employeeRepository.DeleteEmployee(findId);
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при удалении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonUpdate_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!TryGetIdentifierFromSelectedRow(out var findId))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var form = _container.Resolve<FormEmployee>();
|
||||||
|
form.Id = findId;
|
||||||
|
form.ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при изменении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LoadList() => dataGridView.DataSource =
|
||||||
|
_employeeRepository.ReadEmployees();
|
||||||
|
private bool TryGetIdentifierFromSelectedRow(out int id)
|
||||||
|
{
|
||||||
|
id = 0;
|
||||||
|
if (dataGridView.SelectedRows.Count < 1)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Нет выбранной записи", "Ошибка",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
id =
|
||||||
|
Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
470
ProjectAirline/Forms/FormEmployees.resx
Normal file
470
ProjectAirline/Forms/FormEmployees.resx
Normal file
@ -0,0 +1,470 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="buttonUpdate.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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
|
||||||
|
AAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZ
|
||||||
|
FJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsj
|
||||||
|
q93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d
|
||||||
|
5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQVia
|
||||||
|
RIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa
|
||||||
|
Xm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFZxSM
|
||||||
|
fQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW
|
||||||
|
9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq9zwW9MAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZ
|
||||||
|
FZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsj
|
||||||
|
q93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d
|
||||||
|
5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFZxSMfQVia
|
||||||
|
RIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjrd7wV3wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABp
|
||||||
|
ebf53ldPBkVnFIx9BWJpEjp9zxbnt84AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0vNv87yungyKTisY+
|
||||||
|
grE1mOl3fHs+jTncgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADS82/wA7yungyKTisY2N+vb9Oi2zXXdG
|
||||||
|
dTsb9QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGl5t/neV08GRScdj3ePY36h9YyrGxv051gAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAADS82/wA7yungzkx3uh4KXIGWcV2a77tYAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAA1NG7W8+5jOdTnUsgM6nZ36cqwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPhPXevo3Ti8sz
|
||||||
|
9rA+sW2677tYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE4rX0bpa7zqWWls19TfquAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAADCK19O3inhfRo9vl6gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGoeR
|
||||||
|
OIfp5UAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgYmyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/xAAlEAACAgICAgMAAgMAAAAAAAABAgMQEmAAIAQR
|
||||||
|
EyExBZAUM0H/2gAIAQEAAQUC/p0llES/5UhaGYSDSZZREskhkbisVMMwkGjyyiJZJDI1qxUwzCQaLNMs
|
||||||
|
KPI0jdYsslbLRJplhSSRpXB6xRGUtHiFbHiPkNC8skz0DaJmY2C0y8jduK+WheRAJQylTQPETM/g4rc/
|
||||||
|
eOvEbHitkNB8jxxKGUqeAe+I31z95+8V6dOK2JVshoPkeOJR8ZBpHy5+2j+qdOI2PEfIaDNFmGTC1f30
|
||||||
|
R/VMvvkbtxXy0KWEPx09Gkf30VufvHXitjxXB0KWL5A6FDSP7r95+8V6mIj5H7RkfIaDLEJA6FDSPlz9
|
||||||
|
5+0ZvjABJ4rYlHyGgyxCQOhQ0j5U74D79g2rYlHyGgyxB+Ono182K/8AaBtWxKPkNBli+QOuPCfVA9Ab
|
||||||
|
VsSj5DQZoswVKtQPQG1bEo+Q0GeAShlKmgegNq2JR8hoM8AlDKVNA9AbVsSj5DQZ/HEoZSpoHoDasVKP
|
||||||
|
kNBngEoZSpoHoDatiUcMNBngEoZSpoHoDatiUfIaDPAJQylTQPQG1bEo+Q0GeAShlKmgegNq2JR8hoM8
|
||||||
|
AlDKVNA9AbVsSj5DQZ4BKGUqaB6A2rYlHyGgzwCUMpU0D0BtWKlHyGgzwCUMpU0D0BtWxKOGGgzwCUMp
|
||||||
|
U0D0BtWxKPkNBngEoZSpoHoDatiUfIaDPAJQylTQPQG1bEo4YaDPAJQylTQPQG1bEo+Q0GeAShlKmgeg
|
||||||
|
NqxUo+Q0GeAShlKmgegNq2JR8hoM8AlDKVNA9AbVsSj5DQZ4BKGUqaB6A2rYlHyGgzwCUMpU0D0BtWxK
|
||||||
|
PkNBngEoZSpoHoDatiUfIaDPAJQylTQPQG1bEo+Q0GeAShlKmgegNq2JR8hoM8AlDKVNA9AbVsSj5DQZ
|
||||||
|
/HEoZSpoHoDasVKPkNBngEoZSpoHoDatiUfIaDPAJQylTQPQG1bEo+Q0GeAShlKmgegNq2JR8hoM8AlD
|
||||||
|
KVNA9AbVsSj5DQZ4BKGUqaB6A2rYlHyGgzwCUMpU0D0BtWxKPkNBngEoZSpoHoDatiUfIaDPAJQylTQP
|
||||||
|
QG1bEo2Y0GeAShlKmgegNxfS6FPAJQylTQPQGh9BT9aFPAJQylTQNRx58+FOBQKU+joc8AlDKVNA8g/1
|
||||||
|
9AfY0OeAShlKngHsxrgnRT96JL46y8PjqvAoHcH2NFMYPChFe+inSCgPDGR08jyVgEMnyxaQVB4YyOeZ
|
||||||
|
/IJ4okmkll/ifKzGlT+LD5K+T/BOvIWl8HyY3EkelywxzrBCnjx/04f/xAAoEQACAQMFAAEDBQEAAAAA
|
||||||
|
AAABAgMAERIQICFgcWEEQZATFCIxMnD/2gAIAQMBAT8B/DpHGZDYV+2S1SxFD0qOMyGwpECCw0ZQwqWI
|
||||||
|
oekRxmQ2FIgQWGxlDCpYih6NFEZDYUiBBYbvqJFUc9FiiMhsKjjCCwojbNMIx80zFjc9F+mAEYtqRrNM
|
||||||
|
Ix80zFjc9GgnMZ+KVgwuNSKmmEY+aZixuekQTmM/FKwYXGk84jHzTMWNz0qCcxn4qX6hUW4pmLG5/wCT
|
||||||
|
W6ZHGXNFBjiKdMelRxlzQAUWGjLlTpj0iOMuaVQosKI1ZcqdMejRxlzSqFFhqRqy5U6Y9EjjLmlUKLDa
|
||||||
|
Rqy5U6Y9CFIFC/x3kasuVOmPQoZsPKBvyN5GrLlTpj0KGbDygb8jeRqy5U6Y9Chmw8oG/I3kasuVOmPQ
|
||||||
|
oZsPKBvyN5GrLlTpj0KGbDygb8jeRqy5U6Y9Chmw8oG/I3kasuVOmPQoZsPKBvyN5GrLlTpj0KGbDygb
|
||||||
|
8jeRqy5U6Y9Chmw8oG/I3kasuVOmPQoZsPKBvyN5GrLlTpj0KGbDygb8jeRqy5U6Y9Chmw8oG/I3kasu
|
||||||
|
VOmPQoZsPKBvyN5GrLlTpj0KGbDygb8jeRqy5U6Y9Chmw8oG/I3kasuVOmPQoZsPKBvyN5GrLlTpj0KG
|
||||||
|
bDygb8jeRqy5U6Y9Chmw8oG/I3kasuVOmPQoZsPKBvyN5GrLlTpj0KGbDygb8jeRqy5U6Y9Chmw8oG/I
|
||||||
|
3kasuVOmPQoZsPKBvyN5GrLlTpj0KGbDygb8jeRqy5U6Y9Chmw8oG/I3kasuVOmPQoZsPKBvyN5GrLlT
|
||||||
|
pj0KGbDygb8jeRqy5U6Y9Chmw8oG/I3kasuVOmPQoZsPKBvyN5GrLlTpj0KGbDygb8jeRqy5U6Y9Chmw
|
||||||
|
8oG/I3kasuVOmPQoZsPKBvyN5GrLlTpj0KGbDygb8jeRqy5U6Y9Chmw8oG/I3kasuVOuJ6FDNh5QN+Rv
|
||||||
|
I1k5J6HDNh5QN+RvI0JuaYdDhmw8oG/I2u+NfqtRYn+9GHRIZsPKBvyNkv8AraR0SGbDygb8jVzkb7WH
|
||||||
|
RY5mShMT96JJq24i3Rg5FBwdLbGHSA5FBwdjHpQYihIPvTMB+Q7/xAAmEQEAAQMFAQACAQUAAAAAAAAB
|
||||||
|
AwACERAgITFgEwQSkBQiMkFw/9oACAECAQE/Af4dFxX7NDnxS4pc6jnxC4pc7Rz4ZcUud1p4VcUudwZ8
|
||||||
|
Nd3uDPh7rc7Qz4m63OttufF3W5ot/wCT58ZJIRmWrvybm/8AaoJyQ8VJIRmWppWRy6WXtjkqCckPESSE
|
||||||
|
ZlqSRkctJrZe2OSoJyQ8NJIWGWpJG9y6prZe2OSoJyQ8JJIWGWr729y0mxNbL2xyVBOSHgmpLrrrv7tU
|
||||||
|
2JrZe2OSoJyQ8FPB9OTukTh1TYmtl7Y5KgnJDwU8H0MndJhw6psTWy9sclQTkh4KeAk5O6THDqmxNbL2
|
||||||
|
xyVBOSHgp4Ppyd0icOqbE1svbHJUE5IeCng+nJ3SI4dU2JrZe2OSoJyQ8FPAScndJjh1TYmtl7Y5KgnJ
|
||||||
|
DwU8H0MndJhw6psTWy9sclQTkh4KeD6GTukw4dU2JrZe2OSoJyQ8FPB9OTukxw6psTWy9sclQTkh4KeD
|
||||||
|
6cndJjh1TYmtl7Y5KgnJDwU8H0MndJjh1TYmtl7Y5KgnJDwU8BJyd0mOHVNia2XtjkqCckPBTwfQyd0i
|
||||||
|
cOqbE1svbHJUE5IeCngJOTukxw6psTWy9sclQTkh4KeAk5O6THDqmxNbL2xyVBOSHgp4Ppyd0mOHVNia
|
||||||
|
2XtjkqCckPBTwfQyd0mOHVNia2XtjkqCckPBTwfTk7pMcOqbE1svbHJUE5IeCng+nJ3SY4dU2JrZe2OS
|
||||||
|
oJyQ8FPB9DJ3SY4dU2JrZe2OSoJyQ8FPB9OTukxw6psTWy9sclQTkh4KeD6cndJjh1TYmtl7Y5KgnJDw
|
||||||
|
U8H0MndJjh1TYmtl7Y5KgnJDwU8H05O6TDh1TYmtl7Y5KgnJDwU8H05O6THDqmxNbL2xyVBOSHgp4Ppy
|
||||||
|
d0icOqbE1svbHJUE5IeCng+nJ3SYcOqbE1svbHJUE5IeCngJOTukxw6psTWy9sclQTkh4KeD6GTukw4d
|
||||||
|
U2JrZe2OSoJyQ8FPB9OTukxw6psTWy9sclQTkh4KeD6GTukxw6psTWy9sclQTkh4KeD6cndJjh1TYmtl
|
||||||
|
7Y5KgnJDwU8H05O6THDqmxNbL2xyVBL9Lc+CngJOTukxw6psTX8biw8HPB9OTukTh1TYlArgqw/W0Kte
|
||||||
|
PBzwfQyd0mOHVNIov3r+nsq2O2zo0tcPhJ4Ppyd0mOHVK/H/AMNtrk8JPB9OTukxw6d1Zb+tuNhVrz4W
|
||||||
|
WC2TmmH9f9UAVncOTwzGNNiaZ2WPiGwaY02WGfFNo0xJ1Vtq0GP5Df/EACwQAAIBAgUEAQMEAwAAAAAA
|
||||||
|
AAERADJgAhASIWEgIjFBUQMTYjBSgZAEcLH/2gAIAQEABj8C/p0Zjc5spmasWTE5shmasXQxObGZ/gTV
|
||||||
|
i6tigPdis/wJqxdX4+zO3xYpfVxNPrJ+pvtYf5RHo4iGW/icTtsT8ojnpy4nEXrJixPyiOyz7pxmjkxH
|
||||||
|
YfPQuhHJ+pvtY6PRv4nE7fE4ie9hrNHLicResuT4E1nfFYfPR3TiIZfJ9CasW+I2LzN89OXPxNR82Xv5
|
||||||
|
mo+bK4ydl7eZ3ebNYqiNmsVRGzWKojZrFURs1iqI2axVEbNYqiNmsVRGzWKojZrFURs1iqI2axVEbNYq
|
||||||
|
iNmsVRGzWKojZrFURs1iqI2axVEbNYqiNmsVRGzWKojZrFURs1iqI2axVEbNYqiNmsVRGzWKojZrFURs
|
||||||
|
1iqI2axVEbNYqiNmsVRGzWKojZrFUR/SFhsVRH9FWIxVEenjLaxmKojZrFURyQgFlb+ZRNgv9O/PQML7
|
||||||
|
8XiDH82VtNNX1P2z7uPF3TR8/wDbLX1fpjFzNX+Pi1D9uKDXhOHgwYx4Nmafq4BiHM+3gekfP9OP/8QA
|
||||||
|
KBABAAEDBQEAAgICAwEAAAAAAREAEDEhQVFgYSBxkYHhobGQwfDx/9oACAEBAAE/If8Ah03L7HNOADgq
|
||||||
|
Bun+/Sty+xzSdP6sbSoG/wB+kbl9jmk6f18G0qBv9+jbg/2UyTX/AF9FSRmo/wCqMdE3B/spwmuxxU+j
|
||||||
|
88BH/wAKAIQNuKbW44oJv170PauaF59G6cBy0AQgY8tOxrkmE7UWPQpWaDDzTsIS8+jScBy0AAQGCgjV
|
||||||
|
qfR14lP4h/ilemKPQ6FIzQYeadhCWn+UcMIxQRq1zf7V+or8PlxQAaVBwU/lRyHQpGaDDzS6KFDXhisa
|
||||||
|
1gL+6/UUs6GgVivAWg4KTy4oJv8Az0IZj+HNMtcbVnVxWfxWnekYrF/AWnRrscB2osOhErGvHNLqmhvS
|
||||||
|
zoW9BcI1an0deJ/KtXYM+VLgpHwSNPehYxhqVC/oKCNWub/av1FfijfitAgxUQmtDrLJl4/FH7dDCgKW
|
||||||
|
NNawF/dfqK/AD/FbQYrRUkoQv/oeFnmKP26GFoppWdXFZ8CtAtI3raDFHyLHKg1GX/ip7vMUft0I1d+O
|
||||||
|
aXVwb1nQ0K/FYAnZ7QLJl/4vPd5ij9uhHoZpXFDPuxWsyzW2/E93mKP26FKpNOHengffl9t+J7vMUft0
|
||||||
|
LGwYeaRhCX234nu8xR+3QsbBh5pGEJfbfie7zFH7dCxMGHmkYQl9t+J7zoo/boWNgw80jCEvtvxPd5iv
|
||||||
|
ddCxsGHmkYQl9t+J7vMUft0LGwYeaRhCX234nu8xR+3QsbBh5pGEJfbfie7zFH7dCxsGHmkYQl9t+J7v
|
||||||
|
MUft0LGwYeaRhCX234nu8xR+3QsbBh5pGEJfbfie86KP26FjYMPNIwhL7b8T3eYr3XQsbBh5pGEJfbfi
|
||||||
|
e7zFH7dCxsGHmkYQl9t+J7vMUft0LGwYeaRhCX234nu8xXuuhY2DDzSMIS+2/E93mKP26FjYMPNIwhL7
|
||||||
|
b8T3nRR+3QsbBh5pGEJfbfie7zFH7dCxsGHmkYQl9t+J7vMUft0LGwYeaRhCX234nu8xR+3QsbBh5pGE
|
||||||
|
Jfbfie7zFH7dCxsGHmkYQl9t+J7vMUft0LGwYeaRhCX234nu8xR+3QsbBh5pGEJfbfie7zFH7dCxsGHm
|
||||||
|
kYQl9t+J7vMUft0LEwYeaRhCX234nvOij9uhY2DDzSMIS+2/E93mKP26FjYMPNIwhL7b8T3eYo/boWNg
|
||||||
|
w80jCEvtvxPd5ij9uhY2DDzSMIS+2/E93mKP26FjYMPNIwhL7b8T3eYo/boWNgw80jCEvtvxPd5ij9uh
|
||||||
|
Y2DDzSMIS+2/E93mKP26FjYMPNIwhL7b8T3eYo5ehY2DDzSMIS+2/E91/F6HjYMPNIwhL7b8T0CsFGHg
|
||||||
|
VJ+HQ8bBh5pGEJfbba9WBQWz+6x6h6KGNgw80jCEvttYfz0mMbBh5pGEJZCCVqdcmfgai/LorY6Bub1s
|
||||||
|
6Oawf+BQxUz8DWsdG8t8rb5PLHK5WtHPSNrh5KxWipShmxgO1/7oAtmv56Tnytc1Um2OnD807QtmeKJ0
|
||||||
|
8o46W8JjcfzUx/Dh/dShY6hFLroz0z8duUJ1RpKY/wCHH//aAAwDAQACAAMAAAAQAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuQAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAsFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAFQAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAUAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU4AEYAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAADJ4E4EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJ88AEAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAvOckggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp4EAkkAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAEgAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgEAkYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAgAkkksoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAEgdzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
EEA5uzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEk4JuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk/
|
||||||
|
PJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJ
|
||||||
|
uzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuz
|
||||||
|
oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuz4AAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAKkPJuwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJryAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AKkvmJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkokeoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK
|
||||||
|
ickBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj2UkCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhAU
|
||||||
|
jwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIzlgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACNsA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAA
|
||||||
|
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
|
||||||
|
YsTyO4+SUvkJVWbq3j/xx//Z
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonRemove.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//Z
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
273
ProjectAirline/Forms/FormFlight.Designer.cs
generated
Normal file
273
ProjectAirline/Forms/FormFlight.Designer.cs
generated
Normal file
@ -0,0 +1,273 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormFlight
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
label1 = new Label();
|
||||||
|
label2 = new Label();
|
||||||
|
label3 = new Label();
|
||||||
|
label4 = new Label();
|
||||||
|
label5 = new Label();
|
||||||
|
label6 = new Label();
|
||||||
|
comboBoxAirplane = new ComboBox();
|
||||||
|
dateTimePickerDeparture = new DateTimePicker();
|
||||||
|
dateTimePickerArrival = new DateTimePicker();
|
||||||
|
numericUpDownPrice = new NumericUpDown();
|
||||||
|
textBoxDestination = new TextBox();
|
||||||
|
textBoxDeparture = new TextBox();
|
||||||
|
groupBox1 = new GroupBox();
|
||||||
|
dataGridView = new DataGridView();
|
||||||
|
ColumnEmployee = new DataGridViewComboBoxColumn();
|
||||||
|
ColumnFlight = new DataGridViewTextBoxColumn();
|
||||||
|
ColumnHoursWork = new DataGridViewTextBoxColumn();
|
||||||
|
buttonAdd = new Button();
|
||||||
|
buttonCancel = new Button();
|
||||||
|
((System.ComponentModel.ISupportInitialize)numericUpDownPrice).BeginInit();
|
||||||
|
groupBox1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).BeginInit();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// label1
|
||||||
|
//
|
||||||
|
label1.AutoSize = true;
|
||||||
|
label1.Location = new Point(12, 76);
|
||||||
|
label1.Name = "label1";
|
||||||
|
label1.Size = new Size(149, 20);
|
||||||
|
label1.TabIndex = 0;
|
||||||
|
label1.Text = "Время отправления";
|
||||||
|
//
|
||||||
|
// label2
|
||||||
|
//
|
||||||
|
label2.AutoSize = true;
|
||||||
|
label2.Location = new Point(12, 125);
|
||||||
|
label2.Name = "label2";
|
||||||
|
label2.Size = new Size(128, 20);
|
||||||
|
label2.TabIndex = 1;
|
||||||
|
label2.Text = "Время прибытия";
|
||||||
|
//
|
||||||
|
// label3
|
||||||
|
//
|
||||||
|
label3.AutoSize = true;
|
||||||
|
label3.Location = new Point(12, 172);
|
||||||
|
label3.Name = "label3";
|
||||||
|
label3.Size = new Size(136, 20);
|
||||||
|
label3.TabIndex = 2;
|
||||||
|
label3.Text = "Пункт назначения";
|
||||||
|
//
|
||||||
|
// label4
|
||||||
|
//
|
||||||
|
label4.AutoSize = true;
|
||||||
|
label4.Location = new Point(12, 218);
|
||||||
|
label4.Name = "label4";
|
||||||
|
label4.Size = new Size(144, 20);
|
||||||
|
label4.TabIndex = 3;
|
||||||
|
label4.Text = "Пункт отправления";
|
||||||
|
//
|
||||||
|
// label5
|
||||||
|
//
|
||||||
|
label5.AutoSize = true;
|
||||||
|
label5.Location = new Point(12, 274);
|
||||||
|
label5.Name = "label5";
|
||||||
|
label5.Size = new Size(97, 20);
|
||||||
|
label5.TabIndex = 4;
|
||||||
|
label5.Text = "Цена билета";
|
||||||
|
//
|
||||||
|
// label6
|
||||||
|
//
|
||||||
|
label6.AutoSize = true;
|
||||||
|
label6.Location = new Point(41, 16);
|
||||||
|
label6.Name = "label6";
|
||||||
|
label6.Size = new Size(68, 20);
|
||||||
|
label6.TabIndex = 5;
|
||||||
|
label6.Text = "Самолёт";
|
||||||
|
//
|
||||||
|
// comboBoxAirplane
|
||||||
|
//
|
||||||
|
comboBoxAirplane.DropDownStyle = ComboBoxStyle.DropDownList;
|
||||||
|
comboBoxAirplane.FormattingEnabled = true;
|
||||||
|
comboBoxAirplane.Location = new Point(183, 16);
|
||||||
|
comboBoxAirplane.Name = "comboBoxAirplane";
|
||||||
|
comboBoxAirplane.Size = new Size(231, 28);
|
||||||
|
comboBoxAirplane.TabIndex = 6;
|
||||||
|
//
|
||||||
|
// dateTimePickerDeparture
|
||||||
|
//
|
||||||
|
dateTimePickerDeparture.Location = new Point(183, 76);
|
||||||
|
dateTimePickerDeparture.Name = "dateTimePickerDeparture";
|
||||||
|
dateTimePickerDeparture.Size = new Size(250, 27);
|
||||||
|
dateTimePickerDeparture.TabIndex = 7;
|
||||||
|
//
|
||||||
|
// dateTimePickerArrival
|
||||||
|
//
|
||||||
|
dateTimePickerArrival.Location = new Point(183, 125);
|
||||||
|
dateTimePickerArrival.Name = "dateTimePickerArrival";
|
||||||
|
dateTimePickerArrival.Size = new Size(250, 27);
|
||||||
|
dateTimePickerArrival.TabIndex = 8;
|
||||||
|
//
|
||||||
|
// numericUpDownPrice
|
||||||
|
//
|
||||||
|
numericUpDownPrice.Location = new Point(183, 274);
|
||||||
|
numericUpDownPrice.Name = "numericUpDownPrice";
|
||||||
|
numericUpDownPrice.Size = new Size(250, 27);
|
||||||
|
numericUpDownPrice.TabIndex = 9;
|
||||||
|
//
|
||||||
|
// textBoxDestination
|
||||||
|
//
|
||||||
|
textBoxDestination.Location = new Point(183, 171);
|
||||||
|
textBoxDestination.Name = "textBoxDestination";
|
||||||
|
textBoxDestination.Size = new Size(250, 27);
|
||||||
|
textBoxDestination.TabIndex = 10;
|
||||||
|
//
|
||||||
|
// textBoxDeparture
|
||||||
|
//
|
||||||
|
textBoxDeparture.Location = new Point(183, 215);
|
||||||
|
textBoxDeparture.Name = "textBoxDeparture";
|
||||||
|
textBoxDeparture.Size = new Size(250, 27);
|
||||||
|
textBoxDeparture.TabIndex = 11;
|
||||||
|
//
|
||||||
|
// groupBox1
|
||||||
|
//
|
||||||
|
groupBox1.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
|
||||||
|
groupBox1.Controls.Add(dataGridView);
|
||||||
|
groupBox1.Location = new Point(14, 353);
|
||||||
|
groupBox1.Name = "groupBox1";
|
||||||
|
groupBox1.Size = new Size(594, 298);
|
||||||
|
groupBox1.TabIndex = 12;
|
||||||
|
groupBox1.TabStop = false;
|
||||||
|
groupBox1.Text = "Работники";
|
||||||
|
//
|
||||||
|
// dataGridView
|
||||||
|
//
|
||||||
|
dataGridView.AllowUserToResizeColumns = false;
|
||||||
|
dataGridView.AllowUserToResizeRows = false;
|
||||||
|
dataGridView.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
|
||||||
|
dataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||||
|
dataGridView.Columns.AddRange(new DataGridViewColumn[] { ColumnEmployee, ColumnFlight, ColumnHoursWork });
|
||||||
|
dataGridView.Location = new Point(6, 26);
|
||||||
|
dataGridView.MultiSelect = false;
|
||||||
|
dataGridView.Name = "dataGridView";
|
||||||
|
dataGridView.RowHeadersVisible = false;
|
||||||
|
dataGridView.RowHeadersWidth = 51;
|
||||||
|
dataGridView.Size = new Size(582, 266);
|
||||||
|
dataGridView.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// ColumnEmployee
|
||||||
|
//
|
||||||
|
ColumnEmployee.HeaderText = "Работник";
|
||||||
|
ColumnEmployee.MinimumWidth = 6;
|
||||||
|
ColumnEmployee.Name = "ColumnEmployee";
|
||||||
|
ColumnEmployee.Width = 125;
|
||||||
|
//
|
||||||
|
// ColumnFlight
|
||||||
|
//
|
||||||
|
ColumnFlight.HeaderText = "Рейс";
|
||||||
|
ColumnFlight.MinimumWidth = 6;
|
||||||
|
ColumnFlight.Name = "ColumnFlight";
|
||||||
|
ColumnFlight.Width = 125;
|
||||||
|
//
|
||||||
|
// ColumnHoursWork
|
||||||
|
//
|
||||||
|
ColumnHoursWork.HeaderText = "Часы работы";
|
||||||
|
ColumnHoursWork.MinimumWidth = 6;
|
||||||
|
ColumnHoursWork.Name = "ColumnHoursWork";
|
||||||
|
ColumnHoursWork.Width = 125;
|
||||||
|
//
|
||||||
|
// buttonAdd
|
||||||
|
//
|
||||||
|
buttonAdd.Anchor = AnchorStyles.Bottom | AnchorStyles.Left;
|
||||||
|
buttonAdd.Location = new Point(15, 670);
|
||||||
|
buttonAdd.Name = "buttonAdd";
|
||||||
|
buttonAdd.Size = new Size(94, 40);
|
||||||
|
buttonAdd.TabIndex = 13;
|
||||||
|
buttonAdd.Text = "Добавить";
|
||||||
|
buttonAdd.UseVisualStyleBackColor = true;
|
||||||
|
buttonAdd.Click += ButtonAdd_Click;
|
||||||
|
//
|
||||||
|
// buttonCancel
|
||||||
|
//
|
||||||
|
buttonCancel.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
|
||||||
|
buttonCancel.Location = new Point(511, 670);
|
||||||
|
buttonCancel.Name = "buttonCancel";
|
||||||
|
buttonCancel.Size = new Size(94, 40);
|
||||||
|
buttonCancel.TabIndex = 14;
|
||||||
|
buttonCancel.Text = "Отмена";
|
||||||
|
buttonCancel.UseVisualStyleBackColor = true;
|
||||||
|
buttonCancel.Click += ButtonCancel_Click;
|
||||||
|
//
|
||||||
|
// FormFlight
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(620, 722);
|
||||||
|
Controls.Add(buttonCancel);
|
||||||
|
Controls.Add(buttonAdd);
|
||||||
|
Controls.Add(groupBox1);
|
||||||
|
Controls.Add(textBoxDeparture);
|
||||||
|
Controls.Add(textBoxDestination);
|
||||||
|
Controls.Add(numericUpDownPrice);
|
||||||
|
Controls.Add(dateTimePickerArrival);
|
||||||
|
Controls.Add(dateTimePickerDeparture);
|
||||||
|
Controls.Add(comboBoxAirplane);
|
||||||
|
Controls.Add(label6);
|
||||||
|
Controls.Add(label5);
|
||||||
|
Controls.Add(label4);
|
||||||
|
Controls.Add(label3);
|
||||||
|
Controls.Add(label2);
|
||||||
|
Controls.Add(label1);
|
||||||
|
Name = "FormFlight";
|
||||||
|
Text = "FormFlight";
|
||||||
|
((System.ComponentModel.ISupportInitialize)numericUpDownPrice).EndInit();
|
||||||
|
groupBox1.ResumeLayout(false);
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).EndInit();
|
||||||
|
ResumeLayout(false);
|
||||||
|
PerformLayout();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Label label1;
|
||||||
|
private Label label2;
|
||||||
|
private Label label3;
|
||||||
|
private Label label4;
|
||||||
|
private Label label5;
|
||||||
|
private Label label6;
|
||||||
|
private ComboBox comboBoxAirplane;
|
||||||
|
private DateTimePicker dateTimePickerDeparture;
|
||||||
|
private DateTimePicker dateTimePickerArrival;
|
||||||
|
private NumericUpDown numericUpDownPrice;
|
||||||
|
private TextBox textBoxDestination;
|
||||||
|
private TextBox textBoxDeparture;
|
||||||
|
private GroupBox groupBox1;
|
||||||
|
private DataGridView dataGridView;
|
||||||
|
private Button buttonAdd;
|
||||||
|
private Button buttonCancel;
|
||||||
|
private DataGridViewComboBoxColumn ColumnEmployee;
|
||||||
|
private DataGridViewTextBoxColumn ColumnFlight;
|
||||||
|
private DataGridViewTextBoxColumn ColumnHoursWork;
|
||||||
|
}
|
||||||
|
}
|
71
ProjectAirline/Forms/FormFlight.cs
Normal file
71
ProjectAirline/Forms/FormFlight.cs
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using ProjectAirline.Repositories;
|
||||||
|
using ProjectAirline.Repositories.Implementations;
|
||||||
|
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 ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormFlight : Form
|
||||||
|
{
|
||||||
|
private readonly IFlightRepository _flightRepository;
|
||||||
|
public FormFlight(IFlightRepository flightRepository, IAirplaneRepository airplaneRepository, IEmployeeRepository employeeRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_flightRepository = flightRepository ?? throw new ArgumentNullException(nameof(flightRepository));
|
||||||
|
|
||||||
|
comboBoxAirplane.DataSource = airplaneRepository.ReadAirplanes();
|
||||||
|
comboBoxAirplane.DisplayMember = "Model";
|
||||||
|
comboBoxAirplane.ValueMember = "Id";
|
||||||
|
|
||||||
|
ColumnEmployee.DataSource = employeeRepository.ReadEmployees();
|
||||||
|
ColumnEmployee.DisplayMember = "FirstName";
|
||||||
|
ColumnEmployee.ValueMember = "Id";
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAdd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (dataGridView.RowCount < 1 || comboBoxAirplane.SelectedIndex < 0 || numericUpDownPrice.Value <= 0)
|
||||||
|
{
|
||||||
|
throw new Exception("Имеются незаполненны поля");
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_flightRepository.CreateFlight(Flight.CreateOperation(0, (int)comboBoxAirplane.SelectedValue,
|
||||||
|
textBoxDestination.Text, textBoxDeparture.Text,
|
||||||
|
(int)numericUpDownPrice.Value, CreateListFlightFromDataGrid()));
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при сохранении", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonCancel_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
private List<EmployeeFlight> CreateListFlightFromDataGrid()
|
||||||
|
{
|
||||||
|
var list = new List<EmployeeFlight>();
|
||||||
|
foreach (DataGridViewRow row in dataGridView.Rows)
|
||||||
|
{
|
||||||
|
if (row.Cells["ColumnEmployee"].Value == null || row.Cells["ColumnFlight"].Value == null || row.Cells["ColumnHoursWork"].Value == null)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
list.Add(EmployeeFlight.CreateOperation(0, Convert.ToInt32(row.Cells["ColumnEmployee"].Value),
|
||||||
|
Convert.ToInt32(row.Cells["ColumnFlight"].Value), Convert.ToInt32(row.Cells["ColumnHoursWork"].Value)));
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
120
ProjectAirline/Forms/FormFlight.resx
Normal file
120
ProjectAirline/Forms/FormFlight.resx
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
114
ProjectAirline/Forms/FormFlights.Designer.cs
generated
Normal file
114
ProjectAirline/Forms/FormFlights.Designer.cs
generated
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormFlights
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormFlights));
|
||||||
|
panel1 = new Panel();
|
||||||
|
buttonRemove = new Button();
|
||||||
|
buttonAdd = new Button();
|
||||||
|
dataGridView = new DataGridView();
|
||||||
|
panel1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).BeginInit();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// panel1
|
||||||
|
//
|
||||||
|
panel1.Controls.Add(buttonRemove);
|
||||||
|
panel1.Controls.Add(buttonAdd);
|
||||||
|
panel1.Dock = DockStyle.Right;
|
||||||
|
panel1.Location = new Point(653, 0);
|
||||||
|
panel1.Name = "panel1";
|
||||||
|
panel1.Size = new Size(147, 450);
|
||||||
|
panel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// buttonRemove
|
||||||
|
//
|
||||||
|
buttonRemove.BackgroundImage = (Image)resources.GetObject("buttonRemove.BackgroundImage");
|
||||||
|
buttonRemove.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonRemove.Location = new Point(33, 165);
|
||||||
|
buttonRemove.Name = "buttonRemove";
|
||||||
|
buttonRemove.Size = new Size(89, 83);
|
||||||
|
buttonRemove.TabIndex = 1;
|
||||||
|
buttonRemove.UseVisualStyleBackColor = true;
|
||||||
|
buttonRemove.Click += ButtonRemove_Click;
|
||||||
|
//
|
||||||
|
// buttonAdd
|
||||||
|
//
|
||||||
|
buttonAdd.BackgroundImage = Properties.Resources.plus;
|
||||||
|
buttonAdd.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonAdd.Location = new Point(33, 41);
|
||||||
|
buttonAdd.Name = "buttonAdd";
|
||||||
|
buttonAdd.Size = new Size(89, 83);
|
||||||
|
buttonAdd.TabIndex = 0;
|
||||||
|
buttonAdd.UseVisualStyleBackColor = true;
|
||||||
|
buttonAdd.Click += ButtonAdd_Click;
|
||||||
|
//
|
||||||
|
// dataGridView
|
||||||
|
//
|
||||||
|
dataGridView.AllowUserToAddRows = false;
|
||||||
|
dataGridView.AllowUserToDeleteRows = false;
|
||||||
|
dataGridView.AllowUserToResizeColumns = false;
|
||||||
|
dataGridView.AllowUserToResizeRows = false;
|
||||||
|
dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
|
||||||
|
dataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||||
|
dataGridView.Dock = DockStyle.Fill;
|
||||||
|
dataGridView.Location = new Point(0, 0);
|
||||||
|
dataGridView.MultiSelect = false;
|
||||||
|
dataGridView.Name = "dataGridView";
|
||||||
|
dataGridView.ReadOnly = true;
|
||||||
|
dataGridView.RowHeadersVisible = false;
|
||||||
|
dataGridView.RowHeadersWidth = 51;
|
||||||
|
dataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
|
||||||
|
dataGridView.Size = new Size(653, 450);
|
||||||
|
dataGridView.TabIndex = 1;
|
||||||
|
//
|
||||||
|
// FormFlights
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(800, 450);
|
||||||
|
Controls.Add(dataGridView);
|
||||||
|
Controls.Add(panel1);
|
||||||
|
Name = "FormFlights";
|
||||||
|
StartPosition = FormStartPosition.CenterParent;
|
||||||
|
Text = "Рейсы";
|
||||||
|
Load += FormFlights_Load;
|
||||||
|
panel1.ResumeLayout(false);
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).EndInit();
|
||||||
|
ResumeLayout(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Panel panel1;
|
||||||
|
private Button buttonRemove;
|
||||||
|
private Button buttonAdd;
|
||||||
|
private DataGridView dataGridView;
|
||||||
|
}
|
||||||
|
}
|
85
ProjectAirline/Forms/FormFlights.cs
Normal file
85
ProjectAirline/Forms/FormFlights.cs
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
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;
|
||||||
|
using Unity;
|
||||||
|
using ProjectAirline.Repositories;
|
||||||
|
using System.Xml.Linq;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormFlights : Form
|
||||||
|
{
|
||||||
|
private readonly IUnityContainer _container;
|
||||||
|
private readonly IFlightRepository _flightRepository;
|
||||||
|
public FormFlights(IUnityContainer container, IFlightRepository flightRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_container = container ?? throw new ArgumentNullException(nameof(container));
|
||||||
|
_flightRepository = flightRepository ?? throw new ArgumentNullException(nameof(flightRepository));
|
||||||
|
}
|
||||||
|
private void FormFlights_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAdd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormFlight>().ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonRemove_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!TryGetIdentifierFromSelectedRow(out var findId))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (MessageBox.Show("Удалить запись?", "Удаление", MessageBoxButtons.YesNo) != DialogResult.Yes)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_flightRepository.DeleteFlight(findId);
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при удалении", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LoadList() => dataGridView.DataSource = _flightRepository.ReadFlights();
|
||||||
|
private bool TryGetIdentifierFromSelectedRow(out int id)
|
||||||
|
{
|
||||||
|
id = 0;
|
||||||
|
if (dataGridView.SelectedRows.Count < 1)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
239
ProjectAirline/Forms/FormFlights.resx
Normal file
239
ProjectAirline/Forms/FormFlights.resx
Normal file
@ -0,0 +1,239 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="buttonRemove.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//Z
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
162
ProjectAirline/Forms/FormPassenger.Designer.cs
generated
Normal file
162
ProjectAirline/Forms/FormPassenger.Designer.cs
generated
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormPassenger
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
checkedListBoxType = new CheckedListBox();
|
||||||
|
label1 = new Label();
|
||||||
|
textBoxFirstname = new TextBox();
|
||||||
|
textBoxLastname = new TextBox();
|
||||||
|
label2 = new Label();
|
||||||
|
label3 = new Label();
|
||||||
|
label4 = new Label();
|
||||||
|
dateTimePickerBorn = new DateTimePicker();
|
||||||
|
buttonSave = new Button();
|
||||||
|
buttonCancel = new Button();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// checkedListBoxType
|
||||||
|
//
|
||||||
|
checkedListBoxType.FormattingEnabled = true;
|
||||||
|
checkedListBoxType.Location = new Point(173, 27);
|
||||||
|
checkedListBoxType.Name = "checkedListBoxType";
|
||||||
|
checkedListBoxType.Size = new Size(205, 114);
|
||||||
|
checkedListBoxType.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// label1
|
||||||
|
//
|
||||||
|
label1.AutoSize = true;
|
||||||
|
label1.Location = new Point(39, 55);
|
||||||
|
label1.Name = "label1";
|
||||||
|
label1.Size = new Size(115, 20);
|
||||||
|
label1.TabIndex = 2;
|
||||||
|
label1.Text = "Тип пассажира";
|
||||||
|
//
|
||||||
|
// textBoxFirstname
|
||||||
|
//
|
||||||
|
textBoxFirstname.Location = new Point(173, 176);
|
||||||
|
textBoxFirstname.Name = "textBoxFirstname";
|
||||||
|
textBoxFirstname.Size = new Size(205, 27);
|
||||||
|
textBoxFirstname.TabIndex = 3;
|
||||||
|
//
|
||||||
|
// textBoxLastname
|
||||||
|
//
|
||||||
|
textBoxLastname.Location = new Point(174, 234);
|
||||||
|
textBoxLastname.Name = "textBoxLastname";
|
||||||
|
textBoxLastname.Size = new Size(210, 27);
|
||||||
|
textBoxLastname.TabIndex = 4;
|
||||||
|
//
|
||||||
|
// label2
|
||||||
|
//
|
||||||
|
label2.AutoSize = true;
|
||||||
|
label2.Location = new Point(63, 180);
|
||||||
|
label2.Name = "label2";
|
||||||
|
label2.Size = new Size(39, 20);
|
||||||
|
label2.TabIndex = 5;
|
||||||
|
label2.Text = "Имя";
|
||||||
|
//
|
||||||
|
// label3
|
||||||
|
//
|
||||||
|
label3.AutoSize = true;
|
||||||
|
label3.Location = new Point(52, 237);
|
||||||
|
label3.Name = "label3";
|
||||||
|
label3.Size = new Size(73, 20);
|
||||||
|
label3.TabIndex = 6;
|
||||||
|
label3.Text = "Фамилия";
|
||||||
|
//
|
||||||
|
// label4
|
||||||
|
//
|
||||||
|
label4.AutoSize = true;
|
||||||
|
label4.Location = new Point(38, 303);
|
||||||
|
label4.Name = "label4";
|
||||||
|
label4.Size = new Size(116, 20);
|
||||||
|
label4.TabIndex = 7;
|
||||||
|
label4.Text = "Дата рождения";
|
||||||
|
//
|
||||||
|
// dateTimePickerBorn
|
||||||
|
//
|
||||||
|
dateTimePickerBorn.Location = new Point(173, 303);
|
||||||
|
dateTimePickerBorn.Name = "dateTimePickerBorn";
|
||||||
|
dateTimePickerBorn.Size = new Size(224, 27);
|
||||||
|
dateTimePickerBorn.TabIndex = 8;
|
||||||
|
//
|
||||||
|
// buttonSave
|
||||||
|
//
|
||||||
|
buttonSave.Location = new Point(47, 364);
|
||||||
|
buttonSave.Name = "buttonSave";
|
||||||
|
buttonSave.Size = new Size(115, 60);
|
||||||
|
buttonSave.TabIndex = 9;
|
||||||
|
buttonSave.Text = "Сохранить";
|
||||||
|
buttonSave.UseVisualStyleBackColor = true;
|
||||||
|
buttonSave.Click += ButtonSave_Click;
|
||||||
|
//
|
||||||
|
// buttonCancel
|
||||||
|
//
|
||||||
|
buttonCancel.Location = new Point(267, 365);
|
||||||
|
buttonCancel.Name = "buttonCancel";
|
||||||
|
buttonCancel.Size = new Size(111, 59);
|
||||||
|
buttonCancel.TabIndex = 10;
|
||||||
|
buttonCancel.Text = "Отмена";
|
||||||
|
buttonCancel.UseVisualStyleBackColor = true;
|
||||||
|
buttonCancel.Click += ButtonCancel_Click;
|
||||||
|
//
|
||||||
|
// FormPassenger
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(417, 464);
|
||||||
|
Controls.Add(buttonCancel);
|
||||||
|
Controls.Add(buttonSave);
|
||||||
|
Controls.Add(dateTimePickerBorn);
|
||||||
|
Controls.Add(label4);
|
||||||
|
Controls.Add(label3);
|
||||||
|
Controls.Add(label2);
|
||||||
|
Controls.Add(textBoxLastname);
|
||||||
|
Controls.Add(textBoxFirstname);
|
||||||
|
Controls.Add(label1);
|
||||||
|
Controls.Add(checkedListBoxType);
|
||||||
|
Name = "FormPassenger";
|
||||||
|
Text = "Пассажир";
|
||||||
|
ResumeLayout(false);
|
||||||
|
PerformLayout();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private CheckedListBox checkedListBoxType;
|
||||||
|
private Label label1;
|
||||||
|
private TextBox textBoxFirstname;
|
||||||
|
private TextBox textBoxLastname;
|
||||||
|
private Label label2;
|
||||||
|
private Label label3;
|
||||||
|
private Label label4;
|
||||||
|
private DateTimePicker dateTimePickerBorn;
|
||||||
|
private Button buttonSave;
|
||||||
|
private Button buttonCancel;
|
||||||
|
}
|
||||||
|
}
|
109
ProjectAirline/Forms/FormPassenger.cs
Normal file
109
ProjectAirline/Forms/FormPassenger.cs
Normal file
@ -0,0 +1,109 @@
|
|||||||
|
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;
|
||||||
|
using ProjectAirline.Entities.Enums;
|
||||||
|
using ProjectAirline.Entities;
|
||||||
|
using ProjectAirline.Repositories;
|
||||||
|
|
||||||
|
|
||||||
|
namespace ProjectAirline.Forms;
|
||||||
|
|
||||||
|
public partial class FormPassenger : Form
|
||||||
|
{
|
||||||
|
private readonly IPassengerRepository _passengerRepository;
|
||||||
|
private int? _passengerId;
|
||||||
|
public int Id
|
||||||
|
{
|
||||||
|
set
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var passenger =
|
||||||
|
_passengerRepository.ReadPassengerById(value);
|
||||||
|
if (passenger == null)
|
||||||
|
{
|
||||||
|
throw new
|
||||||
|
InvalidDataException(nameof(passenger));
|
||||||
|
}
|
||||||
|
foreach (FoodPreferences elem in Enum.GetValues(typeof(FoodPreferences)))
|
||||||
|
{
|
||||||
|
if ((elem & passenger.FoodPreferences) != 0)
|
||||||
|
{
|
||||||
|
checkedListBoxType.SetItemChecked(checkedListBoxType.Items.IndexOf(
|
||||||
|
elem), true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
textBoxFirstname.Text = passenger.FirstName;
|
||||||
|
textBoxLastname.Text = passenger.LastName;
|
||||||
|
dateTimePickerBorn.Value = passenger.DateBirth;
|
||||||
|
_passengerId = value;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public FormPassenger(IPassengerRepository passengerRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_passengerRepository = passengerRepository ??
|
||||||
|
throw new ArgumentNullException(nameof(passengerRepository));
|
||||||
|
|
||||||
|
foreach (var elem in Enum.GetValues(typeof(FoodPreferences)))
|
||||||
|
{
|
||||||
|
checkedListBoxType.Items.Add(elem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonSave_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (checkedListBoxType.CheckedItems.Count == 0 ||
|
||||||
|
string.IsNullOrWhiteSpace(textBoxFirstname.Text) ||
|
||||||
|
string.IsNullOrWhiteSpace(textBoxLastname.Text))
|
||||||
|
{
|
||||||
|
throw new Exception("Имеются незаполненные поля");
|
||||||
|
}
|
||||||
|
if (_passengerId.HasValue)
|
||||||
|
{
|
||||||
|
_passengerRepository.UpdatePassenger(CreatePassenger(_passengerId.Value));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_passengerRepository.CreatePassenger(CreatePassenger(0));
|
||||||
|
}
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при сохранении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonCancel_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
private Passenger CreatePassenger(int id)
|
||||||
|
{
|
||||||
|
FoodPreferences foodPreferences = FoodPreferences.None;
|
||||||
|
foreach (var elem in checkedListBoxType.CheckedItems)
|
||||||
|
{
|
||||||
|
foodPreferences |= (FoodPreferences)elem;
|
||||||
|
}
|
||||||
|
|
||||||
|
return Passenger.CreateEntity(id, foodPreferences, textBoxFirstname.Text, textBoxLastname.Text);
|
||||||
|
}
|
||||||
|
}
|
120
ProjectAirline/Forms/FormPassenger.resx
Normal file
120
ProjectAirline/Forms/FormPassenger.resx
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
128
ProjectAirline/Forms/FormPassengers.Designer.cs
generated
Normal file
128
ProjectAirline/Forms/FormPassengers.Designer.cs
generated
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormPassengers
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormPassengers));
|
||||||
|
panel1 = new Panel();
|
||||||
|
buttonUpdate = new Button();
|
||||||
|
buttonRemove = new Button();
|
||||||
|
buttonAdd = new Button();
|
||||||
|
dataGridView = new DataGridView();
|
||||||
|
panel1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).BeginInit();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// panel1
|
||||||
|
//
|
||||||
|
panel1.Controls.Add(buttonUpdate);
|
||||||
|
panel1.Controls.Add(buttonRemove);
|
||||||
|
panel1.Controls.Add(buttonAdd);
|
||||||
|
panel1.Dock = DockStyle.Right;
|
||||||
|
panel1.Location = new Point(642, 0);
|
||||||
|
panel1.Name = "panel1";
|
||||||
|
panel1.Size = new Size(158, 450);
|
||||||
|
panel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// buttonUpdate
|
||||||
|
//
|
||||||
|
buttonUpdate.BackgroundImage = (Image)resources.GetObject("buttonUpdate.BackgroundImage");
|
||||||
|
buttonUpdate.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonUpdate.Location = new Point(36, 246);
|
||||||
|
buttonUpdate.Name = "buttonUpdate";
|
||||||
|
buttonUpdate.Size = new Size(93, 84);
|
||||||
|
buttonUpdate.TabIndex = 2;
|
||||||
|
buttonUpdate.UseVisualStyleBackColor = true;
|
||||||
|
buttonUpdate.Click += ButtonUpdate_Click;
|
||||||
|
//
|
||||||
|
// buttonRemove
|
||||||
|
//
|
||||||
|
buttonRemove.BackgroundImage = (Image)resources.GetObject("buttonRemove.BackgroundImage");
|
||||||
|
buttonRemove.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonRemove.Location = new Point(36, 144);
|
||||||
|
buttonRemove.Name = "buttonRemove";
|
||||||
|
buttonRemove.Size = new Size(93, 84);
|
||||||
|
buttonRemove.TabIndex = 1;
|
||||||
|
buttonRemove.UseVisualStyleBackColor = true;
|
||||||
|
buttonRemove.Click += ButtonRemove_Click;
|
||||||
|
//
|
||||||
|
// buttonAdd
|
||||||
|
//
|
||||||
|
buttonAdd.BackgroundImage = Properties.Resources.plus;
|
||||||
|
buttonAdd.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonAdd.Location = new Point(36, 37);
|
||||||
|
buttonAdd.Name = "buttonAdd";
|
||||||
|
buttonAdd.Size = new Size(93, 84);
|
||||||
|
buttonAdd.TabIndex = 0;
|
||||||
|
buttonAdd.UseVisualStyleBackColor = true;
|
||||||
|
buttonAdd.Click += ButtonAdd_Click;
|
||||||
|
//
|
||||||
|
// dataGridView
|
||||||
|
//
|
||||||
|
dataGridView.AllowUserToAddRows = false;
|
||||||
|
dataGridView.AllowUserToDeleteRows = false;
|
||||||
|
dataGridView.AllowUserToResizeColumns = false;
|
||||||
|
dataGridView.AllowUserToResizeRows = false;
|
||||||
|
dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
|
||||||
|
dataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||||
|
dataGridView.Dock = DockStyle.Fill;
|
||||||
|
dataGridView.Location = new Point(0, 0);
|
||||||
|
dataGridView.MultiSelect = false;
|
||||||
|
dataGridView.Name = "dataGridView";
|
||||||
|
dataGridView.ReadOnly = true;
|
||||||
|
dataGridView.RowHeadersVisible = false;
|
||||||
|
dataGridView.RowHeadersWidth = 51;
|
||||||
|
dataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
|
||||||
|
dataGridView.Size = new Size(642, 450);
|
||||||
|
dataGridView.TabIndex = 1;
|
||||||
|
//
|
||||||
|
// FormPassengers
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(800, 450);
|
||||||
|
Controls.Add(dataGridView);
|
||||||
|
Controls.Add(panel1);
|
||||||
|
Name = "FormPassengers";
|
||||||
|
StartPosition = FormStartPosition.CenterParent;
|
||||||
|
Text = "Пассажиры";
|
||||||
|
Load += FormPassengers_Load;
|
||||||
|
panel1.ResumeLayout(false);
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).EndInit();
|
||||||
|
ResumeLayout(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Panel panel1;
|
||||||
|
private Button buttonUpdate;
|
||||||
|
private Button buttonRemove;
|
||||||
|
private Button buttonAdd;
|
||||||
|
private DataGridView dataGridView;
|
||||||
|
}
|
||||||
|
}
|
115
ProjectAirline/Forms/FormPassengers.cs
Normal file
115
ProjectAirline/Forms/FormPassengers.cs
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
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;
|
||||||
|
using ProjectAirline.Repositories;
|
||||||
|
using Unity;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormPassengers : Form
|
||||||
|
{
|
||||||
|
private readonly IUnityContainer _container;
|
||||||
|
private readonly IPassengerRepository _passengerRepository;
|
||||||
|
public FormPassengers(IUnityContainer container, IPassengerRepository
|
||||||
|
passengerRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_container = container ??
|
||||||
|
throw new ArgumentNullException(nameof(container));
|
||||||
|
_passengerRepository = passengerRepository ??
|
||||||
|
throw new ArgumentNullException(nameof(passengerRepository));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void FormPassengers_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAdd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormPassenger>().ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при добавлении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonRemove_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!TryGetIdentifierFromSelectedRow(out var findId))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (MessageBox.Show("Удалить запись?", "Удаление",
|
||||||
|
MessageBoxButtons.YesNo) != DialogResult.Yes)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_passengerRepository.DeletePassenger(findId);
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при удалении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonUpdate_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!TryGetIdentifierFromSelectedRow(out var findId))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var form = _container.Resolve<FormPassenger>();
|
||||||
|
form.Id = findId;
|
||||||
|
form.ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при изменении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void LoadList() => dataGridView.DataSource =
|
||||||
|
_passengerRepository.ReadPassengers();
|
||||||
|
private bool TryGetIdentifierFromSelectedRow(out int id)
|
||||||
|
{
|
||||||
|
id = 0;
|
||||||
|
if (dataGridView.SelectedRows.Count < 1)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Нет выбранной записи", "Ошибка",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
id =
|
||||||
|
Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
470
ProjectAirline/Forms/FormPassengers.resx
Normal file
470
ProjectAirline/Forms/FormPassengers.resx
Normal file
@ -0,0 +1,470 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="buttonUpdate.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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
|
||||||
|
AAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZ
|
||||||
|
FJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsj
|
||||||
|
q93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d
|
||||||
|
5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQVia
|
||||||
|
RIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAaXm3+d5XTwZFZxSMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa
|
||||||
|
Xm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFZxSM
|
||||||
|
fQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW
|
||||||
|
9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq9zwW9MAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAaXm3+d5XTwZFJxWMfQViaRIpsjq93wW9EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaXm3+d5XTwZ
|
||||||
|
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
|
||||||
|
AAAAAAAAAAAAUAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU4AEYAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAADJ4E4EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvJ88AEAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAvOckggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp4EAkkAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAEgAgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEkgEAkYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAgAkkksoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAEgdzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
EEA5uzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEk4JuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk/
|
||||||
|
PJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJ
|
||||||
|
uzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuz
|
||||||
|
oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuz4AAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkvJuzoAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAKkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqkPJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAqkvJuzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJuzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAKkPJuwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkvJryAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AKkvmJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKkokeoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK
|
||||||
|
ickBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj2UkCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhAU
|
||||||
|
jwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIzlgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACNsA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAA
|
||||||
|
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
|
||||||
|
YsTyO4+SUvkJVWbq3j/xx//Z
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="buttonRemove.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//Z
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
149
ProjectAirline/Forms/FormTicket.Designer.cs
generated
Normal file
149
ProjectAirline/Forms/FormTicket.Designer.cs
generated
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormTicket
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
label1 = new Label();
|
||||||
|
label2 = new Label();
|
||||||
|
label3 = new Label();
|
||||||
|
comboBoxFlight = new ComboBox();
|
||||||
|
comboBoxPassenger = new ComboBox();
|
||||||
|
numericUpDownPrice = new NumericUpDown();
|
||||||
|
buttonAdd = new Button();
|
||||||
|
buttonCancel = new Button();
|
||||||
|
((System.ComponentModel.ISupportInitialize)numericUpDownPrice).BeginInit();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// label1
|
||||||
|
//
|
||||||
|
label1.AutoSize = true;
|
||||||
|
label1.Location = new Point(49, 37);
|
||||||
|
label1.Name = "label1";
|
||||||
|
label1.Size = new Size(41, 20);
|
||||||
|
label1.TabIndex = 0;
|
||||||
|
label1.Text = "Рейс";
|
||||||
|
//
|
||||||
|
// label2
|
||||||
|
//
|
||||||
|
label2.AutoSize = true;
|
||||||
|
label2.Location = new Point(34, 122);
|
||||||
|
label2.Name = "label2";
|
||||||
|
label2.Size = new Size(79, 20);
|
||||||
|
label2.TabIndex = 1;
|
||||||
|
label2.Text = "Пассажир";
|
||||||
|
//
|
||||||
|
// label3
|
||||||
|
//
|
||||||
|
label3.AutoSize = true;
|
||||||
|
label3.Location = new Point(12, 201);
|
||||||
|
label3.Name = "label3";
|
||||||
|
label3.Size = new Size(135, 20);
|
||||||
|
label3.TabIndex = 2;
|
||||||
|
label3.Text = "Стоимость билета";
|
||||||
|
//
|
||||||
|
// comboBoxFlight
|
||||||
|
//
|
||||||
|
comboBoxFlight.DropDownStyle = ComboBoxStyle.DropDownList;
|
||||||
|
comboBoxFlight.FormattingEnabled = true;
|
||||||
|
comboBoxFlight.Location = new Point(166, 37);
|
||||||
|
comboBoxFlight.Name = "comboBoxFlight";
|
||||||
|
comboBoxFlight.Size = new Size(223, 28);
|
||||||
|
comboBoxFlight.TabIndex = 3;
|
||||||
|
//
|
||||||
|
// comboBoxPassenger
|
||||||
|
//
|
||||||
|
comboBoxPassenger.DropDownStyle = ComboBoxStyle.DropDownList;
|
||||||
|
comboBoxPassenger.FormattingEnabled = true;
|
||||||
|
comboBoxPassenger.Location = new Point(167, 122);
|
||||||
|
comboBoxPassenger.Name = "comboBoxPassenger";
|
||||||
|
comboBoxPassenger.Size = new Size(222, 28);
|
||||||
|
comboBoxPassenger.TabIndex = 4;
|
||||||
|
//
|
||||||
|
// numericUpDownPrice
|
||||||
|
//
|
||||||
|
numericUpDownPrice.DecimalPlaces = 2;
|
||||||
|
numericUpDownPrice.Location = new Point(166, 205);
|
||||||
|
numericUpDownPrice.Maximum = new decimal(new int[] { 10000000, 0, 0, 0 });
|
||||||
|
numericUpDownPrice.Minimum = new decimal(new int[] { 1, 0, 0, 0 });
|
||||||
|
numericUpDownPrice.Name = "numericUpDownPrice";
|
||||||
|
numericUpDownPrice.Size = new Size(223, 27);
|
||||||
|
numericUpDownPrice.TabIndex = 5;
|
||||||
|
numericUpDownPrice.Value = new decimal(new int[] { 1, 0, 0, 0 });
|
||||||
|
//
|
||||||
|
// buttonAdd
|
||||||
|
//
|
||||||
|
buttonAdd.Location = new Point(60, 332);
|
||||||
|
buttonAdd.Name = "buttonAdd";
|
||||||
|
buttonAdd.Size = new Size(109, 63);
|
||||||
|
buttonAdd.TabIndex = 6;
|
||||||
|
buttonAdd.Text = "Добавить";
|
||||||
|
buttonAdd.UseVisualStyleBackColor = true;
|
||||||
|
buttonAdd.Click += ButtonAdd_Click;
|
||||||
|
//
|
||||||
|
// buttonCancel
|
||||||
|
//
|
||||||
|
buttonCancel.Location = new Point(261, 335);
|
||||||
|
buttonCancel.Name = "buttonCancel";
|
||||||
|
buttonCancel.Size = new Size(107, 60);
|
||||||
|
buttonCancel.TabIndex = 7;
|
||||||
|
buttonCancel.Text = "Отмена";
|
||||||
|
buttonCancel.UseVisualStyleBackColor = true;
|
||||||
|
buttonCancel.Click += ButtonCancel_Click;
|
||||||
|
//
|
||||||
|
// FormTicket
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(440, 450);
|
||||||
|
Controls.Add(buttonCancel);
|
||||||
|
Controls.Add(buttonAdd);
|
||||||
|
Controls.Add(numericUpDownPrice);
|
||||||
|
Controls.Add(comboBoxPassenger);
|
||||||
|
Controls.Add(comboBoxFlight);
|
||||||
|
Controls.Add(label3);
|
||||||
|
Controls.Add(label2);
|
||||||
|
Controls.Add(label1);
|
||||||
|
Name = "FormTicket";
|
||||||
|
Text = "Билет";
|
||||||
|
((System.ComponentModel.ISupportInitialize)numericUpDownPrice).EndInit();
|
||||||
|
ResumeLayout(false);
|
||||||
|
PerformLayout();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Label label1;
|
||||||
|
private Label label2;
|
||||||
|
private Label label3;
|
||||||
|
private ComboBox comboBoxFlight;
|
||||||
|
private ComboBox comboBoxPassenger;
|
||||||
|
private NumericUpDown numericUpDownPrice;
|
||||||
|
private Button buttonAdd;
|
||||||
|
private Button buttonCancel;
|
||||||
|
}
|
||||||
|
}
|
91
ProjectAirline/Forms/FormTicket.cs
Normal file
91
ProjectAirline/Forms/FormTicket.cs
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
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;
|
||||||
|
using ProjectAirline.Repositories;
|
||||||
|
using ProjectAirline.Entities;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormTicket : Form
|
||||||
|
{
|
||||||
|
private readonly ITicketRepository _ticketRepository;
|
||||||
|
private int? _ticketId;
|
||||||
|
public int Id
|
||||||
|
{
|
||||||
|
set
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var appointment =
|
||||||
|
_ticketRepository.ReadTicketById(value);
|
||||||
|
if (appointment == null)
|
||||||
|
{
|
||||||
|
throw new
|
||||||
|
InvalidDataException(nameof(appointment));
|
||||||
|
}
|
||||||
|
comboBoxFlight.SelectedIndex = appointment.FlightID;
|
||||||
|
comboBoxPassenger.SelectedIndex = appointment.PassengerID;
|
||||||
|
_ticketId = value;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при получении данных", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public FormTicket(ITicketRepository ticketRepository, IPassengerRepository passengerRepository, IFlightRepository flightRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_ticketRepository = ticketRepository ??
|
||||||
|
throw new ArgumentNullException(nameof(ticketRepository));
|
||||||
|
|
||||||
|
comboBoxFlight.DataSource = flightRepository.ReadFlights();
|
||||||
|
comboBoxFlight.DisplayMember = "AirplaneID";
|
||||||
|
comboBoxFlight.ValueMember = "Id";
|
||||||
|
|
||||||
|
comboBoxPassenger.DataSource = passengerRepository.ReadPassengers();
|
||||||
|
comboBoxPassenger.DisplayMember = "FirstName";
|
||||||
|
comboBoxPassenger.ValueMember = "Id";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAdd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
if (comboBoxPassenger.SelectedIndex < 0 || comboBoxFlight.SelectedIndex < 0 || numericUpDownPrice.Value <= 0)
|
||||||
|
{
|
||||||
|
throw new Exception("Имеются незаполненны поля");
|
||||||
|
}
|
||||||
|
if (_ticketId.HasValue)
|
||||||
|
{
|
||||||
|
_ticketRepository.UpdateTicket(CreateTicket(_ticketId.Value));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_ticketRepository.CreateTicket(CreateTicket(0));
|
||||||
|
}
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при сохранении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonCancel_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Close();
|
||||||
|
}
|
||||||
|
private Ticket CreateTicket(int id) => Ticket.CreateTicket(id, comboBoxFlight.SelectedIndex,
|
||||||
|
comboBoxPassenger.SelectedIndex, (int)numericUpDownPrice.Value);
|
||||||
|
}
|
||||||
|
}
|
120
ProjectAirline/Forms/FormTicket.resx
Normal file
120
ProjectAirline/Forms/FormTicket.resx
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
</root>
|
114
ProjectAirline/Forms/FormTickets.Designer.cs
generated
Normal file
114
ProjectAirline/Forms/FormTickets.Designer.cs
generated
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
partial class FormTickets
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Required designer variable.
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up any resources being used.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region Windows Form Designer generated code
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Required method for Designer support - do not modify
|
||||||
|
/// the contents of this method with the code editor.
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormTickets));
|
||||||
|
panel1 = new Panel();
|
||||||
|
buttonUpdate = new Button();
|
||||||
|
buttonAdd = new Button();
|
||||||
|
dataGridView = new DataGridView();
|
||||||
|
panel1.SuspendLayout();
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).BeginInit();
|
||||||
|
SuspendLayout();
|
||||||
|
//
|
||||||
|
// panel1
|
||||||
|
//
|
||||||
|
panel1.Controls.Add(buttonUpdate);
|
||||||
|
panel1.Controls.Add(buttonAdd);
|
||||||
|
panel1.Dock = DockStyle.Right;
|
||||||
|
panel1.Location = new Point(658, 0);
|
||||||
|
panel1.Name = "panel1";
|
||||||
|
panel1.Size = new Size(142, 450);
|
||||||
|
panel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// buttonUpdate
|
||||||
|
//
|
||||||
|
buttonUpdate.BackgroundImage = (Image)resources.GetObject("buttonUpdate.BackgroundImage");
|
||||||
|
buttonUpdate.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonUpdate.Location = new Point(24, 148);
|
||||||
|
buttonUpdate.Name = "buttonUpdate";
|
||||||
|
buttonUpdate.Size = new Size(91, 76);
|
||||||
|
buttonUpdate.TabIndex = 1;
|
||||||
|
buttonUpdate.UseVisualStyleBackColor = true;
|
||||||
|
buttonUpdate.Click += ButtonUpdate_Click;
|
||||||
|
//
|
||||||
|
// buttonAdd
|
||||||
|
//
|
||||||
|
buttonAdd.BackgroundImage = Properties.Resources.plus;
|
||||||
|
buttonAdd.BackgroundImageLayout = ImageLayout.Stretch;
|
||||||
|
buttonAdd.Location = new Point(24, 46);
|
||||||
|
buttonAdd.Name = "buttonAdd";
|
||||||
|
buttonAdd.Size = new Size(91, 76);
|
||||||
|
buttonAdd.TabIndex = 0;
|
||||||
|
buttonAdd.UseVisualStyleBackColor = true;
|
||||||
|
buttonAdd.Click += ButtonAdd_Click;
|
||||||
|
//
|
||||||
|
// dataGridView
|
||||||
|
//
|
||||||
|
dataGridView.AllowUserToAddRows = false;
|
||||||
|
dataGridView.AllowUserToDeleteRows = false;
|
||||||
|
dataGridView.AllowUserToResizeColumns = false;
|
||||||
|
dataGridView.AllowUserToResizeRows = false;
|
||||||
|
dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
|
||||||
|
dataGridView.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||||
|
dataGridView.Dock = DockStyle.Fill;
|
||||||
|
dataGridView.Location = new Point(0, 0);
|
||||||
|
dataGridView.MultiSelect = false;
|
||||||
|
dataGridView.Name = "dataGridView";
|
||||||
|
dataGridView.ReadOnly = true;
|
||||||
|
dataGridView.RowHeadersVisible = false;
|
||||||
|
dataGridView.RowHeadersWidth = 51;
|
||||||
|
dataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
|
||||||
|
dataGridView.Size = new Size(658, 450);
|
||||||
|
dataGridView.TabIndex = 1;
|
||||||
|
//
|
||||||
|
// FormTickets
|
||||||
|
//
|
||||||
|
AutoScaleDimensions = new SizeF(8F, 20F);
|
||||||
|
AutoScaleMode = AutoScaleMode.Font;
|
||||||
|
ClientSize = new Size(800, 450);
|
||||||
|
Controls.Add(dataGridView);
|
||||||
|
Controls.Add(panel1);
|
||||||
|
Name = "FormTickets";
|
||||||
|
StartPosition = FormStartPosition.CenterParent;
|
||||||
|
Text = "Билеты";
|
||||||
|
Load += FormTickets_Load;
|
||||||
|
panel1.ResumeLayout(false);
|
||||||
|
((System.ComponentModel.ISupportInitialize)dataGridView).EndInit();
|
||||||
|
ResumeLayout(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private Panel panel1;
|
||||||
|
private Button buttonUpdate;
|
||||||
|
private Button buttonAdd;
|
||||||
|
private DataGridView dataGridView;
|
||||||
|
}
|
||||||
|
}
|
83
ProjectAirline/Forms/FormTickets.cs
Normal file
83
ProjectAirline/Forms/FormTickets.cs
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
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;
|
||||||
|
using System.Xml.Linq;
|
||||||
|
using ProjectAirline.Repositories;
|
||||||
|
using Unity;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Forms
|
||||||
|
{
|
||||||
|
public partial class FormTickets : Form
|
||||||
|
{
|
||||||
|
private readonly IUnityContainer _container;
|
||||||
|
private readonly ITicketRepository _ticketRepository;
|
||||||
|
public FormTickets(IUnityContainer container, ITicketRepository ticketRepository)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
_container = container ?? throw new ArgumentNullException(nameof(container));
|
||||||
|
_ticketRepository = ticketRepository ?? throw new ArgumentNullException(nameof(ticketRepository));
|
||||||
|
}
|
||||||
|
private void FormTickets_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при загрузке", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonAdd_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
_container.Resolve<FormTicket>().ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при добавлении", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ButtonUpdate_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!TryGetIdentifierFromSelectedRow(out var findId))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var form = _container.Resolve<FormTicket>();
|
||||||
|
form.Id = findId;
|
||||||
|
form.ShowDialog();
|
||||||
|
LoadList();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
MessageBox.Show(ex.Message, "Ошибка при изменении",
|
||||||
|
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private void LoadList() => dataGridView.DataSource = _ticketRepository.ReadTickets();
|
||||||
|
private bool TryGetIdentifierFromSelectedRow(out int id)
|
||||||
|
{
|
||||||
|
id = 0;
|
||||||
|
if (dataGridView.SelectedRows.Count < 1)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Нет выбранной записи", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
239
ProjectAirline/Forms/FormTickets.resx
Normal file
239
ProjectAirline/Forms/FormTickets.resx
Normal file
@ -0,0 +1,239 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="buttonUpdate.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//Z
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
@ -1,3 +1,7 @@
|
|||||||
|
using ProjectAirline.Repositories.Implementations;
|
||||||
|
using ProjectAirline.Repositories;
|
||||||
|
using Unity;
|
||||||
|
|
||||||
namespace ProjectAirline
|
namespace ProjectAirline
|
||||||
{
|
{
|
||||||
internal static class Program
|
internal static class Program
|
||||||
@ -11,7 +15,22 @@ namespace ProjectAirline
|
|||||||
// To customize application configuration such as set high DPI settings or default font,
|
// To customize application configuration such as set high DPI settings or default font,
|
||||||
// see https://aka.ms/applicationconfiguration.
|
// see https://aka.ms/applicationconfiguration.
|
||||||
ApplicationConfiguration.Initialize();
|
ApplicationConfiguration.Initialize();
|
||||||
Application.Run(new Form1());
|
Application.Run(CreateContainer().Resolve<FormAirline>());
|
||||||
|
}
|
||||||
|
|
||||||
|
private static IUnityContainer CreateContainer()
|
||||||
|
{
|
||||||
|
var container = new UnityContainer();
|
||||||
|
|
||||||
|
// Ïðàâèëüíî ñâÿçûâàåì èíòåðôåéñû ñ èõ ðåàëèçàöèÿìè
|
||||||
|
container.RegisterType<IFlightRepository, FlightRepository>();
|
||||||
|
container.RegisterType<IPassengerRepository, PassengerRepository>();
|
||||||
|
container.RegisterType<IAirplaneRepository, AirplaneRepository>();
|
||||||
|
container.RegisterType<IEmployeeFlightRepository, EmployeeFlightRepository>();
|
||||||
|
container.RegisterType<IEmployeeRepository, EmployeeRepository>();
|
||||||
|
container.RegisterType<ITicketRepository, TicketRepository>();
|
||||||
|
|
||||||
|
return container;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -8,4 +8,23 @@
|
|||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Unity" Version="5.11.10" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Update="Properties\Resources.Designer.cs">
|
||||||
|
<DesignTime>True</DesignTime>
|
||||||
|
<AutoGen>True</AutoGen>
|
||||||
|
<DependentUpon>Resources.resx</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<EmbeddedResource Update="Properties\Resources.resx">
|
||||||
|
<Generator>ResXFileCodeGenerator</Generator>
|
||||||
|
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||||
|
</EmbeddedResource>
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
83
ProjectAirline/Properties/Resources.Designer.cs
generated
Normal file
83
ProjectAirline/Properties/Resources.Designer.cs
generated
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// Этот код создан программой.
|
||||||
|
// Исполняемая версия:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
|
||||||
|
// повторной генерации кода.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace ProjectAirline.Properties {
|
||||||
|
using System;
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Класс ресурса со строгой типизацией для поиска локализованных строк и т.д.
|
||||||
|
/// </summary>
|
||||||
|
// Этот класс создан автоматически классом StronglyTypedResourceBuilder
|
||||||
|
// с помощью такого средства, как ResGen или Visual Studio.
|
||||||
|
// Чтобы добавить или удалить член, измените файл .ResX и снова запустите ResGen
|
||||||
|
// с параметром /str или перестройте свой проект VS.
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
internal class Resources {
|
||||||
|
|
||||||
|
private static global::System.Resources.ResourceManager resourceMan;
|
||||||
|
|
||||||
|
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||||
|
|
||||||
|
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||||
|
internal Resources() {
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Возвращает кэшированный экземпляр ResourceManager, использованный этим классом.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||||
|
get {
|
||||||
|
if (object.ReferenceEquals(resourceMan, null)) {
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ProjectAirline.Properties.Resources", typeof(Resources).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Перезаписывает свойство CurrentUICulture текущего потока для всех
|
||||||
|
/// обращений к ресурсу с помощью этого класса ресурса со строгой типизацией.
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
internal static global::System.Globalization.CultureInfo Culture {
|
||||||
|
get {
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Поиск локализованного ресурса типа System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap plus {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("plus", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Поиск локализованного ресурса типа System.Drawing.Bitmap.
|
||||||
|
/// </summary>
|
||||||
|
internal static System.Drawing.Bitmap samolet {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("samolet", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
127
ProjectAirline/Properties/Resources.resx
Normal file
127
ProjectAirline/Properties/Resources.resx
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
|
<data name="samolet" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\samolet.jpeg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="plus" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\plus.jpeg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
18
ProjectAirline/Repositories/IAirplaneRepository.cs
Normal file
18
ProjectAirline/Repositories/IAirplaneRepository.cs
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories;
|
||||||
|
|
||||||
|
public interface IAirplaneRepository
|
||||||
|
{
|
||||||
|
IEnumerable<Airplane> ReadAirplanes();
|
||||||
|
Airplane ReadAirplaneById(int id);
|
||||||
|
void CreateAirplane(Airplane airplane);
|
||||||
|
void UpdateAirplane(Airplane airplane);
|
||||||
|
void DeleteAirplane(int id);
|
||||||
|
|
||||||
|
}
|
11
ProjectAirline/Repositories/IEmployeeFlightRepository.cs
Normal file
11
ProjectAirline/Repositories/IEmployeeFlightRepository.cs
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories;
|
||||||
|
|
||||||
|
public interface IEmployeeFlightRepository
|
||||||
|
{
|
||||||
|
IEnumerable<EmployeeFlight> ReadEmployeeFlights();
|
||||||
|
EmployeeFlight ReadEmployeeFlightById(int id);
|
||||||
|
void CreateEmployeeFlight(EmployeeFlight employeeFlight);
|
||||||
|
}
|
13
ProjectAirline/Repositories/IEmployeeRepository.cs
Normal file
13
ProjectAirline/Repositories/IEmployeeRepository.cs
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories;
|
||||||
|
|
||||||
|
public interface IEmployeeRepository
|
||||||
|
{
|
||||||
|
IEnumerable<Employee> ReadEmployees();
|
||||||
|
Employee ReadEmployeeById(int id);
|
||||||
|
void CreateEmployee(Employee employee);
|
||||||
|
void UpdateEmployee(Employee employee);
|
||||||
|
void DeleteEmployee(int id);
|
||||||
|
}
|
13
ProjectAirline/Repositories/IFlightRepository.cs
Normal file
13
ProjectAirline/Repositories/IFlightRepository.cs
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories;
|
||||||
|
|
||||||
|
public interface IFlightRepository
|
||||||
|
{
|
||||||
|
IEnumerable<Flight> ReadFlights(DateTime? dateForm = null, DateTime? dateTo = null, int? flightId = null, int? airplaneId = null);
|
||||||
|
Flight ReadFlightById(int flightId);
|
||||||
|
void CreateFlight(Flight flight);
|
||||||
|
void DeleteFlight(int id);
|
||||||
|
}
|
18
ProjectAirline/Repositories/IPassengerRepository.cs
Normal file
18
ProjectAirline/Repositories/IPassengerRepository.cs
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories;
|
||||||
|
|
||||||
|
public interface IPassengerRepository
|
||||||
|
{
|
||||||
|
IEnumerable<Passenger> ReadPassengers();
|
||||||
|
Passenger ReadPassengerById(int id);
|
||||||
|
void CreatePassenger(Passenger passenger);
|
||||||
|
void UpdatePassenger(Passenger passenger);
|
||||||
|
void DeletePassenger(int id);
|
||||||
|
|
||||||
|
}
|
16
ProjectAirline/Repositories/ITicketRepository.cs
Normal file
16
ProjectAirline/Repositories/ITicketRepository.cs
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories;
|
||||||
|
|
||||||
|
public interface ITicketRepository
|
||||||
|
{
|
||||||
|
IEnumerable<Ticket> ReadTickets();
|
||||||
|
Ticket ReadTicketById(int id);
|
||||||
|
void CreateTicket(Ticket ticket);
|
||||||
|
void UpdateTicket(Ticket ticket);
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories.Implementations;
|
||||||
|
|
||||||
|
public class AirplaneRepository : IAirplaneRepository
|
||||||
|
{
|
||||||
|
public void CreateAirplane(Airplane airplane)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DeleteAirplane(int id)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public Airplane ReadAirplaneById(int id)
|
||||||
|
{
|
||||||
|
return Airplane.CreateEntity(0, string.Empty, string.Empty, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerable<Airplane> ReadAirplanes()
|
||||||
|
{
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UpdateAirplane(Airplane airplane)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,24 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories.Implementations;
|
||||||
|
|
||||||
|
public class EmployeeFlightRepository : IEmployeeFlightRepository
|
||||||
|
{
|
||||||
|
public void CreateEmployeeFlight(EmployeeFlight employeeFlight)
|
||||||
|
{
|
||||||
|
// Реализация создания связи сотрудник-рейс
|
||||||
|
}
|
||||||
|
|
||||||
|
public EmployeeFlight ReadEmployeeFlightById(int id)
|
||||||
|
{
|
||||||
|
// Реализация чтения связи сотрудник-рейс по ID
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerable<EmployeeFlight> ReadEmployeeFlights()
|
||||||
|
{
|
||||||
|
// Реализация чтения всех связей сотрудник-рейс
|
||||||
|
return new List<EmployeeFlight>();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using ProjectAirline.Entities.Enums;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories.Implementations;
|
||||||
|
|
||||||
|
public class EmployeeRepository : IEmployeeRepository
|
||||||
|
{
|
||||||
|
public void CreateEmployee(Employee employee)
|
||||||
|
{
|
||||||
|
// Реализация создания сотрудника
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DeleteEmployee(int id)
|
||||||
|
{
|
||||||
|
// Реализация удаления сотрудника
|
||||||
|
}
|
||||||
|
|
||||||
|
public Employee ReadEmployeeById(int id)
|
||||||
|
{
|
||||||
|
// Реализация чтения сотрудника по ID
|
||||||
|
return Employee.CreateEntity(0, string.Empty, string.Empty, string.Empty, EmployeePost.None);
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerable<Employee> ReadEmployees()
|
||||||
|
{
|
||||||
|
// Реализация чтения всех сотрудников
|
||||||
|
return new List<Employee>();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UpdateEmployee(Employee employee)
|
||||||
|
{
|
||||||
|
// Реализация обновления сотрудника
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories.Implementations;
|
||||||
|
|
||||||
|
public class FlightRepository : IFlightRepository
|
||||||
|
{
|
||||||
|
public void CreateFlight(Flight flight)
|
||||||
|
{
|
||||||
|
// Реализация создания рейса
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DeleteFlight(int id)
|
||||||
|
{
|
||||||
|
// Реализация удаления рейса
|
||||||
|
}
|
||||||
|
|
||||||
|
public Flight ReadFlightById(int flightId)
|
||||||
|
{
|
||||||
|
// Реализация чтения рейса по ID
|
||||||
|
return Flight.CreateOperation(flightId, 0, string.Empty, string.Empty, 0, new List<EmployeeFlight>());
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerable<Flight> ReadFlights(DateTime? dateForm = null, DateTime? dateTo = null, int? flightId = null, int? airplaneId = null)
|
||||||
|
{
|
||||||
|
// Реализация чтения рейсов с фильтрацией
|
||||||
|
return new List<Flight>();
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,33 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories.Implementations;
|
||||||
|
|
||||||
|
public class PassengerRepository : IPassengerRepository
|
||||||
|
{
|
||||||
|
public void CreatePassenger(Passenger passenger)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DeletePassenger(int id)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public Passenger ReadPassengerById(int id)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerable<Passenger> ReadPassengers()
|
||||||
|
{
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UpdatePassenger(Passenger passenger)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
using ProjectAirline.Entities;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace ProjectAirline.Repositories.Implementations;
|
||||||
|
|
||||||
|
public class TicketRepository : ITicketRepository
|
||||||
|
{
|
||||||
|
public void CreateTicket(Ticket ticket)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public Ticket ReadTicketById(int id)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public IEnumerable<Ticket> ReadTickets()
|
||||||
|
{
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
public void UpdateTicket(Ticket ticket)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
BIN
ProjectAirline/Resources/plus.jpeg
Normal file
BIN
ProjectAirline/Resources/plus.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.3 KiB |
BIN
ProjectAirline/Resources/samolet.jpeg
Normal file
BIN
ProjectAirline/Resources/samolet.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.1 KiB |
Loading…
x
Reference in New Issue
Block a user