diff options
| author | transtrike <transtrike@gmail.com> | 2021-01-17 13:38:24 +0200 |
|---|---|---|
| committer | transtrike <transtrike@gmail.com> | 2021-01-17 13:38:24 +0200 |
| commit | 83f63ad729d585d597bdcf0afc05b7d56344223e (patch) | |
| tree | ede845ad2790fe6f6f975f3cc5d776782adecf59 /src/DevHive.Services/Services | |
| parent | b4454f83c3b7d668fc8b18714a659b91576882be (diff) | |
| download | DevHive-83f63ad729d585d597bdcf0afc05b7d56344223e.tar DevHive-83f63ad729d585d597bdcf0afc05b7d56344223e.tar.gz DevHive-83f63ad729d585d597bdcf0afc05b7d56344223e.zip | |
Lang&Tech layers now return id on Create
Diffstat (limited to 'src/DevHive.Services/Services')
| -rw-r--r-- | src/DevHive.Services/Services/LanguageService.cs | 14 | ||||
| -rw-r--r-- | src/DevHive.Services/Services/PostService.cs | 24 | ||||
| -rw-r--r-- | src/DevHive.Services/Services/TechnologyService.cs | 14 |
3 files changed, 39 insertions, 13 deletions
diff --git a/src/DevHive.Services/Services/LanguageService.cs b/src/DevHive.Services/Services/LanguageService.cs index f457a31..e9c401e 100644 --- a/src/DevHive.Services/Services/LanguageService.cs +++ b/src/DevHive.Services/Services/LanguageService.cs @@ -21,15 +21,21 @@ namespace DevHive.Services.Services #region Create - public async Task<bool> CreateLanguage(CreateLanguageServiceModel createLanguageServiceModel) + public async Task<Guid> CreateLanguage(CreateLanguageServiceModel createLanguageServiceModel) { if (await this._languageRepository.DoesLanguageNameExistAsync(createLanguageServiceModel.Name)) throw new ArgumentException("Language already exists!"); Language language = this._languageMapper.Map<Language>(createLanguageServiceModel); - bool result = await this._languageRepository.AddAsync(language); - - return result; + bool success = await this._languageRepository.AddAsync(language); + + if(success) + { + Language newLanguage = await this._languageRepository.GetByNameAsync(createLanguageServiceModel.Name); + return newLanguage.Id; + } + else + return Guid.Empty; } #endregion diff --git a/src/DevHive.Services/Services/PostService.cs b/src/DevHive.Services/Services/PostService.cs index 6e83ad4..f2f60d1 100644 --- a/src/DevHive.Services/Services/PostService.cs +++ b/src/DevHive.Services/Services/PostService.cs @@ -26,21 +26,35 @@ namespace DevHive.Services.Services } //Create - public async Task<bool> CreatePost(CreatePostServiceModel postServiceModel) + public async Task<Guid> CreatePost(CreatePostServiceModel postServiceModel) { Post post = this._postMapper.Map<Post>(postServiceModel); - return await this._postRepository.AddAsync(post); + bool success = await this._postRepository.AddAsync(post); + + if(success) + { + Post newPost = await this._postRepository.GetPostByIssuerAndTimeCreatedAsync(postServiceModel.IssuerId, postServiceModel.TimeCreated); + return newPost.Id; + } + else + return Guid.Empty; } - public async Task<bool> AddComment(CreateCommentServiceModel commentServiceModel) + public async Task<Guid> AddComment(CreateCommentServiceModel commentServiceModel) { commentServiceModel.TimeCreated = DateTime.Now; Comment comment = this._postMapper.Map<Comment>(commentServiceModel); - bool result = await this._postRepository.AddCommentAsync(comment); + bool success = await this._postRepository.AddCommentAsync(comment); - return result; + if(success) + { + Comment newComment = await this._postRepository.GetCommentByIssuerAndTimeCreatedAsync(commentServiceModel.IssuerId, commentServiceModel.TimeCreated); + return newComment.Id; + } + else + return Guid.Empty; } //Read diff --git a/src/DevHive.Services/Services/TechnologyService.cs b/src/DevHive.Services/Services/TechnologyService.cs index 4e74c83..1b2f0ff 100644 --- a/src/DevHive.Services/Services/TechnologyService.cs +++ b/src/DevHive.Services/Services/TechnologyService.cs @@ -21,15 +21,21 @@ namespace DevHive.Services.Services #region Create - public async Task<bool> Create(CreateTechnologyServiceModel technologyServiceModel) + public async Task<Guid> Create(CreateTechnologyServiceModel technologyServiceModel) { if (await this._technologyRepository.DoesTechnologyNameExistAsync(technologyServiceModel.Name)) throw new ArgumentException("Technology already exists!"); Technology technology = this._technologyMapper.Map<Technology>(technologyServiceModel); - bool result = await this._technologyRepository.AddAsync(technology); - - return result; + bool success = await this._technologyRepository.AddAsync(technology); + + if(success) + { + Technology newTechnology = await this._technologyRepository.GetByNameAsync(technologyServiceModel.Name); + return newTechnology.Id; + } + else + return Guid.Empty; } #endregion |
