Beispiel #1
0
        public Task CadastrarAsync(MoradorViewModel morador)
        {
            var request = CreateRequest(ResourceUri, Method.POST);

            request.AddJsonBody(morador);
            return(ExecuteAsync(request));
        }
Beispiel #2
0
        // GET: Morador/Details/5
        public async Task <IActionResult> Details(int id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var morador = _condominioService.ObterMorador(id);

            if (morador == null)
            {
                return(NotFound());
            }

            MoradorViewModel moradorViewModel = new MoradorViewModel
            {
                Bairro     = morador.Familia.Condominio.Bairro,
                Condominio = morador.Familia.Condominio.Nome,
                Familia    = morador.Familia.Nome,
                Nome       = morador.Nome,
                Id         = morador.Id,
                Id_Familia = morador.Id_Familia,
                QuantidadeBichosEstimacao = morador.QuantidadeBichosEstimacao
            };

            return(View(moradorViewModel));
        }
Beispiel #3
0
        public async Task <IActionResult> EditMorador(int id)
        {
            if (!ModelState.IsValid)
            {
                MoradorViewModel view = await GetSelectAptoList(false);

                return(View(view));
            }

            var morador = await this.Morador.GetMorador(id);

            if (morador is null)
            {
                ViewBag.Message = "Ocorreu um erro ao tentar buscar os dados do Morador para edição.";
                return(View());
            }

            MoradorViewModel result = new MoradorViewModel
            {
                Apartamento    = morador.Apartamento,
                CPF            = morador.CPF,
                DataNascimento = morador.DataNascimento,
                EMail          = morador.EMail,
                MoradorId      = morador.MoradorId,
                Nome           = morador.Nome,
                Telefone       = morador.Telefone,
                Apartamentos   = await GetDropDownItemsApartamentos(true)
            };

            //Selecionando o apartamento no DropDown automaticamente.
            result.SelectApartamento = result.Apartamento.ApartamentoId.ToString();

            return(View(result));
        }
Beispiel #4
0
        public async Task <IActionResult> EditMorador(MoradorViewModel view)
        {
            view.Apartamentos = await GetDropDownItemsApartamentos(false);

            if (!ModelState.IsValid)
            {
                return(View(view));
            }

            Morador mrd = new Morador
            {
                Apartamento    = await this.Apartamento.GetApartamento(Convert.ToInt32(view.SelectApartamento)),
                CPF            = view.CPF,
                DataNascimento = view.DataNascimento,
                EMail          = view.EMail,
                MoradorId      = view.MoradorId,
                Nome           = view.Nome,
                Telefone       = view.Telefone
            };

            var response = await this.Morador.PutMorador(mrd);

            if (response.Error)
            {
                ViewBag.Message = response.Message;
            }
            else
            {
                ViewBag.Status = "Morador atualizado com sucesso.";
            }

            return(View(view));
        }
        // GET: Morador/Edit/5
        public async Task <IActionResult> Edit(int id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var morador = _condominioService.ObterMorador(id);

            if (morador == null)
            {
                return(NotFound());
            }

            MoradorViewModel moradorViewModel = new MoradorViewModel
            {
                Bairro     = morador.Familia.Condominio.Bairro,
                Condominio = morador.Familia.Condominio.Nome,
                Familia    = morador.Familia.Nome,
                Nome       = morador.Nome,
                Id         = morador.Id,
                Id_Familia = morador.Id_Familia,
                QuantidadeBichosEstimacao = morador.QuantidadeBichosEstimacao
            };

            ViewBag.Familia = new SelectList
                                  (_condominioService.ListarFamilias(),
                                  "Id",
                                  "Nome"
                                  );


            return(View(moradorViewModel));
        }
        public async Task <IActionResult> Atualizar(Guid id, MoradorViewModel morador)
        {
            ModelState.Remove("FotoImagem");
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            if (!MoradorExists(id))
            {
                return(NotFound());
            }

            if (id != morador.Id)
            {
                NotificarErro("Id informado está diferente do Id informado na query");
                return(CustomResponse());
            }

            if (!string.IsNullOrEmpty(morador.FotoImagem))
            {
                string imageName = Guid.NewGuid() + "." + morador.Foto.Split(".")[1];
                if (!UploadFoto(morador.FotoImagem, imageName))
                {
                    return(CustomResponse());
                }

                morador.Foto = imageName;
            }

            await _moradorService.Update(_mapper.Map <Morador>(morador));

            return(CustomResponse());
        }
Beispiel #7
0
        public Task AtualizarAsync(MoradorViewModel morador)
        {
            var request = CreateRequest($"{ResourceUri}/{morador.Id}", Method.PUT);

            request.AddJsonBody(morador);

            return(ExecuteAsync(request));
        }
Beispiel #8
0
        private async Task <MoradorViewModel> GetSelectAptoList(bool force)
        {
            MoradorViewModel morador = new MoradorViewModel();

            morador.Apartamentos = await GetDropDownItemsApartamentos(force);

            TempData["ListaApartamentos"] = JsonConvert.SerializeObject(this.Apartamentos);
            return(morador);
        }
