Пример #1
0
        public async Task <IActionResult> AddOrganizationType(int userId, OrganizationTypeDto organizationTypeDto)
        {
            if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            var otFromRepo = await _repo.GetOrganizationTypes();

            foreach (var ot in otFromRepo)
            {
                if (ot.Title.Trim() == organizationTypeDto.Title.Trim())
                {
                    return(BadRequest($"organization type {ot.Title} already exists"));
                }
            }
            organizationTypeDto.Title = organizationTypeDto.Title.Trim();
            var newOt = _mapper.Map <OrganizationType>(organizationTypeDto);

            _repo.Add(newOt);
            if (await _repo.SaveAll())
            {
                var otToReturn = _mapper.Map <OrganizationTypeDto>(newOt);
                return(CreatedAtRoute("GetOrganizationType"
                                      , new { userId = userId, id = newOt.Id }
                                      , otToReturn));
            }
            return(BadRequest("Failed to add the organization type"));
        }
Пример #2
0
        public async Task <IActionResult> UpdateOrganizationType(int id, int userId, OrganizationTypeDto organizationTypeDto)
        {
            if (userId != int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value))
            {
                return(Unauthorized());
            }

            var otFromRepo = await _repo.GetOrganizationType(id);

            organizationTypeDto.Id = otFromRepo.Id;
            _mapper.Map(organizationTypeDto, otFromRepo);

            if (await _repo.SaveAll())
            {
                return(NoContent());
            }

            throw new Exception($"Updating organization type {id} failed on save");
        }