Ejemplo n.º 1
0
        public IActionResult Edit(long?id)
        {
            if (!string.IsNullOrEmpty(HttpContext.Session.GetString("User")))
            {
                if (id == null)
                {
                    return(BadRequest());
                }
                BeneficioColaboradorDTO beneficio = Repository.GetBeneficioColaborador(id.Value);

                var pessoas = Pessoa_Repository.ListarPessoas();
                if (HttpContext.Session.GetString("UserRole") == "Colaborador")
                {
                    pessoas = pessoas.Where(x => x.Id == Convert.ToInt64(HttpContext.Session.GetString("UserId"))).ToList();
                }

                ViewBag.Pessoas    = pessoas;
                ViewBag.Beneficios = Beneficio_Repository.ListarBeneficios();

                if (beneficio == null)
                {
                    return(NotFound());
                }
                return(View(beneficio));
            }
            else
            {
                return(RedirectToAction("NaoAutorizado", "Home", new { area = "" }));
            }
        }
Ejemplo n.º 2
0
        public IActionResult Delete(BeneficioColaboradorDTO beneficioColaborador)
        {
            BeneficioColaboradorDTO entity = Repository.GetBeneficioColaborador(beneficioColaborador.Id);

            if (entity != null)
            {
                Repository.Delete(beneficioColaborador.Id);
                Log_Repository.Add(new LogDTO(entity, "Excluído"));
                TempData["Message"] = "Benefício foi removido";
            }
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 3
0
        public IActionResult Create(BeneficioColaboradorDTO beneficioColaborador)
        {
            var retorno = Validate(beneficioColaborador);

            if (!string.IsNullOrEmpty(retorno))
            {
                return(BadRequest(retorno));
            }

            Repository.Add(beneficioColaborador);
            Log_Repository.Add(new LogDTO(beneficioColaborador, "Incluído"));
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 4
0
        private string Validate(BeneficioColaboradorDTO beneficio)
        {
            var pessoa     = Pessoa_Repository.GetPessoa(beneficio.Colaborador.Id);
            var beneficios = Repository.ListarBeneficiosPorPessoa(beneficio.Colaborador.Id)?
                             .Where(x => x.Id != beneficio.Id)?.Sum(x => x.ValorTotal);

            if ((pessoa.Cargo.ValorBeneficio - beneficios.Value - beneficio.ValorTotal) < 0)
            {
                return("Valor de benefício utilizado é maior do que o disponível!");
            }

            return(string.Empty);
        }
Ejemplo n.º 5
0
        public void Update(BeneficioColaboradorDTO item)
        {
            BeneficioColaborador beneficioColaborador = _context.BeneficiosColaboradores.FirstOrDefault(x => x.Id == item.Id);

            beneficioColaborador.Quantidade = item.Quantidade;
            beneficioColaborador.ValorTotal = item.ValorTotal;

            if (item.Colaborador != null)
            {
                beneficioColaborador.ColaboradorId = item.Colaborador.Id;
            }
            if (item.Beneficio != null)
            {
                beneficioColaborador.BeneficioId = item.Beneficio.Id;
            }

            _context.SaveChanges();
        }
Ejemplo n.º 6
0
 public IActionResult Details(long?id)
 {
     if (!string.IsNullOrEmpty(HttpContext.Session.GetString("User")))
     {
         if (id == null)
         {
             return(BadRequest());
         }
         BeneficioColaboradorDTO beneficio = Repository.GetBeneficioColaborador(id.Value);
         if (beneficio == null)
         {
             return(NotFound());
         }
         return(View(beneficio));
     }
     else
     {
         return(RedirectToAction("NaoAutorizado", "Home", new { area = "" }));
     }
 }
Ejemplo n.º 7
0
        public void Add(BeneficioColaboradorDTO item)
        {
            var beneficioColaborador = new BeneficioColaborador
            {
                Quantidade = item.Quantidade,
                ValorTotal = item.ValorTotal
            };

            if (item.Colaborador != null)
            {
                beneficioColaborador.ColaboradorId = item.Colaborador.Id;
            }
            if (item.Beneficio != null)
            {
                beneficioColaborador.BeneficioId = item.Beneficio.Id;
            }

            _context.BeneficiosColaboradores.Add(beneficioColaborador);
            _context.SaveChanges();
        }
Ejemplo n.º 8
0
        public IActionResult Edit(BeneficioColaboradorDTO beneficioColaborador)
        {
            if (ModelState.IsValid)
            {
                var retorno = Validate(beneficioColaborador);
                if (!string.IsNullOrEmpty(retorno))
                {
                    return(BadRequest(retorno));
                }

                var entity = Repository.GetBeneficioColaborador(beneficioColaborador.Id);
                Repository.Update(beneficioColaborador);

                #region Log

                if (entity.Colaborador?.Id != beneficioColaborador.Colaborador?.Id)
                {
                    var pessoa = Pessoa_Repository.GetPessoa(beneficioColaborador.Colaborador.Id);
                    Log_Repository.Add(new LogDTO(entity, "Alterado", "Colaborador", entity.Colaborador.Nome, pessoa.Nome));
                }
                if (entity.Beneficio?.Id != beneficioColaborador.Beneficio?.Id)
                {
                    var beneficio = Beneficio_Repository.GetBeneficio(beneficioColaborador.Beneficio.Id);
                    Log_Repository.Add(new LogDTO(entity, "Alterado", "Benefício", entity.Beneficio.Nome, beneficio.Nome));
                }
                if (entity.Quantidade != beneficioColaborador.Quantidade)
                {
                    Log_Repository.Add(new LogDTO(entity, "Alterado", "Quantidade", entity.Quantidade.ToString(), beneficioColaborador.Quantidade.ToString()));
                }
                if (entity.ValorTotal != beneficioColaborador.ValorTotal)
                {
                    Log_Repository.Add(new LogDTO(entity, "Alterado", "ValorTotal", entity.ValorTotal.ToString(), beneficioColaborador.ValorTotal.ToString()));
                }

                #endregion

                return(RedirectToAction("Index"));
            }
            return(View(beneficioColaborador));
        }