diff --git a/PersonnelDepartmentView/PersonnelDepartmentContracts/BindingModels/DealBindingModel.cs b/PersonnelDepartmentView/PersonnelDepartmentContracts/BindingModels/DealBindingModel.cs index ccc6687..e11b6c2 100644 --- a/PersonnelDepartmentView/PersonnelDepartmentContracts/BindingModels/DealBindingModel.cs +++ b/PersonnelDepartmentView/PersonnelDepartmentContracts/BindingModels/DealBindingModel.cs @@ -11,7 +11,7 @@ namespace PersonnelDepartmentContracts.BindingModels { public DateTime DateFrom { get; set; } - public DateTime DateTo { get; set; } + public DateTime? DateTo { get; set; } public int PositionId { get; set; } diff --git a/PersonnelDepartmentView/PersonnelDepartmentContracts/ViewModels/DealViewModel.cs b/PersonnelDepartmentView/PersonnelDepartmentContracts/ViewModels/DealViewModel.cs index d1ce476..c775558 100644 --- a/PersonnelDepartmentView/PersonnelDepartmentContracts/ViewModels/DealViewModel.cs +++ b/PersonnelDepartmentView/PersonnelDepartmentContracts/ViewModels/DealViewModel.cs @@ -13,7 +13,7 @@ namespace PersonnelDepartmentContracts.ViewModels [DisplayName("Дата с")] public DateTime DateFrom { get; set; } [DisplayName("Дата по")] - public DateTime DateTo { get; set; } + public DateTime? DateTo { get; set; } public int PositionId { get; set; } [DisplayName("Должность")] public string PositionName { get; set; } = string.Empty; diff --git a/PersonnelDepartmentView/PersonnelDepartmentDataModels/Models/IDealModel.cs b/PersonnelDepartmentView/PersonnelDepartmentDataModels/Models/IDealModel.cs index 9293d18..86ac98e 100644 --- a/PersonnelDepartmentView/PersonnelDepartmentDataModels/Models/IDealModel.cs +++ b/PersonnelDepartmentView/PersonnelDepartmentDataModels/Models/IDealModel.cs @@ -9,7 +9,7 @@ namespace PersonnelDepartmentDataModels.Models public interface IDealModel : IId { DateTime DateFrom { get; } - DateTime DateTo { get; } + DateTime? DateTo { get; } int PositionId { get; } int EmployeeId { get; } int DepartmentId { get; } diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/DealStorage.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/DealStorage.cs new file mode 100644 index 0000000..2c8814f --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/DealStorage.cs @@ -0,0 +1,112 @@ +using Microsoft.EntityFrameworkCore; +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.SearchModels; +using PersonnelDepartmentContracts.StoragesContracts; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDatabaseImplement.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Implements +{ + public class DealStorage : IDealStorage + { + public DealViewModel? Delete(DealBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Deals + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + context.Deals.Remove(element); + return element.GetViewModel; + } + + public DealViewModel? GetElement(DealSearchModel model) + { + if (!model.Id.HasValue) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + return context.Deals + .Include(x => x.Employee) + .Include(x => x.Department) + .Include(x => x.Type) + .Include(x => x.Employee) + .FirstOrDefault(x => (model.Id.HasValue && model.Id == x.Id) || + (model.DateFrom != null && x.DateFrom == model.DateFrom) || + (model.DateTo != null && x.DateTo == model.DateTo) || + (model.EmployeeId.HasValue && x.EmployeeId == model.EmployeeId) || + (model.DepartmentId.HasValue && x.DepartmentId == model.DepartmentId) || + (model.PositionId.HasValue && x.PositionId == model.PositionId) || + (model.TypeId.HasValue && x.TypeId == model.TypeId))?.GetViewModel; + } + + public List GetFilteredList(DealSearchModel model) + { + using var context = new PersonnelDepartmentDatabase(); + return context.Deals + .Include(x => x.Employee) + .Include(x => x.Department) + .Include(x => x.Type) + .Include(x => x.Employee) + .Where(x => (model.Id.HasValue && model.Id == x.Id) || + (model.DateFrom != null && x.DateFrom == model.DateFrom) || + (model.DateTo != null && x.DateTo == model.DateTo) || + (model.EmployeeId.HasValue && x.EmployeeId == model.EmployeeId) || + (model.DepartmentId.HasValue && x.DepartmentId == model.DepartmentId) || + (model.PositionId.HasValue && x.PositionId == model.PositionId) || + (model.TypeId.HasValue && x.TypeId == model.TypeId)) + .Select(x => x.GetViewModel) .ToList(); + } + + public List GetFullList() + { + using var context = new PersonnelDepartmentDatabase(); + return context.Deals + .Include(x => x.Department) + .Include(x => x.Position) + .Include(x => x.Employee) + .Include(x => x.Type) + .Select(x => x.GetViewModel) + .ToList(); + } + + public DealViewModel? Insert(DealBindingModel model) + { + var newElement = Deal.Create(model); + if (newElement == null) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + context.Deals.Add(newElement); + context.SaveChanges(); + return newElement.GetViewModel; + } + + public DealViewModel? Update(DealBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Deals + .Include(x => x.Department) + .Include(x => x.Employee) + .Include(x => x.Type) + .Include (x => x.Position) + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + element.Update(model); + context.SaveChanges(); + return element.GetViewModel; + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/DepartmentStorage.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/DepartmentStorage.cs new file mode 100644 index 0000000..c971ee8 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/DepartmentStorage.cs @@ -0,0 +1,88 @@ +using Microsoft.EntityFrameworkCore; +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.SearchModels; +using PersonnelDepartmentContracts.StoragesContracts; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDatabaseImplement.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Implements +{ + public class DepartmentStorage : IDepartmentStorage + { + public DepartmentViewModel? Delete(DepartmentBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Departments + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + context.Departments.Remove(element); + return element.GetViewModel; + } + + public DepartmentViewModel? GetElement(DepartmentSearchModel model) + { + if (!model.Id.HasValue) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + return context.Departments + .FirstOrDefault(x => (model.Id.HasValue && x.Id == model.Id) || + (!string.IsNullOrEmpty(model.Name) && x.Name == model.Name) || + (model.Telephone.HasValue && x.Telephone == model.Telephone))?.GetViewModel; + } + + public List GetFilteredList(DepartmentSearchModel model) + { + using var context = new PersonnelDepartmentDatabase(); + return context.Departments + .Where(x => (model.Id.HasValue && x.Id == model.Id) || + (!string.IsNullOrEmpty(model.Name) && x.Name == model.Name) || + (model.Telephone.HasValue && x.Telephone == model.Telephone)) + .Select(x => x.GetViewModel).ToList(); + } + + public List GetFullList() + { + using var context = new PersonnelDepartmentDatabase(); + return context.Departments + .Select(x => x.GetViewModel) + .ToList(); + } + + public DepartmentViewModel? Insert(DepartmentBindingModel model) + { + var newElement = Department.Create(model); + if (newElement == null) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + context.Departments.Add(newElement); + context.SaveChanges(); + return newElement.GetViewModel; + } + + public DepartmentViewModel? Update(DepartmentBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Departments + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + element.Update(model); + context.SaveChanges(); + return element.GetViewModel; + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/EmployeeStorage.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/EmployeeStorage.cs new file mode 100644 index 0000000..fec4773 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/EmployeeStorage.cs @@ -0,0 +1,89 @@ +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.SearchModels; +using PersonnelDepartmentContracts.StoragesContracts; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDatabaseImplement.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Implements +{ + public class EmployeeStorage : IEmployeeStorage + { + public EmployeeViewModel? Delete(EmployeeBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Employees + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + context.Employees.Remove(element); + return element.GetViewModel; + } + + public EmployeeViewModel? GetElement(EmployeeSearchModel model) + { + if (!model.Id.HasValue) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + return context.Employees + .FirstOrDefault(x => (model.Id.HasValue && x.Id == model.Id) || + (!string.IsNullOrEmpty(model.FirstName) && x.FirstName == model.FirstName) || + (!string.IsNullOrEmpty(model.LastName) && x.LastName == model.LastName) || + (!string.IsNullOrEmpty(model.Patronymic) && x.Patronymic == model.Patronymic))?.GetViewModel; + } + + public List GetFilteredList(EmployeeSearchModel model) + { + using var context = new PersonnelDepartmentDatabase(); + return context.Employees + .Where(x => (model.Id.HasValue && x.Id == model.Id) || + (!string.IsNullOrEmpty(model.FirstName) && x.FirstName == model.FirstName) || + (!string.IsNullOrEmpty(model.LastName) && x.LastName == model.LastName) || + (!string.IsNullOrEmpty(model.Patronymic) && x.Patronymic == model.Patronymic)) + .Select(x => x.GetViewModel).ToList(); + } + + public List GetFullList() + { + using var context = new PersonnelDepartmentDatabase(); + return context.Employees + .Select(x => x.GetViewModel) + .ToList(); + } + + public EmployeeViewModel? Insert(EmployeeBindingModel model) + { + var newElement = Employee.Create(model); + if (newElement == null) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + context.Employees.Add(newElement); + context.SaveChanges(); + return newElement.GetViewModel; + } + + public EmployeeViewModel? Update(EmployeeBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Employees + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + element.Update(model); + context.SaveChanges(); + return element.GetViewModel; + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/PositionStorage.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/PositionStorage.cs new file mode 100644 index 0000000..cf3f634 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/PositionStorage.cs @@ -0,0 +1,85 @@ +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.SearchModels; +using PersonnelDepartmentContracts.StoragesContracts; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDatabaseImplement.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Implements +{ + public class PositionStorage : IPositionStorage + { + public PositionViewModel? Delete(PositionBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Positions + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + context.Positions.Remove(element); + return element.GetViewModel; + } + + public PositionViewModel? GetElement(PositionSearchModel model) + { + if (!model.Id.HasValue) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + return context.Positions + .FirstOrDefault(x => (model.Id.HasValue && x.Id == model.Id) || + (!string.IsNullOrEmpty(model.Name) && x.Name == model.Name))?.GetViewModel; + } + + public List GetFilteredList(PositionSearchModel model) + { + using var context = new PersonnelDepartmentDatabase(); + return context.Positions + .Where(x => (model.Id.HasValue && x.Id == model.Id) || + (!string.IsNullOrEmpty(model.Name) && x.Name == model.Name)) + .Select(x => x.GetViewModel).ToList(); + } + + public List GetFullList() + { + using var context = new PersonnelDepartmentDatabase(); + return context.Positions + .Select(x => x.GetViewModel) + .ToList(); + } + + public PositionViewModel? Insert(PositionBindingModel model) + { + var newElement = Position.Create(model); + if (newElement == null) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + context.Positions.Add(newElement); + context.SaveChanges(); + return newElement.GetViewModel; + } + + public PositionViewModel? Update(PositionBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Positions + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + element.Update(model); + context.SaveChanges(); + return element.GetViewModel; + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/TypeStorage.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/TypeStorage.cs new file mode 100644 index 0000000..d3df8bc --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Implements/TypeStorage.cs @@ -0,0 +1,86 @@ +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.SearchModels; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDatabaseImplement.Models; +using PersonnelTypeContracts.StoragesContracts; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Type = PersonnelDepartmentDatabaseImplement.Models.Type; + +namespace PersonnelDepartmentDatabaseImplement.Implements +{ + public class TypeStorage : ITypeStorage + { + public TypeViewModel? Delete(TypeBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Types + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + context.Types.Remove(element); + return element.GetViewModel; + } + + public TypeViewModel? GetElement(TypeSearchModel model) + { + if (!model.Id.HasValue) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + return context.Types + .FirstOrDefault(x => (model.Id.HasValue && x.Id == model.Id) || + (!string.IsNullOrEmpty(model.Name) && x.Name == model.Name))?.GetViewModel; + } + + public List GetFilteredList(TypeSearchModel model) + { + using var context = new PersonnelDepartmentDatabase(); + return context.Types + .Where(x => (model.Id.HasValue && x.Id == model.Id) || + (!string.IsNullOrEmpty(model.Name) && x.Name == model.Name)) + .Select(x => x.GetViewModel).ToList(); + } + + public List GetFullList() + { + using var context = new PersonnelDepartmentDatabase(); + return context.Types + .Select(x => x.GetViewModel) + .ToList(); + } + + public TypeViewModel? Insert(TypeBindingModel model) + { + var newElement = Type.Create(model); + if (newElement == null) + { + return null; + } + using var context = new PersonnelDepartmentDatabase(); + context.Types.Add(newElement); + context.SaveChanges(); + return newElement.GetViewModel; + } + + public TypeViewModel? Update(TypeBindingModel model) + { + using var context = new PersonnelDepartmentDatabase(); + var element = context.Types + .FirstOrDefault(x => x.Id == model.Id); + if (element == null) + { + return null; + } + element.Update(model); + context.SaveChanges(); + return element.GetViewModel; + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Deal.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Deal.cs new file mode 100644 index 0000000..75a3f74 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Deal.cs @@ -0,0 +1,75 @@ +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDataModels.Models; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Models +{ + public class Deal : IDealModel + { + [Required] + public DateTime DateFrom { get; set; } + public DateTime? DateTo { get; set; } + [Required] + public int PositionId { get; set; } + [Required] + public int EmployeeId { get; set; } + [Required] + public int DepartmentId { get; set; } + [Required] + public int TypeId { get; set; } + public int Id { get; set; } + public virtual Position Position { get; set; } + public virtual Employee Employee { get; set; } + public virtual Department Department { get; set; } + public virtual Type Type { get; set; } + + public static Deal? Create(DealBindingModel model) + { + if(model == null) + { + return null; + } + return new Deal + { + Id = model.Id, + DateFrom = model.DateFrom, + DateTo = model.DateTo, + PositionId = model.PositionId, + EmployeeId = model.EmployeeId, + DepartmentId = model.DepartmentId, + TypeId = model.TypeId + }; + } + + public void Update(DealBindingModel model) + { + if (model == null) + { + return; + } + DateFrom = model.DateFrom; + DateTo = model.DateTo; + } + + public DealViewModel GetViewModel => new() + { + Id = Id, + DateFrom = DateFrom, + DateTo = DateTo, + PositionId = PositionId, + EmployeeId = EmployeeId, + DepartmentId = DepartmentId, + TypeId = TypeId, + PositionName = Position.Name, + DepartmentName = Department.Name, + EmployeeName = Employee.LastName + Employee.FirstName + Employee.Patronymic, + TypeName = Type.Name + }; + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Department.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Department.cs new file mode 100644 index 0000000..03b6968 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Department.cs @@ -0,0 +1,52 @@ +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDataModels.Models; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Models +{ + public class Department : IDepartmentModel + { + [Required] + public string Name { get; set; } = string.Empty; + [Required] + public int Telephone { get; set; } + public int Id { get; set; } + + public static Department? Create(DepartmentBindingModel model) + { + if (model == null) + { + return null; + } + return new Department + { + Id = model.Id, + Name = model.Name, + Telephone = model.Telephone + }; + } + + public void Update(DepartmentBindingModel model) + { + if (model == null) + { + return; + } + Name = model.Name; + Telephone = model.Telephone; + } + + public DepartmentViewModel GetViewModel => new() + { + Id = Id, + Name = Name, + Telephone = Telephone + }; + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Employee.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Employee.cs new file mode 100644 index 0000000..f3d07a1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Employee.cs @@ -0,0 +1,56 @@ +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDataModels.Models; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Models +{ + public class Employee : IEmployeeModel + { + [Required] + public string FirstName { get; set; } = string.Empty; + [Required] + public string LastName { get; set; } = string.Empty; + public string Patronymic { get; set; } = string.Empty; + public int Id { get; set; } + + public static Employee? Create(EmployeeBindingModel model) + { + if (model == null) + { + return null; + } + return new Employee + { + Id = model.Id, + FirstName = model.FirstName, + LastName = model.LastName, + Patronymic = model.Patronymic + }; + } + + public void Update(EmployeeBindingModel model) + { + if (model == null) + { + return; + } + FirstName = model.FirstName; + LastName = model.LastName; + Patronymic = model.Patronymic; + } + + public EmployeeViewModel GetViewModel => new() + { + Id = Id, + FirstName = FirstName, + LastName = LastName, + Patronymic = Patronymic + }; + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Position.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Position.cs new file mode 100644 index 0000000..fd4ea7e --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Position.cs @@ -0,0 +1,47 @@ +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDataModels.Models; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Models +{ + public class Position : IPositionModel + { + [Required] + public string Name { get; set; } = string.Empty; + public int Id { get; set; } + + public static Position? Create(PositionBindingModel model) + { + if (model == null) + { + return null; + } + return new Position + { + Id = model.Id, + Name = model.Name + }; + } + + public void Update(PositionBindingModel model) + { + if (model == null) + { + return; + } + Name = model.Name; + } + + public PositionViewModel GetViewModel => new() + { + Id = Id, + Name = Name + }; + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Type.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Type.cs new file mode 100644 index 0000000..6bfad66 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/Models/Type.cs @@ -0,0 +1,47 @@ +using PersonnelDepartmentContracts.BindingModels; +using PersonnelDepartmentContracts.ViewModels; +using PersonnelDepartmentDataModels.Models; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PersonnelDepartmentDatabaseImplement.Models +{ + public class Type : ITypeModel + { + [Required] + public string Name { get; set; } = string.Empty; + public int Id { get; set; } + + public static Type? Create(TypeBindingModel model) + { + if (model == null) + { + return null; + } + return new Type + { + Id = model.Id, + Name = model.Name + }; + } + + public void Update(TypeBindingModel model) + { + if (model == null) + { + return; + } + Name = model.Name; + } + + public TypeViewModel GetViewModel => new() + { + Id = Id, + Name = Name + }; + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/PersonnelDepartmentDatabase.cs b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/PersonnelDepartmentDatabase.cs new file mode 100644 index 0000000..43e2b16 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/PersonnelDepartmentDatabase.cs @@ -0,0 +1,29 @@ +using Microsoft.EntityFrameworkCore; +using PersonnelDepartmentDatabaseImplement.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Type = PersonnelDepartmentDatabaseImplement.Models.Type; + +namespace PersonnelDepartmentDatabaseImplement +{ + public class PersonnelDepartmentDatabase : DbContext + { + protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) + { + if (optionsBuilder.IsConfigured == false) + { + optionsBuilder.UseNpgsql(@"Host=localhost;Port=5432;Database=PersonnelDepartment;Username=postgres;Password=adam200396789"); + } + base.OnConfiguring(optionsBuilder); + } + + public virtual DbSet Deals { get; set; } + public virtual DbSet Departments { get; set; } + public virtual DbSet Employees { get; set; } + public virtual DbSet Positions { get; set; } + public virtual DbSet Types { get; set; } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/PersonnelDepartmentDatabaseImplement.csproj b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/PersonnelDepartmentDatabaseImplement.csproj index f2d1325..552e6ca 100644 --- a/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/PersonnelDepartmentDatabaseImplement.csproj +++ b/PersonnelDepartmentView/PersonnelDepartmentDatabaseImplement/PersonnelDepartmentDatabaseImplement.csproj @@ -1,4 +1,4 @@ - + net6.0 @@ -7,8 +7,13 @@ - - + + + + + + + diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormDeal.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeal.Designer.cs new file mode 100644 index 0000000..d28978a --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeal.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormDeal + { + /// + /// 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 = "FormDeal"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormDeal.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeal.cs new file mode 100644 index 0000000..f6fe0f0 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeal.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormDeal : Form + { + public FormDeal() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/Form1.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeal.resx similarity index 100% rename from PersonnelDepartmentView/PersonnelDepartmentView/Form1.resx rename to PersonnelDepartmentView/PersonnelDepartmentView/FormDeal.resx diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/Form1.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeals.Designer.cs similarity index 97% rename from PersonnelDepartmentView/PersonnelDepartmentView/Form1.Designer.cs rename to PersonnelDepartmentView/PersonnelDepartmentView/FormDeals.Designer.cs index 293fc8b..70c05fe 100644 --- a/PersonnelDepartmentView/PersonnelDepartmentView/Form1.Designer.cs +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeals.Designer.cs @@ -1,6 +1,6 @@ namespace PersonnelDepartmentView { - partial class Form1 + partial class FormDeals { /// /// Required designer variable. diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/Form1.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeals.cs similarity index 100% rename from PersonnelDepartmentView/PersonnelDepartmentView/Form1.cs rename to PersonnelDepartmentView/PersonnelDepartmentView/FormDeals.cs diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormDeals.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeals.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDeals.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.Designer.cs new file mode 100644 index 0000000..234f94a --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormDepartment + { + /// + /// 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 = "FormDepartment"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.cs new file mode 100644 index 0000000..88075e7 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormDepartment : Form + { + public FormDepartment() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartment.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.Designer.cs new file mode 100644 index 0000000..9598e75 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormDepartments + { + /// + /// 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 = "FormDepartments"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.cs new file mode 100644 index 0000000..67774a8 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormDepartments : Form + { + public FormDepartments() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormDepartments.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.Designer.cs new file mode 100644 index 0000000..7cc4e88 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormEmployee + { + /// + /// 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 = "FormEmployee"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.cs new file mode 100644 index 0000000..2cc18f7 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormEmployee : Form + { + public FormEmployee() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployee.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.Designer.cs new file mode 100644 index 0000000..cae9dcd --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormEmployees + { + /// + /// 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 = "FormEmployees"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.cs new file mode 100644 index 0000000..4887429 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormEmployees : Form + { + public FormEmployees() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormEmployees.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.Designer.cs new file mode 100644 index 0000000..27102b0 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormPosition + { + /// + /// 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 = "FormPosition"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.cs new file mode 100644 index 0000000..ba89fbf --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormPosition : Form + { + public FormPosition() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormPosition.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.Designer.cs new file mode 100644 index 0000000..b7f8967 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormPositions + { + /// + /// 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 = "FormPositions"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.cs new file mode 100644 index 0000000..d0a37c5 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormPositions : Form + { + public FormPositions() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormPositions.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/FormType.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormType.Designer.cs new file mode 100644 index 0000000..89fc785 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormType.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormType + { + /// + /// 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 = "FormType"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormType.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormType.cs new file mode 100644 index 0000000..172d38c --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormType.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormType : Form + { + public FormType() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormType.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormType.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormType.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.Designer.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.Designer.cs new file mode 100644 index 0000000..a8d865a --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.Designer.cs @@ -0,0 +1,39 @@ +namespace PersonnelDepartmentView +{ + partial class FormTypes + { + /// + /// 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 = "FormTypes"; + } + + #endregion + } +} \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.cs b/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.cs new file mode 100644 index 0000000..7722d54 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.cs @@ -0,0 +1,20 @@ +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 PersonnelDepartmentView +{ + public partial class FormTypes : Form + { + public FormTypes() + { + InitializeComponent(); + } + } +} diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.resx b/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/PersonnelDepartmentView/PersonnelDepartmentView/FormTypes.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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/PersonnelDepartmentView/PersonnelDepartmentView/PersonnelDepartmentView.csproj b/PersonnelDepartmentView/PersonnelDepartmentView/PersonnelDepartmentView.csproj index b57c89e..4af9d3a 100644 --- a/PersonnelDepartmentView/PersonnelDepartmentView/PersonnelDepartmentView.csproj +++ b/PersonnelDepartmentView/PersonnelDepartmentView/PersonnelDepartmentView.csproj @@ -8,4 +8,11 @@ enable + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + \ No newline at end of file diff --git a/PersonnelDepartmentView/PersonnelDepartmentView/Program.cs b/PersonnelDepartmentView/PersonnelDepartmentView/Program.cs index 32b8806..537de9a 100644 --- a/PersonnelDepartmentView/PersonnelDepartmentView/Program.cs +++ b/PersonnelDepartmentView/PersonnelDepartmentView/Program.cs @@ -1,7 +1,17 @@ +using System; +using Microsoft.Extensions.DependencyInjection; +using PersonnelDepartmentBusinessLogic.BusinessLogics; +using PersonnelDepartmentContracts.BusinessLogicContracts; +using PersonnelDepartmentContracts.StoragesContracts; +using PersonnelDepartmentDatabaseImplement.Implements; +using PersonnelTypeContracts.StoragesContracts; + namespace PersonnelDepartmentView { internal static class Program { + private static ServiceProvider? _serviceProvider; + public static ServiceProvider? ServiceProvider => _serviceProvider; /// /// The main entry point for the application. /// @@ -11,7 +21,37 @@ namespace PersonnelDepartmentView // To customize application configuration such as set high DPI settings or default font, // see https://aka.ms/applicationconfiguration. ApplicationConfiguration.Initialize(); - Application.Run(new Form1()); + Application.Run(new FormDeals()); + var services = new ServiceCollection(); + ConfigureServices(services); + } + + private static void ConfigureServices(ServiceCollection services) + { + _serviceProvider = services.BuildServiceProvider(); + + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); + services.AddTransient(); } } } \ No newline at end of file