diff --git a/University/UniversityBuisnessLogic/ActivityLogic.cs b/University/UniversityBuisnessLogic/ActivityLogic.cs deleted file mode 100644 index 77c9494..0000000 --- a/University/UniversityBuisnessLogic/ActivityLogic.cs +++ /dev/null @@ -1,102 +0,0 @@ -using UniversityContracts.BindingModels; -using UniversityContracts.BuisnessLogicContracts; -using UniversityContracts.SearchModels; -using UniversityContracts.StoragesContracts; -using UniversityContracts.ViewModels; -using Microsoft.Extensions.Logging; - -namespace UniversityBuisnessLogic -{ - public class ActivityLogic : IActivityLogic - { - private readonly ILogger _logger; - private readonly IActivityStorage _activityStorage; - - public ActivityLogic(ILogger logger, IActivityStorage activityStorage) - { - _logger = logger; - _activityStorage = activityStorage; - } - public bool Create(ActivityBindingModel model) - { - CheckModel(model); - if (_activityStorage.Insert(model) == null) - { - _logger.LogWarning("Insert operation failed"); - return false; - } - return true; - } - - public bool Delete(ActivityBindingModel model) - { - CheckModel(model, false); - _logger.LogInformation("Delete. Id:{Id}", model.Id); - if (_activityStorage.Delete(model) == null) - { - _logger.LogWarning("Delete operation failed"); - return false; - } - return true; - } - - public ActivityViewModel? ReadElement(ActivitySearchModel model) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - _logger.LogInformation("ReadElement. Id:{Id}", model.Id); - var element = _activityStorage.GetElement(model); - if (element == null) - { - _logger.LogWarning("ReadElement element not found"); - return null; - } - _logger.LogInformation("ReadElement find. Id:{Id}", element.Id); - return element; - } - - public List? ReadList(ActivitySearchModel? model) - { - _logger.LogInformation("ReadList. Id:{Id}", model?.Id); - var list = model == null ? _activityStorage.GetFullList() : _activityStorage.GetFilteredList(model); - if (list == null) - { - _logger.LogWarning("ReadList return null list"); - return null; - } - _logger.LogInformation("ReadList. Count:{Count}", list.Count); - return list; - } - - public bool Update(ActivityBindingModel model) - { - CheckModel(model); - if (_activityStorage.Update(model) == null) - { - _logger.LogWarning("Update operation failed"); - return false; - } - return true; - } - - private void CheckModel(ActivityBindingModel model, bool withParams = true) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - if (!withParams) - { - return; - } - if (model.Number <= 0) - { - throw new ArgumentNullException("Номер занятия должен быть больше 0", nameof(model.Number)); - } - - _logger.LogInformation("Activity. Number:{ComponentName}. Id: {Id}", model.Number, model.Id); - } - } -} diff --git a/University/UniversityBuisnessLogic/BuisnessLogic/ReportLogic.cs b/University/UniversityBuisnessLogic/BuisnessLogic/ReportLogic.cs new file mode 100644 index 0000000..277fee3 --- /dev/null +++ b/University/UniversityBuisnessLogic/BuisnessLogic/ReportLogic.cs @@ -0,0 +1,28 @@ +using UniversityContracts.BindingModels; +using UniversityContracts.BuisnessLogicContracts; +using UniversityContracts.SearchModels; +using UniversityContracts.StoragesContracts; +using UniversityContracts.ViewModels; +using Microsoft.Extensions.Logging; + +namespace UniversityBuisnessLogic.BuisnessLogic +{ + public class ReportLogic : IReportLogic + { + ILogger _logger; + IDisciplineStorage _disciplineStorage; + + public ReportLogic(ILogger logger, IDisciplineStorage disciplineStorage) + { + _logger = logger; + _disciplineStorage = disciplineStorage; + } + + public List GetStudentDiscipline(ReportBindingModel model) + { + if (model == null || model.Students == null) return new(); + + var disciplines = _disciplineStorage.GetFullList(); + } + } +} diff --git a/University/UniversityBuisnessLogic/DisciplineLogic.cs b/University/UniversityBuisnessLogic/DisciplineLogic.cs deleted file mode 100644 index 96c643a..0000000 --- a/University/UniversityBuisnessLogic/DisciplineLogic.cs +++ /dev/null @@ -1,117 +0,0 @@ -using UniversityContracts.BindingModels; -using UniversityContracts.BuisnessLogicContracts; -using UniversityContracts.SearchModels; -using UniversityContracts.StoragesContracts; -using UniversityContracts.ViewModels; -using Microsoft.Extensions.Logging; - -namespace UniversityBuisnessLogic -{ - public class DisciplineLogic : IDisciplineLogic - { - private readonly ILogger _logger; - private readonly IDisciplineStorage _disciplineStorage; - - public DisciplineLogic(ILogger logger, IDisciplineStorage disciplineStorage) - { - _logger = logger; - _disciplineStorage = disciplineStorage; - } - - public bool Create(DisciplineBindingModel model) - { - CheckModel(model); - if (_disciplineStorage.Insert(model) == null) - { - _logger.LogWarning("Insert operation failed"); - return false; - } - return true; - } - - public bool Delete(DisciplineBindingModel model) - { - CheckModel(model, false); - _logger.LogInformation("Delete. Id:{Id}", model.Id); - if (_disciplineStorage.Delete(model) == null) - { - _logger.LogWarning("Delete operation failed"); - return false; - } - return true; - } - - public DisciplineViewModel? ReadElement(DisciplineSearchModel model) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - _logger.LogInformation("ReadElement. DisciplineName:{Name}. Id:{Id}", model.Name, model.Id); - var element = _disciplineStorage.GetElement(model); - if (element == null) - { - _logger.LogWarning("ReadElement element not found"); - return null; - } - _logger.LogInformation("ReadElement find. Id:{Id}", element.Id); - return element; - } - - public List? ReadList(DisciplineSearchModel? model) - { - _logger.LogInformation("ReadList. DisciplineName: {Name}. Id:{Id}", model?.Name, model?.Id); - var list = model == null ? _disciplineStorage.GetFullList() : _disciplineStorage.GetFilteredList(model); - if (list == null) - { - _logger.LogWarning("ReadList return null list"); - return null; - } - _logger.LogInformation("ReadList. Count:{Count}", list.Count); - return list; - } - - public bool Update(DisciplineBindingModel model) - { - CheckModel(model); - if (_disciplineStorage.Update(model) == null) - { - _logger.LogWarning("Update operation failed"); - return false; - } - return true; - } - - private void CheckModel(DisciplineBindingModel model, bool withParams = true) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - if (!withParams) - { - return; - } - if (string.IsNullOrEmpty(model.Name)) - { - throw new ArgumentNullException("Нет названия дисциплины", nameof(model.Name)); - } - if (string.IsNullOrEmpty(model.Department)) - { - throw new ArgumentNullException("Нет названия кафедры", nameof(model.Name)); - } - - _logger.LogInformation("Discipline. Name:{Name}. Department:{Department}. Id: {Id}", model.Name, model.Department, model.Id); - - var element = _disciplineStorage.GetElement(new DisciplineSearchModel - { - Name = model.Name - }); - - if (element != null && element.Id != model.Id) - { - throw new InvalidOperationException("Дисциплина с таким названием уже есть"); - } - } - } -} diff --git a/University/UniversityBuisnessLogic/ExaminationResultLogic.cs b/University/UniversityBuisnessLogic/ExaminationResultLogic.cs deleted file mode 100644 index 2bacc00..0000000 --- a/University/UniversityBuisnessLogic/ExaminationResultLogic.cs +++ /dev/null @@ -1,103 +0,0 @@ -using UniversityContracts.BindingModels; -using UniversityContracts.BuisnessLogicContracts; -using UniversityContracts.SearchModels; -using UniversityContracts.StoragesContracts; -using UniversityContracts.ViewModels; -using Microsoft.Extensions.Logging; - -namespace UniversityBuisnessLogic -{ - public class ExaminationResultLogic : IExaminationResultLogic - { - private readonly ILogger _logger; - private readonly IExaminationResultStorage _examinationResultStorage; - - public ExaminationResultLogic(ILogger logger, IExaminationResultStorage examinationResultStorage) - { - _logger = logger; - _examinationResultStorage = examinationResultStorage; - } - - public bool Create(ExaminationResultBindingModel model) - { - CheckModel(model); - if (_examinationResultStorage.Insert(model) == null) - { - _logger.LogWarning("Insert operation failed"); - return false; - } - return true; - } - - public bool Delete(ExaminationResultBindingModel model) - { - CheckModel(model, false); - _logger.LogInformation("Delete. Id:{Id}", model.Id); - if (_examinationResultStorage.Delete(model) == null) - { - _logger.LogWarning("Delete operation failed"); - return false; - } - return true; - } - - public ExaminationResultViewModel? ReadElement(ExaminationResultSearchModel model) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - _logger.LogInformation("ReadElement. Id:{Id}", model.Id); - var element = _examinationResultStorage.GetElement(model); - if (element == null) - { - _logger.LogWarning("ReadElement element not found"); - return null; - } - _logger.LogInformation("ReadElement find. Id:{Id}", element.Id); - return element; - } - - public List? ReadList(ExaminationResultSearchModel? model) - { - _logger.LogInformation("ReadList. Id:{Id}", model?.Id); - var list = model == null ? _examinationResultStorage.GetFullList() : _examinationResultStorage.GetFilteredList(model); - if (list == null) - { - _logger.LogWarning("ReadList return null list"); - return null; - } - _logger.LogInformation("ReadList. Count:{Count}", list.Count); - return list; - } - - public bool Update(ExaminationResultBindingModel model) - { - CheckModel(model); - if (_examinationResultStorage.Update(model) == null) - { - _logger.LogWarning("Update operation failed"); - return false; - } - return true; - } - - private void CheckModel(ExaminationResultBindingModel model, bool withParams = true) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - if (!withParams) - { - return; - } - if (string.IsNullOrEmpty(model.ExaminationForm)) - { - throw new ArgumentNullException("Нет формы испытания", nameof(model.ExaminationForm)); - } - - _logger.LogInformation("ExaminationResult. ExaminationForm: {ExaminationForm}. Id: {Id}", model.ExaminationForm, model.Id); - } - } -} diff --git a/University/UniversityBuisnessLogic/ReportTypeLogic.cs b/University/UniversityBuisnessLogic/ReportTypeLogic.cs deleted file mode 100644 index 810ab19..0000000 --- a/University/UniversityBuisnessLogic/ReportTypeLogic.cs +++ /dev/null @@ -1,112 +0,0 @@ -using UniversityContracts.BindingModels; -using UniversityContracts.BuisnessLogicContracts; -using UniversityContracts.SearchModels; -using UniversityContracts.StoragesContracts; -using UniversityContracts.ViewModels; -using Microsoft.Extensions.Logging; - -namespace UniversityBuisnessLogic -{ - public class ReportTypeLogic : IReportTypeLogic - { - private readonly ILogger _logger; - private readonly IReportTypeStorage _reportTypeStorage; - - public ReportTypeLogic(ILogger logger, IReportTypeStorage reportTypeStorage) - { - _logger = logger; - _reportTypeStorage = reportTypeStorage; - } - - public bool Create(ReportTypeBindingModel model) - { - CheckModel(model); - if (_reportTypeStorage.Insert(model) == null) - { - _logger.LogWarning("Insert operation failed"); - return false; - } - return true; - } - - public bool Delete(ReportTypeBindingModel model) - { - CheckModel(model, false); - _logger.LogInformation("Delete. Id:{Id}", model.Id); - if (_reportTypeStorage.Delete(model) == null) - { - _logger.LogWarning("Delete operation failed"); - return false; - } - return true; - } - - public ReportTypeViewModel? ReadElement(ReportTypeSearchModel model) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - _logger.LogInformation("ReadElement. ReportTypeName: {Name}. Id:{Id}", model.Name, model.Id); - var element = _reportTypeStorage.GetElement(model); - if (element == null) - { - _logger.LogWarning("ReadElement element not found"); - return null; - } - _logger.LogInformation("ReadElement find. Id:{Id}", element.Id); - return element; - } - - public List? ReadList(ReportTypeSearchModel? model) - { - _logger.LogInformation("ReadList. ReportTypeName: {Name}. Id:{Id}", model?.Name, model?.Id); - var list = model == null ? _reportTypeStorage.GetFullList() : _reportTypeStorage.GetFilteredList(model); - if (list == null) - { - _logger.LogWarning("ReadList return null list"); - return null; - } - _logger.LogInformation("ReadList. Count:{Count}", list.Count); - return list; - } - - public bool Update(ReportTypeBindingModel model) - { - CheckModel(model); - if (_reportTypeStorage.Update(model) == null) - { - _logger.LogWarning("Update operation failed"); - return false; - } - return true; - } - - private void CheckModel(ReportTypeBindingModel model, bool withParams = true) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - if (!withParams) - { - return; - } - if (string.IsNullOrEmpty(model.Name)) - { - throw new ArgumentNullException("Нет названия типа отчета", nameof(model.Name)); - } - - _logger.LogInformation("ReportType. ReportName:{Name}. Id: { Id}", model.Name, model.Id); - var element = _reportTypeStorage.GetElement(new ReportTypeSearchModel - { - Name = model.Name, - }); - - if (element != null && element.Id != model.Id) - { - throw new InvalidOperationException("Тип отчета с таким названием уже есть"); - } - } - } -} diff --git a/University/UniversityBuisnessLogic/StatementLogic.cs b/University/UniversityBuisnessLogic/StatementLogic.cs deleted file mode 100644 index b2fb525..0000000 --- a/University/UniversityBuisnessLogic/StatementLogic.cs +++ /dev/null @@ -1,101 +0,0 @@ -using UniversityContracts.BindingModels; -using UniversityContracts.BuisnessLogicContracts; -using UniversityContracts.SearchModels; -using UniversityContracts.StoragesContracts; -using UniversityContracts.ViewModels; -using Microsoft.Extensions.Logging; - -namespace UniversityBuisnessLogicf -{ - public class StatementLogic : IStatementLogic - { - private readonly ILogger _logger; - private readonly IStatementStorage _statementStorage; - - public StatementLogic(ILogger logger, IStatementStorage statementStorage) - { - _logger = logger; - _statementStorage = statementStorage; - } - public bool Create(StatementBindingModel model) - { - CheckModel(model); - if (_statementStorage.Insert(model) == null) - { - _logger.LogWarning("Insert operation failed"); - return false; - } - return true; - } - - public bool Delete(StatementBindingModel model) - { - CheckModel(model, false); - _logger.LogInformation("Delete. Id:{Id}", model.Id); - if (_statementStorage.Delete(model) == null) - { - _logger.LogWarning("Delete operation failed"); - return false; - } - return true; - } - - public StatementViewModel? ReadElement(StatementSearchModel model) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - _logger.LogInformation("ReadElement. Id:{Id}", model.Id); - var element = _statementStorage.GetElement(model); - if (element == null) - { - _logger.LogWarning("ReadElement element not found"); - return null; - } - _logger.LogInformation("ReadElement find. Id:{Id}", element.Id); - return element; - } - f - public List? ReadList(StatementSearchModel? model) - { - _logger.LogInformation("ReadList. Id:{Id}", model?.Id); - var list = model == null ? _statementStorage.GetFullList() : _statementStorage.GetFilteredList(model); - if (list == null) - { - _logger.LogWarning("ReadList return null list"); - return null; - } - _logger.LogInformation("ReadList. Count:{Count}", list.Count); - return list; - } - - public bool Update(StatementBindingModel model) - { - CheckModel(model); - if (_statementStorage.Update(model) == null) - { - _logger.LogWarning("Update operation failed"); - return false; - } - return true; - } - - private void CheckModel(StatementBindingModel model, bool withParams = true) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - if (!withParams) - { - return; - } - if (model.HoursCount <= 0) - { - throw new ArgumentNullException("Количество часов в ведомости должно быть больше 0", nameof(model.HoursCount)); - } - _logger.LogInformation("Statement. HoursCount:{HoursCount}. Id: { Id}", model.HoursCount, model.Id); - } - } -} diff --git a/University/UniversityBuisnessLogic/StudentLogic.cs b/University/UniversityBuisnessLogic/StudentLogic.cs deleted file mode 100644 index d321f98..0000000 --- a/University/UniversityBuisnessLogic/StudentLogic.cs +++ /dev/null @@ -1,101 +0,0 @@ -using UniversityContracts.BindingModels; -using UniversityContracts.BuisnessLogicContracts; -using UniversityContracts.SearchModels; -using UniversityContracts.StoragesContracts; -using UniversityContracts.ViewModels; -using Microsoft.Extensions.Logging; - -namespace UniversityBuisnessLogic -{ - public class StudentLogic : IStudentLogic - { - private readonly ILogger _logger; - private readonly IStudentStorage _studentStorage; - - public StudentLogic(ILogger logger, IStudentStorage studentStorage) - { - _logger = logger; - _studentStorage = studentStorage; - } - public bool Create(StudentBindingModel model) - { - CheckModel(model); - if (_studentStorage.Insert(model) == null) - { - _logger.LogWarning("Insert operation failed"); - return false; - } - return true; - } - - public bool Delete(StudentBindingModel model) - { - CheckModel(model, false); - _logger.LogInformation("Delete. Id:{Id}", model.Id); - if (_studentStorage.Delete(model) == null) - { - _logger.LogWarning("Delete operation failed"); - return false; - } - return true; - } - - public StudentViewModel? ReadElement(StudentSearchModel model) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - _logger.LogInformation("ReadElement. StudentName: {Name}. Id:{Id}", model.Name, model.Id); - var element = _studentStorage.GetElement(model); - if (element == null) - { - _logger.LogWarning("ReadElement element not found"); - return null; - } - _logger.LogInformation("ReadElement find. Id:{Id}", element.Id); - return element; - } - - public List? ReadList(StudentSearchModel? model) - { - _logger.LogInformation("ReadList. StudentName: {Name}. Id:{Id}", model?.Name, model?.Id); - var list = model == null ? _studentStorage.GetFullList() : _studentStorage.GetFilteredList(model); - if (list == null) - { - _logger.LogWarning("ReadList return null list"); - return null; - } - _logger.LogInformation("ReadList. Count:{Count}", list.Count); - return list; - } - - public bool Update(StudentBindingModel model) - { - CheckModel(model); - if (_studentStorage.Update(model) == null) - { - _logger.LogWarning("Update operation failed"); - return false; - } - return true; - } - private void CheckModel(StudentBindingModel model, bool withParams = true) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - if (!withParams) - { - return; - } - if (string.IsNullOrEmpty(model.Name)) - { - throw new ArgumentNullException("Нет имени студента", nameof(model.Name)); - } - - _logger.LogInformation("Student. Name:{Name}. Id: { Id}", model.Name, model.Id); - } - } -} diff --git a/University/UniversityBuisnessLogic/UserLogic.cs b/University/UniversityBuisnessLogic/UserLogic.cs deleted file mode 100644 index 7c0557d..0000000 --- a/University/UniversityBuisnessLogic/UserLogic.cs +++ /dev/null @@ -1,130 +0,0 @@ -using UniversityContracts.BindingModels; -using UniversityContracts.BuisnessLogicContracts; -using UniversityContracts.SearchModels; -using UniversityContracts.StoragesContracts; -using UniversityContracts.ViewModels; -using Microsoft.Extensions.Logging; - -namespace UniversityBuisnessLogic -{ - public class UserLogic : IUserLogic - { - private readonly ILogger _logger; - private readonly IUserStorage _userStorage; - - public UserLogic(ILogger logger, IUserStorage userStorage) - { - _logger = logger; - _userStorage = userStorage; - } - - public bool Create(UserBindingModel model) - { - CheckModel(model); - if (_userStorage.Insert(model) == null) - { - _logger.LogWarning("Insert operation failed"); - return false; - } - return true; - } - - public bool Delete(UserBindingModel model) - { - CheckModel(model, false); - _logger.LogInformation("Delete. Id:{Id}", model.Id); - if (_userStorage.Delete(model) == null) - { - _logger.LogWarning("Delete operation failed"); - return false; - } - return true; - } - - public UserViewModel? ReadElement(UserSearchModel model) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - _logger.LogInformation("ReadElement. Id:{Id}", model.Id); - var element = _userStorage.GetElement(model); - if (element == null) - { - _logger.LogWarning("ReadElement element not found"); - return null; - } - _logger.LogInformation("ReadElement find. Id:{Id}", element.Id); - return element; - } - - public List? ReadList(UserSearchModel? model) - { - _logger.LogInformation("ReadList. Id:{Id}", model?.Id); - var list = model == null ? _userStorage.GetFullList() : _userStorage.GetFilteredList(model); - if (list == null) - { - _logger.LogWarning("ReadList return null list"); - return null; - } - _logger.LogInformation("ReadList. Count:{Count}", list.Count); - return list; - } - - public bool Update(UserBindingModel model) - { - CheckModel(model); - if (_userStorage.Update(model) == null) - { - _logger.LogWarning("Update operation failed"); - return false; - } - return true; - } - - private void CheckModel(UserBindingModel model, bool withParams = true) - { - if (model == null) - { - throw new ArgumentNullException(nameof(model)); - } - if (!withParams) - { - return; - } - if (string.IsNullOrEmpty(model.Name)) - { - throw new ArgumentNullException("Нет имени пользователя", nameof(model.Name)); - } - if (string.IsNullOrEmpty(model.Surname)) - { - throw new ArgumentNullException("Нет фамилии пользователя", nameof(model.Name)); - } - if (string.IsNullOrEmpty(model.Login)) - { - throw new ArgumentNullException("Нет логина", nameof(model.Name)); - } - if (string.IsNullOrEmpty(model.Password)) - { - throw new ArgumentNullException("Нет фамилии пароля", nameof(model.Name)); - } - else if (model.Password.Length < 6) - { - throw new ArgumentNullException("В пароле должно быть не менее 6 символов", nameof(model.Name)); - } - - _logger.LogInformation("User. Name:{Name}. Surname:{Surname}. Login: {Login} " + - "Password: {Password}. Id: {Id}", model.Name, model.Surname, model.Login, model.Password, model.Id); - - var element = _userStorage.GetElement(new UserSearchModel - { - Login = model.Login, - }); - - if (element != null && element.Id != model.Id) - { - throw new InvalidOperationException("Пользователь с таким логином уже есть"); - } - } - } -}