contracts ready
This commit is contained in:
parent
31bf053c6d
commit
b4005174f2
@ -7,6 +7,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarCenter", "CarCenter\CarC
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarCenterDataModels", "CarCenterDataModels\CarCenterDataModels.csproj", "{58AA6C37-69D9-4779-8A1C-CE68D29A7BA4}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarCenterContracts", "CarCenterContracts\CarCenterContracts.csproj", "{DA8738DD-3CB5-46D7-AF56-B7ABBFD6EFDC}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@ -21,6 +23,10 @@ Global
|
||||
{58AA6C37-69D9-4779-8A1C-CE68D29A7BA4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{58AA6C37-69D9-4779-8A1C-CE68D29A7BA4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{58AA6C37-69D9-4779-8A1C-CE68D29A7BA4}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{DA8738DD-3CB5-46D7-AF56-B7ABBFD6EFDC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DA8738DD-3CB5-46D7-AF56-B7ABBFD6EFDC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DA8738DD-3CB5-46D7-AF56-B7ABBFD6EFDC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{DA8738DD-3CB5-46D7-AF56-B7ABBFD6EFDC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -0,0 +1,19 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BindingModels
|
||||
{
|
||||
public class AdministratorBindingModel : IAdministratorModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string AdministratorFIO { get; set; } = string.Empty;
|
||||
public string AdministratorLogin { get; set; } = string.Empty;
|
||||
public string AdministratorPassword { get; set; } = string.Empty;
|
||||
public string AdministratorEmail { get; set; } = string.Empty;
|
||||
public string AdministratorNumber { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BindingModels
|
||||
{
|
||||
public class CarSalesBindingModel : ICarSalesModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string CarBrand{ get; set; } = string.Empty;
|
||||
public string CarModel { get; set; } = string.Empty;
|
||||
public decimal CarCost { get; set; }
|
||||
public int AdministratorId { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BindingModels
|
||||
{
|
||||
public class CompletionsBindingModel : IСompletionsModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string СompletionName { get; set; } = string.Empty;
|
||||
public string СompletionFeatures { get; set; } = string.Empty;
|
||||
public decimal СompletionPrice { get; set; }
|
||||
public int AdministratorId { get; set; }
|
||||
public Dictionary<int, ICarSalesModel> СompletionCars { get; set; } = new();
|
||||
}
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BindingModels
|
||||
{
|
||||
public class EmployeeBindingModel : IEmployeeModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
public string EmployeeFIO { get; set; } = string.Empty;
|
||||
|
||||
public string EmployeePost { get; set; } = string.Empty;
|
||||
|
||||
public string EmployeeSalary { get; set; } = string.Empty;
|
||||
|
||||
public int ManagerId { get; set; }
|
||||
|
||||
public Dictionary<int, ISaleModel> EmployeeSales { get; set; } = new();
|
||||
}
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BindingModels
|
||||
{
|
||||
public class InspectionBindingModel : IInspectionModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string InspectionName { get; set; } = string.Empty;
|
||||
public decimal InspectionCost { get; set; }
|
||||
public DateTime? InspectionDate { get; set; }
|
||||
public int AdministratorId { get; set; }
|
||||
public int EmployeeId { get; set; }
|
||||
public Dictionary<int, ICarSalesModel> InspectionCars { get; set; } = new();
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BindingModels
|
||||
{
|
||||
public class ManagerBindingModel : IManagerModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string ManagerFIO { get; set; } = string.Empty;
|
||||
public string ManagerLogin { get; set; } = string.Empty;
|
||||
public string ManagerPassword { get; set; } = string.Empty;
|
||||
public string ManagerEmail { get; set; } = string.Empty;
|
||||
public string ManagerNumber { get; set; } = string.Empty;
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BindingModels
|
||||
{
|
||||
public class PreSaleWorkBindingModel : IPreSaleWorkModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string PreSaleWorkType { get; set; } = string.Empty;
|
||||
public decimal PreSaleWorkPrice { get; set; }
|
||||
public DateTime? PreSaleWorkDate { get; set; }
|
||||
public int ManagerId { get; set; }
|
||||
public int CompletionsId { get; set; }
|
||||
public Dictionary<int, ISaleModel> PreSaleWorkSales { get; set; } = new();
|
||||
}
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BindingModels
|
||||
{
|
||||
public class SaleBindingModel : ISaleModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string SaleName { get; set; } = string.Empty;
|
||||
public decimal SalePrice { get; set; }
|
||||
public DateTime? SaleDate { get; set; } = DateTime.Now;
|
||||
public int ManagerId { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IAdministratorLogic
|
||||
{
|
||||
List<AdministratorViewModel>? ReadList(AdministratorSearchModel? model);
|
||||
AdministratorViewModel? ReadElement(AdministratorSearchModel model);
|
||||
bool Create(AdministratorBindingModel model);
|
||||
bool Update(AdministratorBindingModel model);
|
||||
bool Delete(AdministratorBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface ICarLogic
|
||||
{
|
||||
List<CarViewModel>? ReadList(CarSearchModel? model);
|
||||
CarViewModel? ReadElement(CarSearchModel model);
|
||||
bool Create(CarSalesBindingModel model);
|
||||
bool Update(CarSalesBindingModel model);
|
||||
bool Delete(CarSalesBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IEmployeeLogic
|
||||
{
|
||||
List<EmployeeViewModel>? ReadList(EmployeeSearchModel? model);
|
||||
EmployeeViewModel? ReadElement(EmployeeSearchModel model);
|
||||
bool AddSaleToEmployee(EmployeeSearchModel model, ISaleModel Sale);
|
||||
bool Create(EmployeeBindingModel model);
|
||||
bool Update(EmployeeBindingModel model);
|
||||
bool Delete(EmployeeBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using CarCenterDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IEquipmentLogic
|
||||
{
|
||||
List<EquipmentViewModel>? ReadList(EquipmentSearchModel? model);
|
||||
EquipmentViewModel? ReadElement(EquipmentSearchModel model);
|
||||
bool Create(CompletionsBindingModel model);
|
||||
bool Update(CompletionsBindingModel model);
|
||||
bool Delete(CompletionsBindingModel model);
|
||||
bool AddCarToEquipment(EquipmentSearchModel model, ICarModel car);
|
||||
}
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IInspectionLogic
|
||||
{
|
||||
List<InspectionViewModel>? ReadList(InspectionSearchModel? model);
|
||||
InspectionViewModel? ReadElement(InspectionSearchModel model);
|
||||
bool Create(InspectionBindingModel model);
|
||||
bool Update(InspectionBindingModel model);
|
||||
bool Delete(InspectionBindingModel model);
|
||||
bool AddCarToInspection(InspectionSearchModel model, ICarModel car);
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
|
||||
namespace CarCenterContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IManagerLogic
|
||||
{
|
||||
List<ManagerViewModel>? ReadList(ManagerSearchModel? model);
|
||||
ManagerViewModel? ReadElement(ManagerSearchModel model);
|
||||
bool Create(ManagerBindingModel model);
|
||||
bool Update(ManagerBindingModel model);
|
||||
bool Delete(ManagerBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using CarCenterDataModels.Models;
|
||||
|
||||
namespace CarCenterContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IPreSaleWorkLogic
|
||||
{
|
||||
List<PreSaleWorkViewModel>? ReadList(PreSaleWorkSearchModel? model);
|
||||
PreSaleWorkViewModel? ReadElement(PreSaleWorkSearchModel model);
|
||||
bool AddSaleToPreSaleWork(PreSaleWorkSearchModel model, ISaleModel Sale);
|
||||
bool Create(PreSaleWorkBindingModel model);
|
||||
bool Update(PreSaleWorkBindingModel model);
|
||||
bool Delete(PreSaleWorkBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
|
||||
namespace CarCenterContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface ISaleLogic
|
||||
{
|
||||
List<SaleViewModel>? ReadList(SaleSearchModel? model);
|
||||
SaleViewModel? ReadElement(SaleSearchModel model);
|
||||
bool Create(SaleBindingModel model);
|
||||
bool Update(SaleBindingModel model);
|
||||
bool Delete(SaleBindingModel model);
|
||||
}
|
||||
}
|
13
CarCenter/CarCenterContracts/CarCenterContracts.csproj
Normal file
13
CarCenter/CarCenterContracts/CarCenterContracts.csproj
Normal file
@ -0,0 +1,13 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\CarCenterDataModels\CarCenterDataModels.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.SearchModels
|
||||
{
|
||||
public class AdministratorSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? AdministratorFIO { get; set; }
|
||||
public string? AdministratorLogin { get; set; }
|
||||
public string? AdministratorEmail { get; set; }
|
||||
public string? AdministratorPassword { get; set; }
|
||||
}
|
||||
}
|
16
CarCenter/CarCenterContracts/SearchModels/CarSearchModel.cs
Normal file
16
CarCenter/CarCenterContracts/SearchModels/CarSearchModel.cs
Normal file
@ -0,0 +1,16 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.SearchModels
|
||||
{
|
||||
public class CarSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? BrandCar { get; set; }
|
||||
public string? Model { get; set; }
|
||||
public int? AdministratorId { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
namespace CarCenterContracts.SearchModels
|
||||
{
|
||||
public class EmployeeSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? EmployeeFIO { get; set; }
|
||||
public string? Specialization { get; set; }
|
||||
public int? ManagerId { get; set; }
|
||||
public DateTime? DateFrom { get; set; }
|
||||
public DateTime? DateTo { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.SearchModels
|
||||
{
|
||||
public class EquipmentSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? EquipmentName { get; set; }
|
||||
public int? AdministratorId { get; set; }
|
||||
public int? PreSaleWorkId { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.SearchModels
|
||||
{
|
||||
public class InspectionSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? InspectionName { get; set; }
|
||||
public DateTime? InspectionDate { get; set; }
|
||||
public int? AdministratorId { get; set; }
|
||||
public int? EmployeeId { get; set; }
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
namespace CarCenterContracts.SearchModels
|
||||
{
|
||||
public class ManagerSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? ManagerFIO { get; set; }
|
||||
public string? ManagerLogin { get; set; }
|
||||
public string? ManagerEmail { get; set; }
|
||||
public string? ManagerPassword { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
namespace CarCenterContracts.SearchModels
|
||||
{
|
||||
public class PreSaleWorkSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? PreSaleWorkType { get; set; }
|
||||
public int? ManagerId { get; set; }
|
||||
public DateTime? DateFrom { get; set; }
|
||||
public DateTime? DateTo { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
namespace CarCenterContracts.SearchModels
|
||||
{
|
||||
public class SaleSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public DateTime? SaleDate { get; set; }
|
||||
public int? ManagerId { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.StoragesContracts
|
||||
{
|
||||
public interface IAdministratorStorage
|
||||
{
|
||||
List<AdministratorViewModel> GetFullList();
|
||||
|
||||
List<AdministratorViewModel> GetFilteredList(AdministratorSearchModel model);
|
||||
|
||||
AdministratorViewModel? GetElement(AdministratorSearchModel model);
|
||||
|
||||
AdministratorViewModel? Insert(AdministratorBindingModel model);
|
||||
|
||||
AdministratorViewModel? Update(AdministratorBindingModel model);
|
||||
|
||||
AdministratorViewModel? Delete(AdministratorBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.StoragesContracts
|
||||
{
|
||||
public interface ICarStorage
|
||||
{
|
||||
List<CarViewModel> GetFullList();
|
||||
|
||||
List<CarViewModel> GetFilteredList(CarSearchModel model);
|
||||
|
||||
CarViewModel? GetElement(CarSearchModel model);
|
||||
|
||||
CarViewModel? Insert(CarSalesBindingModel model);
|
||||
|
||||
CarViewModel? Update(CarSalesBindingModel model);
|
||||
|
||||
CarViewModel? Delete(CarSalesBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
|
||||
namespace CarCenterContracts.StoragesContracts
|
||||
{
|
||||
public interface IEmployeeStorage
|
||||
{
|
||||
List<EmployeeViewModel> GetFullList();
|
||||
|
||||
List<EmployeeViewModel> GetFilteredList(EmployeeSearchModel model);
|
||||
|
||||
EmployeeViewModel? GetElement(EmployeeSearchModel model);
|
||||
|
||||
EmployeeViewModel? Insert(EmployeeBindingModel model);
|
||||
|
||||
EmployeeViewModel? Update(EmployeeBindingModel model);
|
||||
|
||||
EmployeeViewModel? Delete(EmployeeBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.StoragesContracts
|
||||
{
|
||||
public interface IEquipmentStorage
|
||||
{
|
||||
List<EquipmentViewModel> GetFullList();
|
||||
|
||||
List<EquipmentViewModel> GetFilteredList(EquipmentSearchModel model);
|
||||
|
||||
EquipmentViewModel? GetElement(EquipmentSearchModel model);
|
||||
|
||||
EquipmentViewModel? Insert(CompletionsBindingModel model);
|
||||
|
||||
EquipmentViewModel? Update(CompletionsBindingModel model);
|
||||
|
||||
EquipmentViewModel? Delete(CompletionsBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.StoragesContracts
|
||||
{
|
||||
public interface IInspectionStorage
|
||||
{
|
||||
List<InspectionViewModel> GetFullList();
|
||||
|
||||
List<InspectionViewModel> GetFilteredList(InspectionSearchModel model);
|
||||
|
||||
InspectionViewModel? GetElement(InspectionSearchModel model);
|
||||
|
||||
InspectionViewModel? Insert(InspectionBindingModel model);
|
||||
|
||||
InspectionViewModel? Update(InspectionBindingModel model);
|
||||
|
||||
InspectionViewModel? Delete(InspectionBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
|
||||
namespace CarCenterContracts.StoragesContracts
|
||||
{
|
||||
public interface IManagerStorage
|
||||
{
|
||||
List<ManagerViewModel> GetFullList();
|
||||
|
||||
List<ManagerViewModel> GetFilteredList(ManagerSearchModel model);
|
||||
|
||||
ManagerViewModel? GetElement(ManagerSearchModel model);
|
||||
|
||||
ManagerViewModel? Insert(ManagerBindingModel model);
|
||||
|
||||
ManagerViewModel? Update(ManagerBindingModel model);
|
||||
|
||||
ManagerViewModel? Delete(ManagerBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
|
||||
namespace CarCenterContracts.StoragesContracts
|
||||
{
|
||||
public interface IPreSaleWorkStorage
|
||||
{
|
||||
List<PreSaleWorkViewModel> GetFullList();
|
||||
|
||||
List<PreSaleWorkViewModel> GetFilteredList(PreSaleWorkSearchModel model);
|
||||
|
||||
PreSaleWorkViewModel? GetElement(PreSaleWorkSearchModel model);
|
||||
|
||||
PreSaleWorkViewModel? Insert(PreSaleWorkBindingModel model);
|
||||
|
||||
PreSaleWorkViewModel? Update(PreSaleWorkBindingModel model);
|
||||
|
||||
PreSaleWorkViewModel? Delete(PreSaleWorkBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
using CarCenterContracts.BindingModels;
|
||||
using CarCenterContracts.SearchModels;
|
||||
using CarCenterContracts.ViewModels;
|
||||
|
||||
namespace CarCenterContracts.StoragesContracts
|
||||
{
|
||||
public interface ISaleStorage
|
||||
{
|
||||
List<SaleViewModel> GetFullList();
|
||||
|
||||
List<SaleViewModel> GetFilteredList(SaleSearchModel model);
|
||||
|
||||
SaleViewModel? GetElement(SaleSearchModel model);
|
||||
|
||||
SaleViewModel? Insert(SaleBindingModel model);
|
||||
|
||||
SaleViewModel? Update(SaleBindingModel model);
|
||||
|
||||
SaleViewModel? Delete(SaleBindingModel model);
|
||||
}
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.ViewModels
|
||||
{
|
||||
public class AdministratorViewModel : IAdministratorModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
[DisplayName("ФИО администратора")]
|
||||
public string AdministratorFIO { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Телефон администратора")]
|
||||
public string AdministratorNumber { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Логин администратора")]
|
||||
public string AdministratorLogin { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Mail администратора")]
|
||||
public string AdministratorEmail { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Пароль администратора")]
|
||||
public string AdministratorPassword { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
22
CarCenter/CarCenterContracts/ViewModels/CarViewModel.cs
Normal file
22
CarCenter/CarCenterContracts/ViewModels/CarViewModel.cs
Normal file
@ -0,0 +1,22 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.ViewModels
|
||||
{
|
||||
public class CarViewModel : ICarModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
[DisplayName("Бренд машины")]
|
||||
public string BrandCar { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Модель машины")]
|
||||
public string Model { get; set; } = string.Empty;
|
||||
public int AdministratorId { get; set; }
|
||||
}
|
||||
}
|
29
CarCenter/CarCenterContracts/ViewModels/EmployeeViewModel.cs
Normal file
29
CarCenter/CarCenterContracts/ViewModels/EmployeeViewModel.cs
Normal file
@ -0,0 +1,29 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System.ComponentModel;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace CarCenterContracts.ViewModels
|
||||
{
|
||||
public class EmployeeViewModel : IEmployeeModel
|
||||
{
|
||||
[DisplayName("ФИО Сотрудника")]
|
||||
public string EmployeeFIO { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Специализация")]
|
||||
public string Specialization { get; set; } = string.Empty;
|
||||
|
||||
public int ManagerId { get; set; }
|
||||
|
||||
public int Id { get; set; }
|
||||
public Dictionary<int, ISaleModel> EmployeeSales { get; set; } = new();
|
||||
public Dictionary<int, IInspectionModel> EmployeeInspection { get; set; }
|
||||
|
||||
public EmployeeViewModel() { }
|
||||
|
||||
[JsonConstructor]
|
||||
public EmployeeViewModel(Dictionary<int, SaleViewModel> EmployeeSales)
|
||||
{
|
||||
this.EmployeeSales = EmployeeSales.ToDictionary(x => x.Key, x => x.Value as ISaleModel);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.ViewModels
|
||||
{
|
||||
public class EquipmentViewModel : IEquipmentModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
[DisplayName("Название комплектации")]
|
||||
public string EquipmentName { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Цена комплектации")]
|
||||
public double EquipmentPrice { get; set; }
|
||||
public int AdministratorId { get; set; }
|
||||
public int? PreSaleWorkId { get; set; }
|
||||
public Dictionary<int, ICarModel> EquipmentCars { get; set; } = new();
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CarCenterContracts.ViewModels
|
||||
{
|
||||
public class InspectionViewModel : IInspectionModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
[DisplayName("Название осмотра")]
|
||||
public string InspectionName { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Дата осмотра")]
|
||||
public DateTime? InspectionDate { get; set; }
|
||||
public int AdministratorId { get; set; }
|
||||
public int? EmployeeId { get; set; }
|
||||
|
||||
public string EmployeeName { get; set; } = string.Empty;
|
||||
public Dictionary<int, ICarModel> InspectionCars { get; set; } = new();
|
||||
}
|
||||
}
|
25
CarCenter/CarCenterContracts/ViewModels/ManagerViewModel.cs
Normal file
25
CarCenter/CarCenterContracts/ViewModels/ManagerViewModel.cs
Normal file
@ -0,0 +1,25 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace CarCenterContracts.ViewModels
|
||||
{
|
||||
public class ManagerViewModel : IManagerModel
|
||||
{
|
||||
[DisplayName("ФИО менеджера")]
|
||||
public string ManagerFIO { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Номер телефона менеджера")]
|
||||
public string ManagerNumber { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Логин менеджера")]
|
||||
public string ManagerLogin { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Эл. почта менеджера")]
|
||||
public string ManagerEmail { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Пароль менеджера")]
|
||||
public string ManagerPassword { get; set; } = string.Empty;
|
||||
|
||||
public int Id { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System.ComponentModel;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace CarCenterContracts.ViewModels
|
||||
{
|
||||
public class PreSaleWorkViewModel : IPreSaleWorkModel
|
||||
{
|
||||
[DisplayName("Тип предпродажной работы")]
|
||||
public string PreSaleWorkType { get; set; } = string.Empty;
|
||||
|
||||
[DisplayName("Стоимость предпродажной работы")]
|
||||
public double PreSaleWorkPrice { get; set; }
|
||||
|
||||
public int ManagerId { get; set; }
|
||||
|
||||
public int Id { get; set; }
|
||||
|
||||
public Dictionary<int, ISaleModel> PreSaleWorkSales { get; set; } = new();
|
||||
public Dictionary<int, ICarModel> PreSaleWorkCars { get; set; } = new();
|
||||
|
||||
public PreSaleWorkViewModel() { }
|
||||
|
||||
[JsonConstructor]
|
||||
public PreSaleWorkViewModel(Dictionary<int, SaleViewModel> PreSaleWorkSales, Dictionary<int, CarViewModel> PreSaleWorkCars)
|
||||
{
|
||||
this.PreSaleWorkSales = PreSaleWorkSales.ToDictionary(x => x.Key, x => x.Value as ISaleModel);
|
||||
this.PreSaleWorkCars = PreSaleWorkCars.ToDictionary(x => x.Key, x => x.Value as ICarModel);
|
||||
}
|
||||
}
|
||||
}
|
18
CarCenter/CarCenterContracts/ViewModels/SaleViewModel.cs
Normal file
18
CarCenter/CarCenterContracts/ViewModels/SaleViewModel.cs
Normal file
@ -0,0 +1,18 @@
|
||||
using CarCenterDataModels.Models;
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace CarCenterContracts.ViewModels
|
||||
{
|
||||
public class SaleViewModel : ISaleModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
[DisplayName("Дата продажи")]
|
||||
public DateTime? SaleDate { get; set; }
|
||||
|
||||
[DisplayName("Цена продажи")]
|
||||
public string SalePrice { get; set; } = string.Empty;
|
||||
|
||||
public int ManagerId { get; set; }
|
||||
}
|
||||
}
|
@ -3,7 +3,7 @@
|
||||
public interface IPreSaleWorkModel : IId
|
||||
{
|
||||
string PreSaleWorkType { get; }
|
||||
double PreSaleWorkPrice { get; }
|
||||
decimal PreSaleWorkPrice { get; }
|
||||
DateTime? PreSaleWorkDate { get; }
|
||||
int ManagerId { get; }
|
||||
int CompletionsId { get; }
|
||||
|
@ -10,7 +10,7 @@ namespace CarCenterDataModels.Models
|
||||
{
|
||||
string СompletionName { get; }
|
||||
string СompletionFeatures { get; }
|
||||
double СompletionPrice { get; }
|
||||
decimal СompletionPrice { get; }
|
||||
int AdministratorId { get; }
|
||||
public Dictionary<int, ICarSalesModel> СompletionCars { get; }
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user