Example #1
0
        public async Task <MemberResponse> UpdateAsync(int id, MemberSaveResource memberSaveResource)
        {
            var existingItem = await _memberRepository.FindByIdAsync(id);

            if (existingItem == null)
            {
                return(new MemberResponse(404, "Item id not found", "Id", "Member id not found."));
            }

            existingItem.Name    = memberSaveResource.Name;
            existingItem.Phone   = memberSaveResource.Phone;
            existingItem.Surname = memberSaveResource.Surname;
            existingItem.Address = memberSaveResource.Address;

            try
            {
                _memberRepository.Update(existingItem);
                var responseResource = _mapper.Map <Member, MemberResource>(existingItem);
                return(new MemberResponse(responseResource));
            }
            catch (Exception ex)
            {
                return(new MemberResponse(400, "Unexpected error", "Error", ex.Message));
            }
        }
Example #2
0
        public async Task <IActionResult> PostAsync([FromBody] MemberSaveResource saveResource)
        {
            var response = await _memberService.SaveAsync(saveResource);

            if (!response.Success)
            {
                return(BadRequest(response.Error));
            }

            return(CreatedAtAction(nameof(GetAsync), new { id = response.Result.Id }, response.Result));
        }
Example #3
0
        public async Task <MemberResponse> SaveAsync(MemberSaveResource memberSaveResource)
        {
            try
            {
                var item = _mapper.Map <MemberSaveResource, Member>(memberSaveResource);
                await _memberRepository.AddAsync(item);

                var responseResource = _mapper.Map <Member, MemberResource>(item);
                return(new MemberResponse(responseResource));
            }
            catch (Exception ex)
            {
                return(new MemberResponse(400, "Unexpected error", "Error", ex.Message));
            }
        }
Example #4
0
        public async Task <IActionResult> PutAsync(int id, [FromBody] MemberSaveResource saveResource)
        {
            var response = await _memberService.UpdateAsync(id, saveResource);

            if (!response.Success && response.Error.Status == 404)
            {
                return(NotFound(response.Error));
            }

            if (!response.Success)
            {
                return(BadRequest(response.Error));
            }

            return(Ok(response.Result));
        }