Beispiel #9
0
        public async Task <IActionResult> CreateMorador(MoradorViewModel morador)
        {
            if (!ModelState.IsValid)
            {
                MoradorViewModel errorMoradorViewModel = await GetSelectAptoList(false);

                return(View(errorMoradorViewModel));
            }

            //Busca o apartamento ainda não cadastrado na base que vem desde a View CreateApartamento
            HttpContext.Session.TryGetValue("Apartamento", out byte[] jsonData);
            if (jsonData != null)
            {
                morador.Apartamento = JsonConvert.DeserializeObject <Apartamento>(Encoding.ASCII.GetString(jsonData));
            }
            else if (string.IsNullOrEmpty(morador.SelectApartamento))
            {
                MoradorViewModel errorMoradorViewModel = await GetSelectAptoList(false);

                ViewBag.Message = "É obrigatório o vínculo de um apartamento ao morador";
                return(View(errorMoradorViewModel));
            }

            Morador mrd = new Morador()
            {
                CPF            = morador.CPF,
                DataNascimento = morador.DataNascimento,
                EMail          = morador.EMail,
                Nome           = morador.Nome,
                Telefone       = morador.Telefone,
                Apartamento    = await GetApartamentoFromView(morador)
            };

            var response = await this.Morador.PostMorador(mrd);

            if (response.Error)
            {
                ViewBag.Message = response.Message;
            }
            else
            {
                ViewBag.Status = "Morador incluído com sucesso!";
            }

            morador.Apartamentos = await GetDropDownItemsApartamentos(true);

            return(View(morador));
        }
        public async Task <ActionResult <MoradorViewModel> > Cadastrar(MoradorViewModel morador)
        {
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            string imageName = Guid.NewGuid() + "." + morador.Foto.Split(".")[1];

            if (!UploadFoto(morador.FotoImagem, imageName))
            {
                return(CustomResponse());
            }

            morador.Foto = imageName;
            await _moradorService.Add(_mapper.Map <Morador>(morador));

            return(CustomResponse(morador));
        }
Beispiel #11
0
        public async Task <IActionResult> Create([Bind("Id,Id_Familia,Nome,QuantidadeBichosEstimacao,Familia,Condominio,Bairro")] MoradorViewModel moradorViewModel)
        {
            if (ModelState.IsValid)
            {
                var     familia = _condominioService.ListarFamilias().Where(o => o.Id == moradorViewModel.Id_Familia).FirstOrDefault();
                Morador morador = new Morador
                {
                    Familia    = familia,
                    Id_Familia = familia.Id,
                    Nome       = moradorViewModel.Nome,
                    QuantidadeBichosEstimacao = moradorViewModel.QuantidadeBichosEstimacao
                };


                _condominioService.SalvarMorador(morador);

                return(RedirectToAction(nameof(Index)));
            }
            return(View(moradorViewModel));
        }
Beispiel #12
0
        public async Task <IActionResult> CreateMorador()
        {
            MoradorViewModel morador = await GetSelectAptoList(false);

            //Se entrar significa que o usuário vem da sessão de cadastro do Apartamento.
            //Ação necessária para garantir que o Apartamento somente seja incluído junto de um morador.
            if (TempData["Apartamento"] != null)
            {
                string jsonApartamento = TempData["Apartamento"] as string;
                byte[] jsonData        = Encoding.ASCII.GetBytes(jsonApartamento);
                HttpContext.Session.Set("Apartamento", jsonData);
                morador.Apartamento = JsonConvert.DeserializeObject <Apartamento>(TempData["Apartamento"] as string);
            }
            else
            {
                //para garantir que se o usuário iniciar um novo cadastro, não busque algo da sessão.
                HttpContext.Session.Remove("Apartamento");
            }
            return(View(morador));
        }
Beispiel #13
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Id_Familia,Nome,QuantidadeBichosEstimacao,Familia,Condominio,Bairro")] MoradorViewModel moradorViewModel)
        {
            if (id != moradorViewModel.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    var familia = _condominioService.ListarFamilias().Where(o => o.Id == moradorViewModel.Id_Familia).FirstOrDefault();

                    Morador morador = new Morador
                    {
                        Familia    = familia,
                        Id_Familia = familia.Id,
                        Id         = moradorViewModel.Id,
                        Nome       = moradorViewModel.Nome,
                        QuantidadeBichosEstimacao = moradorViewModel.QuantidadeBichosEstimacao
                    };

                    _condominioService.SalvarMorador(morador);
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!MoradorViewModelExists(moradorViewModel.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(moradorViewModel));
        }
Beispiel #14
0
 public async Task Atualizar([FromBody] MoradorViewModel morador)
 {
     await _moradorService.AtualizarAsync(morador);
 }
Beispiel #15
0
 public async Task Cadastrar([FromBody] MoradorViewModel morador)
 {
     await _moradorService.CadastrarAsync(morador);
 }
Beispiel #16
0
        private async Task <Apartamento> GetApartamentoFromView(MoradorViewModel morador)
        {
            this.Apartamentos = await FillApartamentosList(false);

            return(string.IsNullOrEmpty(morador.SelectApartamento) ? morador.Apartamento : this.Apartamentos.First(x => x.ApartamentoId.Equals(Convert.ToInt32(morador.SelectApartamento))));
        }