diff --git a/ZooView/Form1.Designer.cs b/ZooView/Form1.Designer.cs
deleted file mode 100644
index e31cef1..0000000
--- a/ZooView/Form1.Designer.cs
+++ /dev/null
@@ -1,39 +0,0 @@
-namespace ZooView
-{
- partial class Form1
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- 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
- }
-}
diff --git a/ZooView/Form1.cs b/ZooView/Form1.cs
deleted file mode 100644
index 8b4cc11..0000000
--- a/ZooView/Form1.cs
+++ /dev/null
@@ -1,10 +0,0 @@
-namespace ZooView
-{
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- }
-}
diff --git a/ZooView/Form1.resx b/ZooView/Form1.resx
deleted file mode 100644
index 1af7de1..0000000
--- a/ZooView/Form1.resx
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
\ No newline at end of file
diff --git a/ZooView/Program.cs b/ZooView/Program.cs
deleted file mode 100644
index ea0d50f..0000000
--- a/ZooView/Program.cs
+++ /dev/null
@@ -1,17 +0,0 @@
-namespace ZooView
-{
- internal static class Program
- {
- ///
- /// The main entry point for the application.
- ///
- [STAThread]
- static void Main()
- {
- // To customize application configuration such as set high DPI settings or default font,
- // see https://aka.ms/applicationconfiguration.
- ApplicationConfiguration.Initialize();
- Application.Run(new Form1());
- }
- }
-}
\ No newline at end of file
diff --git a/git/JurasicZoo/JurasicZoo.sln b/git/JurasicZoo/JurasicZoo.sln
index cdefe1f..7052a1d 100644
--- a/git/JurasicZoo/JurasicZoo.sln
+++ b/git/JurasicZoo/JurasicZoo.sln
@@ -3,7 +3,11 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.9.34714.143
MinimumVisualStudioVersion = 10.0.40219.1
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JurasicZoo", "JurasicZoo\JurasicZoo.csproj", "{BF7040DC-E64B-435B-9B06-43FF5F8C2590}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ZooView", "JurasicZoo\ZooView.csproj", "{BF7040DC-E64B-435B-9B06-43FF5F8C2590}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ZooContracts", "ZooContracts\ZooContracts.csproj", "{BABFF837-6FBA-4D7D-948F-27E17292A51A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ZooDataModels", "ZooDataModels\ZooDataModels.csproj", "{FBA80C4B-D1A0-42D4-A90B-123323E06314}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -15,6 +19,14 @@ Global
{BF7040DC-E64B-435B-9B06-43FF5F8C2590}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BF7040DC-E64B-435B-9B06-43FF5F8C2590}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BF7040DC-E64B-435B-9B06-43FF5F8C2590}.Release|Any CPU.Build.0 = Release|Any CPU
+ {BABFF837-6FBA-4D7D-948F-27E17292A51A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {BABFF837-6FBA-4D7D-948F-27E17292A51A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {BABFF837-6FBA-4D7D-948F-27E17292A51A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {BABFF837-6FBA-4D7D-948F-27E17292A51A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {FBA80C4B-D1A0-42D4-A90B-123323E06314}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {FBA80C4B-D1A0-42D4-A90B-123323E06314}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {FBA80C4B-D1A0-42D4-A90B-123323E06314}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {FBA80C4B-D1A0-42D4-A90B-123323E06314}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/git/JurasicZoo/JurasicZoo/JurasicZoo.csproj b/git/JurasicZoo/JurasicZoo/JurasicZoo.csproj
deleted file mode 100644
index b57c89e..0000000
--- a/git/JurasicZoo/JurasicZoo/JurasicZoo.csproj
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
- WinExe
- net6.0-windows
- enable
- true
- enable
-
-
-
\ No newline at end of file
diff --git a/ZooView/ZooView.csproj b/git/JurasicZoo/JurasicZoo/ZooView.csproj
similarity index 100%
rename from ZooView/ZooView.csproj
rename to git/JurasicZoo/JurasicZoo/ZooView.csproj
diff --git a/git/JurasicZoo/ZooContracts/BindingModels/EmployeeBindingModel.cs b/git/JurasicZoo/ZooContracts/BindingModels/EmployeeBindingModel.cs
new file mode 100644
index 0000000..6e3da21
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/BindingModels/EmployeeBindingModel.cs
@@ -0,0 +1,12 @@
+using ZooDataModels.Models;
+
+namespace ZooContracts.BindingModels
+{
+ public class EmployeeBindingModel : IEmployeeModel
+ {
+ public int Id { get; set; }
+ public string EmployeeFIO { get; set; }
+ public string Login { get; set; }
+ public string Password { get; set; }
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/BindingModels/PreserveBindingModel.cs b/git/JurasicZoo/ZooContracts/BindingModels/PreserveBindingModel.cs
new file mode 100644
index 0000000..46008c9
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/BindingModels/PreserveBindingModel.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using ZooDataModels.Models;
+
+namespace ZooContracts.BindingModels
+{
+ public class PreserveBindingModel : IPreserveModel
+ {
+ public int Id { get; set; }
+ public string PreserveName { get; set; }
+ public double PreservePrice { get; set; }
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/BusinessLogicsContracts/IEmployeeLogic.cs b/git/JurasicZoo/ZooContracts/BusinessLogicsContracts/IEmployeeLogic.cs
new file mode 100644
index 0000000..f1df093
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/BusinessLogicsContracts/IEmployeeLogic.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using ZooContracts.BindingModels;
+using ZooContracts.SearchModels;
+using ZooContracts.ViewModels;
+
+namespace ZooContracts.BuisnessLogicsContracts
+{
+ public interface IEmployeeLogic
+ {
+ List? ReadList(EmployeeSearchModel? model);
+ EmployeeViewModel? ReadElement(EmployeeSearchModel model);
+ bool Create(EmployeeBindingModel model);
+ bool Update(EmployeeBindingModel model);
+ bool Delete(EmployeeBindingModel model);
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/BusinessLogicsContracts/IPreserveLogic.cs b/git/JurasicZoo/ZooContracts/BusinessLogicsContracts/IPreserveLogic.cs
new file mode 100644
index 0000000..c275e6c
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/BusinessLogicsContracts/IPreserveLogic.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using ZooContracts.BindingModels;
+using ZooContracts.SearchModels;
+using ZooContracts.ViewModels;
+
+namespace ZooContracts.BuisnessLogicsContracts
+{
+ public interface IPreserveLogic
+ {
+ List? ReadList(PreserveSearchModel? model);
+ PreserveViewModel? ReadElement(PreserveSearchModel model);
+ bool Create(PreserveBindingModel model);
+ bool Update(PreserveBindingModel model);
+ bool Delete(PreserveBindingModel model);
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/SearchModels/EmployeeSearchModel.cs b/git/JurasicZoo/ZooContracts/SearchModels/EmployeeSearchModel.cs
new file mode 100644
index 0000000..47a0455
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/SearchModels/EmployeeSearchModel.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ZooContracts.SearchModels
+{
+ public class EmployeeSearchModel
+ {
+ public int? Id { get; set; }
+ public string? EmployeeFIO { get; set; }
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/SearchModels/PreserveSearchModel.cs b/git/JurasicZoo/ZooContracts/SearchModels/PreserveSearchModel.cs
new file mode 100644
index 0000000..d8a0355
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/SearchModels/PreserveSearchModel.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ZooContracts.SearchModels
+{
+ public class PreserveSearchModel
+ {
+ public int? Id { get; set; }
+ public string? PreserveName { get; set; }
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/StorageContracts/IEmployeeStorage.cs b/git/JurasicZoo/ZooContracts/StorageContracts/IEmployeeStorage.cs
new file mode 100644
index 0000000..7a4baf7
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/StorageContracts/IEmployeeStorage.cs
@@ -0,0 +1,21 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using ZooContracts.BindingModels;
+using ZooContracts.SearchModels;
+using ZooContracts.ViewModels;
+
+namespace ZooContracts.StorageContracts
+{
+ public interface IEmployeeStorage
+ {
+ List GetFullList();
+ List GetFilteredList(EmployeeSearchModel model);
+ EmployeeViewModel? GetElement(EmployeeSearchModel model);
+ EmployeeViewModel? Insert(EmployeeBindingModel model);
+ EmployeeViewModel? Update(EmployeeBindingModel model);
+ EmployeeViewModel? Delete(EmployeeBindingModel model);
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/StorageContracts/IPreserveStorage.cs b/git/JurasicZoo/ZooContracts/StorageContracts/IPreserveStorage.cs
new file mode 100644
index 0000000..640a988
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/StorageContracts/IPreserveStorage.cs
@@ -0,0 +1,21 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using ZooContracts.BindingModels;
+using ZooContracts.SearchModels;
+using ZooContracts.ViewModels;
+
+namespace ZooContracts.StorageContracts
+{
+ public interface IPreserveStorage
+ {
+ List GetFullList();
+ List GetFilteredList(PreserveSearchModel model);
+ PreserveViewModel? GetElement(PreserveSearchModel model);
+ PreserveViewModel? Insert(PreserveBindingModel model);
+ PreserveViewModel? Update(PreserveBindingModel model);
+ PreserveViewModel? Delete(PreserveBindingModel model);
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/ViewModels/EmployeeViewModel.cs b/git/JurasicZoo/ZooContracts/ViewModels/EmployeeViewModel.cs
new file mode 100644
index 0000000..02a5444
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/ViewModels/EmployeeViewModel.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using ZooDataModels.Models;
+
+namespace ZooContracts.ViewModels
+{
+ public class EmployeeViewModel:IEmployeeModel
+ {
+ public int Id { get; set; }
+ [DisplayName("ФИО сотрудника")]
+ public string EmployeeFIO { get; set; }
+ [DisplayName("Логин сотрудника")]
+ public string Login { get; set; }
+ [DisplayName("Пароль сотрудника")]
+ public string Password { get; set; }
+
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/ViewModels/PreserveViewModel.cs b/git/JurasicZoo/ZooContracts/ViewModels/PreserveViewModel.cs
new file mode 100644
index 0000000..80045ab
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/ViewModels/PreserveViewModel.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using ZooDataModels.Models;
+
+namespace ZooContracts.ViewModels
+{
+ public class PreserveViewModel : IPreserveModel
+ {
+ public int Id { get; set; }
+ [DisplayName("Название заповедника")]
+ public string PreserveName { get; set; }
+ [DisplayName("Стоимость посещения заповедника")]
+ public double PreservePrice { get; set; }
+ }
+}
diff --git a/git/JurasicZoo/ZooContracts/ZooContracts.csproj b/git/JurasicZoo/ZooContracts/ZooContracts.csproj
new file mode 100644
index 0000000..7ed3c00
--- /dev/null
+++ b/git/JurasicZoo/ZooContracts/ZooContracts.csproj
@@ -0,0 +1,13 @@
+
+
+
+ net6.0
+ enable
+ enable
+
+
+
+
+
+
+
diff --git a/git/JurasicZoo/ZooDataModels/IId.cs b/git/JurasicZoo/ZooDataModels/IId.cs
new file mode 100644
index 0000000..b8c5f2f
--- /dev/null
+++ b/git/JurasicZoo/ZooDataModels/IId.cs
@@ -0,0 +1,7 @@
+namespace ZooDataModels
+{
+ public interface IId
+ {
+ int Id { get; }
+ }
+}
diff --git a/git/JurasicZoo/ZooDataModels/Models/IEmployeeModel.cs b/git/JurasicZoo/ZooDataModels/Models/IEmployeeModel.cs
new file mode 100644
index 0000000..6fb1099
--- /dev/null
+++ b/git/JurasicZoo/ZooDataModels/Models/IEmployeeModel.cs
@@ -0,0 +1,15 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ZooDataModels.Models
+{
+ public interface IEmployeeModel : IId
+ {
+ string EmployeeFIO { get; }
+ string Login { get; }
+ string Password { get; }
+ }
+}
diff --git a/git/JurasicZoo/ZooDataModels/Models/IPreserveModel.cs b/git/JurasicZoo/ZooDataModels/Models/IPreserveModel.cs
new file mode 100644
index 0000000..2727697
--- /dev/null
+++ b/git/JurasicZoo/ZooDataModels/Models/IPreserveModel.cs
@@ -0,0 +1,15 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ZooDataModels.Models
+{
+ public interface IPreserveModel :IId
+ {
+ string PreserveName { get; }
+ double PreservePrice { get; }
+
+ }
+}
diff --git a/git/JurasicZoo/ZooDataModels/ZooDataModels.csproj b/git/JurasicZoo/ZooDataModels/ZooDataModels.csproj
new file mode 100644
index 0000000..132c02c
--- /dev/null
+++ b/git/JurasicZoo/ZooDataModels/ZooDataModels.csproj
@@ -0,0 +1,9 @@
+
+
+
+ net6.0
+ enable
+ enable
+
+
+