From fb5a98c8ede664b8ab523083dc0a2d59815bf606 Mon Sep 17 00:00:00 2001 From: Oleg Shabunov Date: Tue, 6 Feb 2024 23:26:29 +0400 Subject: [PATCH] DataModels --- AutoWorkshop.sln | 8 +++++++- .../AutoWorkshopDataModels.csproj | 9 +++++++++ AutoWorkshopDataModels/Enums/OrderStatus.cs | 11 +++++++++++ AutoWorkshopDataModels/IComponentModel.cs | 8 ++++++++ AutoWorkshopDataModels/IId.cs | 7 +++++++ AutoWorkshopDataModels/IOrderModel.cs | 14 ++++++++++++++ AutoWorkshopDataModels/IProductModel.cs | 9 +++++++++ 7 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 AutoWorkshopDataModels/AutoWorkshopDataModels.csproj create mode 100644 AutoWorkshopDataModels/Enums/OrderStatus.cs create mode 100644 AutoWorkshopDataModels/IComponentModel.cs create mode 100644 AutoWorkshopDataModels/IId.cs create mode 100644 AutoWorkshopDataModels/IOrderModel.cs create mode 100644 AutoWorkshopDataModels/IProductModel.cs diff --git a/AutoWorkshop.sln b/AutoWorkshop.sln index 830eee7..e719cde 100644 --- a/AutoWorkshop.sln +++ b/AutoWorkshop.sln @@ -3,7 +3,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.8.34511.84 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AutoWorkshop", "AutoWorkshop\AutoWorkshop.csproj", "{54087BAE-4821-4266-9968-190F9F4355C8}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AutoWorkshop", "AutoWorkshop\AutoWorkshop.csproj", "{54087BAE-4821-4266-9968-190F9F4355C8}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AutoWorkshopDataModels", "AutoWorkshopDataModels\AutoWorkshopDataModels.csproj", "{D52094D2-A57E-4BAD-B049-3B64065463DA}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -15,6 +17,10 @@ Global {54087BAE-4821-4266-9968-190F9F4355C8}.Debug|Any CPU.Build.0 = Debug|Any CPU {54087BAE-4821-4266-9968-190F9F4355C8}.Release|Any CPU.ActiveCfg = Release|Any CPU {54087BAE-4821-4266-9968-190F9F4355C8}.Release|Any CPU.Build.0 = Release|Any CPU + {D52094D2-A57E-4BAD-B049-3B64065463DA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D52094D2-A57E-4BAD-B049-3B64065463DA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D52094D2-A57E-4BAD-B049-3B64065463DA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D52094D2-A57E-4BAD-B049-3B64065463DA}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/AutoWorkshopDataModels/AutoWorkshopDataModels.csproj b/AutoWorkshopDataModels/AutoWorkshopDataModels.csproj new file mode 100644 index 0000000..132c02c --- /dev/null +++ b/AutoWorkshopDataModels/AutoWorkshopDataModels.csproj @@ -0,0 +1,9 @@ + + + + net6.0 + enable + enable + + + diff --git a/AutoWorkshopDataModels/Enums/OrderStatus.cs b/AutoWorkshopDataModels/Enums/OrderStatus.cs new file mode 100644 index 0000000..1d4fe31 --- /dev/null +++ b/AutoWorkshopDataModels/Enums/OrderStatus.cs @@ -0,0 +1,11 @@ +namespace AutoWorkshopDataModels.Enums +{ + public enum OrderStatus + { + Undefined = -1, + Accepted, + BeingProcessed, + Ready, + Issued, + } +} diff --git a/AutoWorkshopDataModels/IComponentModel.cs b/AutoWorkshopDataModels/IComponentModel.cs new file mode 100644 index 0000000..b5ae787 --- /dev/null +++ b/AutoWorkshopDataModels/IComponentModel.cs @@ -0,0 +1,8 @@ +namespace AutoWorkshopDataModels +{ + public interface IComponentModel : IId + { + string ComponentName { get; } + double Cost { get; } + } +} diff --git a/AutoWorkshopDataModels/IId.cs b/AutoWorkshopDataModels/IId.cs new file mode 100644 index 0000000..fea720b --- /dev/null +++ b/AutoWorkshopDataModels/IId.cs @@ -0,0 +1,7 @@ +namespace AutoWorkshopDataModels +{ + public interface IId + { + int Id { get; } + } +} diff --git a/AutoWorkshopDataModels/IOrderModel.cs b/AutoWorkshopDataModels/IOrderModel.cs new file mode 100644 index 0000000..000ed90 --- /dev/null +++ b/AutoWorkshopDataModels/IOrderModel.cs @@ -0,0 +1,14 @@ +using AutoWorkshopDataModels.Enums; + +namespace AutoWorkshopDataModels.Models +{ + public interface IOrderModel : IId + { + int ProductId { get; } + int Count { get; } + double Sum { get; } + OrderStatus Status { get; } + DateTime DateCreate { get; } + DateTime? DateImplement { get; } + } +} diff --git a/AutoWorkshopDataModels/IProductModel.cs b/AutoWorkshopDataModels/IProductModel.cs new file mode 100644 index 0000000..8e080bd --- /dev/null +++ b/AutoWorkshopDataModels/IProductModel.cs @@ -0,0 +1,9 @@ +namespace AutoWorkshopDataModels +{ + public interface IProductModel : IId + { + string ProductName { get; } + double Price { get; } + Dictionary ProductComponents { get; } + } +}