/// <summary> /// Проверяет наличие у пользователя наличия документов указанной группы типов /// </summary> /// <param name="userName"></param> /// <param name="fileDataTypeGroup"></param> /// <returns></returns> public bool IsLoadedUserDocument(string userName, FileDataTypeGroupEnum fileDataTypeGroup) { var appUser = GetAppUser(userName); if (appUser == null) { throw new Exception($"Пользователь {userName} не найден!"); } bool isLoadedUserDocuments = IsLoadedUserDocument(appUser, fileDataTypeGroup); return(isLoadedUserDocuments); }
/// <summary> /// Проверяет наличие у пользователя документов указанной группы типов /// </summary> /// <param name="appUser"></param> /// <param name="fileDataTypeGroup"></param> /// <returns></returns> public bool IsLoadedUserDocument(AppUser appUser, FileDataTypeGroupEnum fileDataTypeGroup) { var fileDataTypes = _fileModelRepository.GetFileDataTypes(fileDataTypeGroup); foreach (var fileDataType in fileDataTypes) { bool isLoadedFile = appUser.UserDocuments.Any(u => u.FileDataTypeId == fileDataType.FileDataTypeId); if (isLoadedFile) { return(true); } } return(false); }
/// <summary> /// Возвращает типы файлов для заданной группы /// </summary> /// <param name="fileDataTypeGroup"></param> /// <returns></returns> public IQueryable <FileDataType> GetFileDataTypes(FileDataTypeGroupEnum fileDataTypeGroup) { var fileDataTypes = _context.FileDataTypes.Where(f => f.FileDataTypeGroupId == (int)fileDataTypeGroup); return(fileDataTypes); }
/// <summary> /// Возвращает документы пользователя указанного типа /// </summary> /// <param name="educationDocuments"></param> /// <returns></returns> private IQueryable <UserDocument> GetUserDocuments(FileDataTypeGroupEnum fileDataTypeGroup) { var userDocuments = UserDocuments.Where(ud => ud.FileDataType.FileDataTypeGroupId == (int)fileDataTypeGroup); return(userDocuments); }