diff options
Diffstat (limited to 'src/DevHive.Services/Services')
| -rw-r--r-- | src/DevHive.Services/Services/LanguageService.cs | 10 | ||||
| -rw-r--r-- | src/DevHive.Services/Services/TechnologyService.cs | 10 | ||||
| -rw-r--r-- | src/DevHive.Services/Services/UserService.cs | 93 |
3 files changed, 18 insertions, 95 deletions
diff --git a/src/DevHive.Services/Services/LanguageService.cs b/src/DevHive.Services/Services/LanguageService.cs index 5b697cd..12e230e 100644 --- a/src/DevHive.Services/Services/LanguageService.cs +++ b/src/DevHive.Services/Services/LanguageService.cs @@ -35,9 +35,9 @@ namespace DevHive.Services.Services #region Read - public async Task<LanguageServiceModel> GetLanguageById(Guid languageId) + public async Task<LanguageServiceModel> GetLanguageById(Guid id) { - Language language = await this._languageRepository.GetByIdAsync(languageId); + Language language = await this._languageRepository.GetByIdAsync(id); if (language == null) throw new ArgumentException("The language does not exist"); @@ -66,12 +66,12 @@ namespace DevHive.Services.Services #region Delete - public async Task<bool> DeleteLanguage(Guid languageId) + public async Task<bool> DeleteLanguage(Guid id) { - if (!await this._languageRepository.DoesLanguageExistAsync(languageId)) + if (!await this._languageRepository.DoesLanguageExistAsync(id)) throw new ArgumentException("Language does not exist!"); - Language language = await this._languageRepository.GetByIdAsync(languageId); + Language language = await this._languageRepository.GetByIdAsync(id); return await this._languageRepository.DeleteAsync(language); } #endregion diff --git a/src/DevHive.Services/Services/TechnologyService.cs b/src/DevHive.Services/Services/TechnologyService.cs index c088281..4e74c83 100644 --- a/src/DevHive.Services/Services/TechnologyService.cs +++ b/src/DevHive.Services/Services/TechnologyService.cs @@ -35,9 +35,9 @@ namespace DevHive.Services.Services #region Read - public async Task<CreateTechnologyServiceModel> GetTechnologyById(Guid technologyId) + public async Task<CreateTechnologyServiceModel> GetTechnologyById(Guid id) { - Technology technology = await this._technologyRepository.GetByIdAsync(technologyId); + Technology technology = await this._technologyRepository.GetByIdAsync(id); if (technology == null) throw new ArgumentException("The technology does not exist"); @@ -64,12 +64,12 @@ namespace DevHive.Services.Services #endregion #region Delete - public async Task<bool> DeleteTechnology(Guid technologyId) + public async Task<bool> DeleteTechnology(Guid id) { - if (!await this._technologyRepository.DoesTechnologyExistAsync(technologyId)) + if (!await this._technologyRepository.DoesTechnologyExistAsync(id)) throw new ArgumentException("Technology does not exist!"); - Technology technology = await this._technologyRepository.GetByIdAsync(technologyId); + Technology technology = await this._technologyRepository.GetByIdAsync(id); bool result = await this._technologyRepository.DeleteAsync(technology); return result; diff --git a/src/DevHive.Services/Services/UserService.cs b/src/DevHive.Services/Services/UserService.cs index d9e87e0..cbcb6b3 100644 --- a/src/DevHive.Services/Services/UserService.cs +++ b/src/DevHive.Services/Services/UserService.cs @@ -108,46 +108,6 @@ namespace DevHive.Services.Services await this._userRepository.AddFriendToUserAsync(user, friend) : throw new ArgumentException("Invalid user!"); } - - public async Task<bool> AddLanguageToUser(Guid userId, LanguageServiceModel languageServiceModel) - { - bool userExists = await this._userRepository.DoesUserExistAsync(userId); - bool languageExists = await this._languageRepository.DoesLanguageExistAsync(languageServiceModel.Id); - - if (!userExists) - throw new ArgumentException("User does not exist!"); - - if (!languageExists) - throw new ArgumentException("Language does noy exist!"); - - User user = await this._userRepository.GetByIdAsync(userId); - Language language = await this._languageRepository.GetByIdAsync(languageServiceModel.Id); - - if (this._userRepository.DoesUserHaveThisLanguage(user, language)) - throw new ArgumentException("User already has this language!"); - - return await this._userRepository.AddLanguageToUserAsync(user, language); - } - - public async Task<bool> AddTechnologyToUser(Guid userId, TechnologyServiceModel technologyServiceModel) - { - bool userExists = await this._userRepository.DoesUserExistAsync(userId); - bool technologyExists = await this._technologyRepository.DoesTechnologyExistAsync(technologyServiceModel.Id); - - if (!userExists) - throw new ArgumentException("User does not exist!"); - - if (!technologyExists) - throw new ArgumentException("Technology does not exist!"); - - Technology technology = await this._technologyRepository.GetByIdAsync(technologyServiceModel.Id); - User user = await this._userRepository.GetByIdAsync(userId); - - if (this._userRepository.DoesUserHaveThisTechnology(user, technology)) - throw new ArgumentException("User already has this language!"); - - return await this._userRepository.AddTechnologyToUserAsync(user, technology); - } #endregion #region Read @@ -182,6 +142,8 @@ namespace DevHive.Services.Services && await this._userRepository.DoesUsernameExistAsync(updateModel.UserName)) throw new ArgumentException("Username already exists!"); + //Add validations for everything else + User user = this._userMapper.Map<User>(updateModel); bool result = await this._userRepository.EditAsync(user); @@ -208,61 +170,22 @@ namespace DevHive.Services.Services public async Task<bool> RemoveFriend(Guid userId, Guid friendId) { - Task<bool> userExists = this._userRepository.DoesUserExistAsync(userId); - Task<bool> friendExists = this._userRepository.DoesUserExistAsync(friendId); - - await Task.WhenAll(userExists, friendExists); + bool userExists = await this._userRepository.DoesUserExistAsync(userId); + bool friendExists = await this._userRepository.DoesUserExistAsync(friendId); - if (!userExists.Result) + if (!userExists) throw new ArgumentException("User doesn't exist!"); - if (!friendExists.Result) + if (!friendExists) throw new ArgumentException("Friend doesn't exist!"); if (!await this._userRepository.DoesUserHaveThisFriendAsync(userId, friendId)) throw new ArgumentException("This ain't your friend, amigo."); - return await this.RemoveFriend(userId, friendId); - } - - public async Task<bool> RemoveLanguageFromUser(Guid userId, LanguageServiceModel languageServiceModel) - { - bool userExists = await this._userRepository.DoesUserExistAsync(userId); - bool languageExists = await this._languageRepository.DoesLanguageExistAsync(languageServiceModel.Id); - - if (!userExists) - throw new ArgumentException("User does not exist!"); - - if (!languageExists) - throw new ArgumentException("Language does not exist!"); - User user = await this._userRepository.GetByIdAsync(userId); - Language language = await this._languageRepository.GetByIdAsync(languageServiceModel.Id); - - if (!this._userRepository.DoesUserHaveThisLanguage(user, language)) - throw new ArgumentException("User does not have this language!"); - - return await this._userRepository.RemoveLanguageFromUserAsync(user, language); - } - - public async Task<bool> RemoveTechnologyFromUser(Guid userId, TechnologyServiceModel technologyServiceModel) - { - bool userExists = await this._userRepository.DoesUserExistAsync(userId); - bool technologyExists = await this._technologyRepository.DoesTechnologyExistAsync(technologyServiceModel.Id); - - if (!userExists) - throw new ArgumentException("User does not exist!"); - - if (!technologyExists) - throw new ArgumentException("Language does not exist!"); - - User user = await this._userRepository.GetByIdAsync(userId); - Technology technology = await this._technologyRepository.GetByIdAsync(technologyServiceModel.Id); - - if (!this._userRepository.DoesUserHaveThisTechnology(user, technology)) - throw new ArgumentException("User does not have this technology!"); + User homie = await this._userRepository.GetByIdAsync(friendId); - return await this._userRepository.RemoveTechnologyFromUserAsync(user, technology); + return await this._userRepository.RemoveFriendAsync(user, homie); } #endregion |
