diff options
| author | Kamen Mladenov <kamen.d.mladenov@protonmail.com> | 2021-04-09 19:51:35 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-04-09 19:51:35 +0300 |
| commit | 233f38915ba0079079233eff55434ef349c05c45 (patch) | |
| tree | 6c5f69017865bcab87355e910c87339453da1406 /src/DevHive.Web/Controllers/LanguageController.cs | |
| parent | f4a70c6430db923af9fa9958a11c2d6612cb52cc (diff) | |
| parent | a992357efcf1bc1ece81b95ecee5e05a0b73bfdc (diff) | |
| download | DevHive-heroku/main.tar DevHive-heroku/main.tar.gz DevHive-heroku/main.zip | |
Merge pull request #28 from Team-Kaleidoscope/devHEADv0.2mainheroku/main
Second stage: Complete
Diffstat (limited to 'src/DevHive.Web/Controllers/LanguageController.cs')
| -rw-r--r-- | src/DevHive.Web/Controllers/LanguageController.cs | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/src/DevHive.Web/Controllers/LanguageController.cs b/src/DevHive.Web/Controllers/LanguageController.cs deleted file mode 100644 index 5b0d5de..0000000 --- a/src/DevHive.Web/Controllers/LanguageController.cs +++ /dev/null @@ -1,87 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using AutoMapper; -using DevHive.Services.Interfaces; -using DevHive.Services.Models.Language; -using DevHive.Web.Models.Language; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Mvc; - -namespace DevHive.Web.Controllers -{ - [ApiController] - [Route("/api/[controller]")] - public class LanguageController - { - private readonly ILanguageService _languageService; - private readonly IMapper _languageMapper; - - public LanguageController(ILanguageService languageService, IMapper mapper) - { - this._languageService = languageService; - this._languageMapper = mapper; - } - - [HttpPost] - [Authorize(Roles = "Admin")] - public async Task<IActionResult> Create([FromBody] CreateLanguageWebModel createLanguageWebModel) - { - CreateLanguageServiceModel languageServiceModel = this._languageMapper.Map<CreateLanguageServiceModel>(createLanguageWebModel); - - Guid id = await this._languageService.CreateLanguage(languageServiceModel); - - return id == Guid.Empty ? - new BadRequestObjectResult($"Could not create language {createLanguageWebModel.Name}") : - new OkObjectResult(new { Id = id }); - } - - [HttpGet] - [AllowAnonymous] - public async Task<IActionResult> GetById(Guid id) - { - ReadLanguageServiceModel languageServiceModel = await this._languageService.GetLanguageById(id); - ReadLanguageWebModel languageWebModel = this._languageMapper.Map<ReadLanguageWebModel>(languageServiceModel); - - return new OkObjectResult(languageWebModel); - } - - [HttpGet] - [Route("GetLanguages")] - [Authorize(Roles = "User,Admin")] - public IActionResult GetAllExistingLanguages() - { - HashSet<ReadLanguageServiceModel> languageServiceModels = this._languageService.GetLanguages(); - HashSet<ReadLanguageWebModel> languageWebModels = this._languageMapper.Map<HashSet<ReadLanguageWebModel>>(languageServiceModels); - - return new OkObjectResult(languageWebModels); - } - - [HttpPut] - [Authorize(Roles = "Admin")] - public async Task<IActionResult> Update(Guid id, [FromBody] UpdateLanguageWebModel updateModel) - { - 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] - [Authorize(Roles = "Admin")] - public async Task<IActionResult> Delete(Guid id) - { - bool result = await this._languageService.DeleteLanguage(id); - - if (!result) - return new BadRequestObjectResult("Could not delete Language"); - - return new OkResult(); - } - } -} |
