Exemplo n.º 1
0
        public async Task <IResult> Add(ShelterDto dto)
        {
            var postData = JsonConvert.SerializeObject(dto);

            var content = new StringContent(postData, Encoding.UTF8, ContentTypes.JSON);

            var token = _httpContextAccessor.HttpContext.Session.GetString("token");

            if (string.IsNullOrEmpty(token))
            {
                return(new Result(false, System.Net.HttpStatusCode.BadRequest));
            }

            _httpClient.AddJwtTokenToHeader(token);

            var response = await _httpClient.PostAsync("admin/shelter", content);

            if (response.IsSuccessStatusCode)
            {
                return(new Result());
            }
            else
            {
                return(new Result(false, System.Net.HttpStatusCode.BadRequest));
            }
        }
Exemplo n.º 2
0
        public IActionResult CreateShelter([FromBody] ShelterDto shelterToAdd)
        {
            if (shelterToAdd == null)
            {
                return(BadRequest(ModelState));
            }

            if (shelterRepo.ShelterExists(shelterToAdd.Name))
            {
                ModelState.AddModelError("", "Shelter already exist");
                return(StatusCode(404, ModelState));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var shelter = mapper.Map <Shelter>(shelterToAdd);

            if (!shelterRepo.CreateShelter(shelter))
            {
                ModelState.AddModelError("", $"Error with {shelter.Name}");
                return(StatusCode(500, ModelState));
            }
            return(CreatedAtRoute("GetShelter", new { version = HttpContext.GetRequestedApiVersion().ToString(), shelterId = shelter.Id }, shelter));
        }
Exemplo n.º 3
0
        public async Task <IResult> Update(ShelterDto dto)
        {
            if (dto.ShelterId <= 0)
            {
                return(new ErrorResult());
            }

            var postData = JsonConvert.SerializeObject(dto);

            var content = new StringContent(postData, Encoding.UTF8, ContentTypes.JSON);

            var token = _httpContextAccessor.HttpContext.Session.GetString("token");

            if (string.IsNullOrEmpty(token))
            {
                return(new ErrorResult("Unauthorized."));
            }


            _httpClient.AddJwtTokenToHeader(token);

            var response = await _httpClient.PutAsync("admin/shelter", content);

            if (response.IsSuccessStatusCode)
            {
                return(new Result());
            }
            else
            {
                return(new ErrorResult(await response.Content.ReadAsStringAsync()));
            }
        }
        public async Task <IActionResult> AddShelterWaitingForApproval([ModelBinder(BinderType = typeof(JsonModelBinder))] ShelterDto shelter)
        {
            var serviceResponse = await shelterService.AddShelterWaitingForApproval(shelter);

            var controllerResponse = mapper.Map <ControllerResponse <ShelterDto> >(serviceResponse);

            return(StatusCode(serviceResponse.StatusCode, controllerResponse));
        }
Exemplo n.º 5
0
        public async Task <IActionResult> Update(ShelterDto dto)
        {
            var result = await _shelterService.Update(dto);

            if (result.Success)
            {
                Alert("Güncelleme işlemi başarılı.");
                return(RedirectToAction("Update", dto.ShelterId));
            }
            else
            {
                ErrorAlert("Güncelleme işlemi başarısız.: " + result.Message);
                return(View("AddOrUpdate", dto));
            }
        }
Exemplo n.º 6
0
        public async Task <IActionResult> Add(ShelterDto dto)
        {
            var result = await _shelterService.Add(dto);

            if (result.Success)
            {
                Alert("Ekleme işlemi başarılı.");
                return(RedirectToAction("Index"));
            }
            else
            {
                ErrorAlert("Ekleme işlemi başarısız." + result.Message);
                return(View("AddOrUpdate", dto));
            }
        }
Exemplo n.º 7
0
        public async Task <ServiceResponse <ShelterDto, GetAccountDto> > AddShelter(ShelterDto shelterDto)
        {
            var shelter = mapper.Map <Shelter>(shelterDto);

            shelter.IsApproved = true;
            var addShelterResult = await shelterRepository.AddShelter(shelter);

            var serviceResponse = mapper.Map <RepositoryResponse <Shelter>, ServiceResponse <ShelterDto, GetAccountDto> >(addShelterResult);

            if (addShelterResult.Successful)
            {
                var addAccountResult = await accountService.AddShelterAccount(addShelterResult.Data);

                if (addAccountResult.Successful)
                {
                    serviceResponse.Metadata = addAccountResult.Data;
                }
                else
                {
                    serviceResponse.Data       = null;
                    serviceResponse.Successful = false;
                    var deleteResult = await shelterRepository.DeleteShelter(addShelterResult.Data.Id);

                    if (deleteResult.Successful)
                    {
                        serviceResponse.Message = $"Failed to add shelter acccount: {addAccountResult.Message}";
                    }
                    else
                    {
                        serviceResponse.Message = $"Data corrupted! Failed to add shelter account and remove shelter after failing to add acccount: {addAccountResult.Message} {deleteResult.Message}";
                    }
                }
            }
            else
            {
                serviceResponse.StatusCode = StatusCodes.Status400BadRequest;
            }

            return(serviceResponse);
        }
Exemplo n.º 8
0
        public IActionResult UpdateShelter(int shelterId, [FromBody] ShelterDto shelterToUpdate)
        {
            if (shelterToUpdate == null || shelterId != shelterToUpdate.Id)
            {
                return(BadRequest(ModelState));
            }

            if (shelterRepo.ShelterExists(shelterToUpdate.Name))
            {
                ModelState.AddModelError("", "Shelter already exist");
                return(StatusCode(404, ModelState));
            }

            var shelter = mapper.Map <Shelter>(shelterToUpdate);

            if (!shelterRepo.UpdateShelter(shelter))
            {
                ModelState.AddModelError("", $"Error with {shelter.Name}");
                return(StatusCode(500, ModelState));
            }
            return(NoContent());
        }
Exemplo n.º 9
0
        public async Task <IActionResult> Add()
        {
            var dto = new ShelterDto();

            return(View("AddOrUpdate", dto));
        }
Exemplo n.º 10
0
        public async Task <ServiceResponse <ShelterDto> > AddShelterWaitingForApproval(ShelterDto shelterDto)
        {
            var shelter = mapper.Map <Shelter>(shelterDto);

            shelter.IsApproved = false;
            var addShelterResult = await shelterRepository.AddShelter(shelter);

            var serviceResponse = mapper.Map <ServiceResponse <ShelterDto> >(addShelterResult);

            if (!serviceResponse.Successful)
            {
                serviceResponse.StatusCode = StatusCodes.Status400BadRequest;
            }

            return(serviceResponse);
        }