diff options
| author | Danail Dimitrov <danaildimitrov321@gmail.com> | 2020-12-16 22:29:27 +0200 |
|---|---|---|
| committer | Danail Dimitrov <danaildimitrov321@gmail.com> | 2020-12-16 22:29:27 +0200 |
| commit | 1d696036bb0afa88a1a88da8dc8e5cfa9d2944cd (patch) | |
| tree | 4f902005da65f7346a0a7d44a113514fee6fbf3a /src/DevHive.Web/Controllers/LanguageController.cs | |
| parent | bae749b5a0e53709a0a072f89105f300536561ad (diff) | |
| download | DevHive-1d696036bb0afa88a1a88da8dc8e5cfa9d2944cd.tar DevHive-1d696036bb0afa88a1a88da8dc8e5cfa9d2944cd.tar.gz DevHive-1d696036bb0afa88a1a88da8dc8e5cfa9d2944cd.zip | |
Refactored LanguageController and Language web models
Diffstat (limited to 'src/DevHive.Web/Controllers/LanguageController.cs')
| -rw-r--r-- | src/DevHive.Web/Controllers/LanguageController.cs | 44 |
1 files changed, 34 insertions, 10 deletions
diff --git a/src/DevHive.Web/Controllers/LanguageController.cs b/src/DevHive.Web/Controllers/LanguageController.cs index 0109cbc..f6cd3e6 100644 --- a/src/DevHive.Web/Controllers/LanguageController.cs +++ b/src/DevHive.Web/Controllers/LanguageController.cs @@ -23,26 +23,50 @@ namespace DevHive.Web.Controllers } [HttpPost] - public Task<IActionResult> Create(CreateLanguageWebModel createLanguageWebModel) + public async Task<IActionResult> Create([FromBody] LanguageWebModel languageWebModel) { - LanguageServiceModel languageServiceModel = this._languageMapper.Map<LanguageServiceModel>(createLanguageWebModel); - - return this._languageService.CreateLanguage(languageServiceModel); + LanguageServiceModel languageServiceModel = this._languageMapper.Map<LanguageServiceModel>(languageWebModel); + + bool result = await this._languageService.CreateLanguage(languageServiceModel); + + if(!result) + return new BadRequestObjectResult("Could not create Language"); + + return new OkResult(); } [HttpGet] - public Task<IActionResult> GetById(Guid id) + public async Task<IActionResult> GetById(Guid id) { - return this._languageService.GetLanguageById(id); - } + LanguageServiceModel languageServiceModel = await this._languageService.GetLanguageById(id); + LanguageWebModel languageWebModel = this._languageMapper.Map<LanguageWebModel>(languageServiceModel); + return new OkObjectResult(languageWebModel); + } [HttpPut] - public Task<IActionResult> Update(UpdateLanguageWebModel updateLanguageWebModel) + public async Task<IActionResult> Update(Guid id, [FromBody] UpdateLanguageWebModel updateModel) { - LanguageServiceModel languageServiceModel = this._languageMapper.Map<LanguageServiceModel>(updateLanguageWebModel); + UpdateLanguageServiceModel updatelanguageServiceModel = this._languageMapper.Map<UpdateLanguageServiceModel>(updateModel); + updatelanguageServiceModel.Id = id; + + bool result = await this._languageService.UpdateLanguage(updatelanguageServiceModel); + + if(!result) + return new BadRequestObjectResult("Could not update Language"); + + return new OkResult(); + } + + [HttpDelete] + public async Task<IActionResult> Delete(Guid id) + { + bool result = await this._languageService.DeleteLanguage(id); + + if(!result) + return new BadRequestObjectResult("Could not delete Language"); - return this._languageService.UpdateLanguage(languageServiceModel); + return new OkResult(); } } }
\ No newline at end of file |
