/// <summary> /// Удаление типа состояния /// </summary> /// <param name="typeOfState">Удаляемая запись</param> public void DeleteTypeOfState(TypeOfState typeOfState) { logger.Trace("Попытка подключения к источнику данных."); logger.Trace("Подготовка к удалению типа состояния."); try { var typeOfStateToDelete = context.TypeOfState.FirstOrDefault(ts => ts.StateId == typeOfState.StateId); if (typeOfStateToDelete != null) { context.TypeOfState.Remove(typeOfStateToDelete); context.SaveChanges(); logger.Debug("Удаление записи типа состояния успешно завершено."); } } catch (SqlException sqlEx) { logger.Error("Ошибка удаления записи типа состояния."); logger.Error($"Ошибка SQL Server — {sqlEx.Number}."); logger.Error($"Сообщение об ошибке: {sqlEx.Message}."); } catch (Exception ex) { logger.Error("Ошибка удаления записи типа состояния."); logger.Error($"Ошибка — {ex.Message}."); } }
/// <summary> /// Добавление типа состояния /// </summary> /// <param name="typeOfState">Новый тип состояния абитуриента</param> /// <returns>Новая запись</returns> public TypeOfState InsertTypeOfState(TypeOfState typeOfState) { logger.Trace("Попытка подключения к источнику данных."); logger.Trace("Подготовка к добавлению типа состояния"); try { logger.Debug($"Добавляемая запись {typeOfState.ToString()}"); context.TypeOfState.Add(typeOfState); context.SaveChanges(); logger.Debug($"Новая запись успешно добавлена."); return(typeOfState); } catch (SqlException sqlEx) { logger.Error("Ошибка добавления типа состояния."); logger.Error($"Ошибка SQL Server — {sqlEx.Number}."); logger.Error($"Сообщение об ошибке: {sqlEx.Message}."); return(null); } catch (Exception ex) { logger.Error("Ошибка добавления типа состояния."); logger.Error($"Ошибка — {ex.Message}."); return(null); } }
/// <summary> /// Обновление типа состояния /// </summary> /// <param name="typeOfState">Редактируемый тип состояния абитуриента</param> /// <returns>Отредактированная запись</returns> public TypeOfState UpdateTypeOfState(TypeOfState typeOfState) { logger.Trace("Попытка подключения к источнику данных."); logger.Trace("Подготовка к обновлению типа состояния."); try { var typeOfStateToUpdate = context.TypeOfState.FirstOrDefault(ts => ts.StateId == typeOfState.StateId); logger.Debug($"Текущая запись {typeOfStateToUpdate.ToString()}"); typeOfStateToUpdate.Name = typeOfState.Name; context.SaveChanges(); logger.Debug($"Новая запись {typeOfStateToUpdate.ToString()}"); return(typeOfStateToUpdate); } catch (SqlException sqlEx) { logger.Error("Ошибка редактирования типа состояния."); logger.Error($"Ошибка SQL Server — {sqlEx.Number}."); logger.Error($"Сообщение об ошибке: {sqlEx.Message}."); return(null); } catch (Exception ex) { logger.Error("Ошибка редактирования типа состояния."); logger.Error($"Ошибка — {ex.Message}."); return(null); } }
/// <summary> /// Получение списка абитуриентов /// </summary> /// <param name="typeOfState">Статус</param> /// <returns>Список абитуриентов</returns> public List <Enrollee> GetEnrollees(TypeOfState typeOfState) { logger.Trace("Попытка подключения к источнику данных."); logger.Trace("Подготовка к поиску списка абитуриентов выбранного типа состояния."); try { var enrollees = context.Enrollee.AsNoTracking().Where(e => e.StateTypeId == typeOfState.StateId).ToList(); logger.Debug($"Поиск окончен. Количество записей: {enrollees.Count}."); return(enrollees); } catch (SqlException sqlEx) { logger.Error("Ошибка получения списка абитуриентов, по типу состояния (статуса)."); logger.Error($"Ошибка SQL Server — {sqlEx.Number}."); logger.Error($"Сообщение об ошибке: {sqlEx.Message}."); return(null); } catch (Exception ex) { logger.Error("Ошибка получения списка абитуриентов, по типу состояния (статуса)."); logger.Error($"Ошибка — {ex.Message}."); return(null); } }