public IActionResult AdcVaga(AlocacaoDTO alocacaoTemporaria) { if (ModelState.IsValid) { Alocacao alo = new Alocacao(); alo.Id = alocacaoTemporaria.Id; alo.InicioAlocacao = DateTime.Now; alo.Vaga = database.vagas.First(v => v.Id == alocacaoTemporaria.VagaID); database.alocacoes.Add(alo); database.SaveChanges(); var func = database.funcionarios.First(f => f.Id == alocacaoTemporaria.FuncionarioID); func.Alocacao = database.alocacoes.First(a => a.Id == alo.Id); database.SaveChanges(); var vaga = database.vagas.First(v => v.Id == alocacaoTemporaria.VagaID); vaga.QtdVaga = vaga.QtdVaga - 1; database.SaveChanges(); return(RedirectToAction("Alocacao", "Adm")); } else { ViewBag.funcionario = database.funcionarios.Include(f => f.Gft).Include(f => f.FuncionarioTecnologias).ThenInclude(f => f.Tecnologia).Where(f => f.Alocacao == null && f.Status == true).ToList(); ViewBag.vaga = database.vagas.Include(v => v.VagaTecnologias).ThenInclude(v => v.Tecnologia).Where(v => v.QtdVaga > 0 && v.Status == true).ToList(); return(View("../Adm/Alocacao")); } }
public IActionResult Atualizar(AlocacaoDTO alocacaoTemporaria) { ViewBag.Vaga = database.Vagas.ToList(); ViewBag.Funcionario = database.Funcionarios.ToList(); if (ModelState.IsValid) { var alocacao = database.Alocacoes.First(a => a.Id == alocacaoTemporaria.Id); alocacao.InicioAlocacao = alocacaoTemporaria.InicioAlocacao; alocacao.Funcionario = database.Funcionarios.First(f => f.Id == alocacaoTemporaria.FuncionarioId); alocacao.Vaga = database.Vagas.First(vaga => vaga.Id == alocacaoTemporaria.VagaId); var funcionarionovo = database.Funcionarios.First(func => func.Id == alocacaoTemporaria.FuncionarioId); funcionarionovo.Alocado = true; var vaga = database.Vagas.First(vag => vag.Id == alocacaoTemporaria.VagaId); if (vaga.Quantidade <= 1) { vaga.Quantidade = vaga.Quantidade - 1; vaga.Disponivel = false; } else { vaga.Quantidade = vaga.Quantidade - 1; }; database.SaveChanges(); return(RedirectToAction("Alocacao", "Wa")); } else { return(RedirectToAction("Alocacao", "Wa")); } }
public IActionResult EditarAlocacao(int id) { var alocar = database.Alocacoes.Include(v => v.Vaga).Include(f => f.Funcionario).First(a => a.Id == id); AlocacaoDTO alocarView = new AlocacaoDTO(); alocarView.Id = alocar.Id; alocarView.InicioAlocacao = alocar.InicioAlocacao; alocarView.FuncionarioId = alocar.Funcionario.Id; alocarView.VagaId = alocar.Vaga.Id; var funcionario = database.Funcionarios.First(func => func.Id == alocar.Funcionario.Id); funcionario.Alocado = false; database.SaveChanges(); var vaga = database.Vagas.First(vag => vag.Id == alocar.Vaga.Id); vaga.Quantidade = vaga.Quantidade + 1; vaga.Disponivel = true; database.SaveChanges(); ViewBag.Funcionario = database.Funcionarios.ToList(); ViewBag.Vaga = database.Vagas.ToList(); return(View(alocarView)); }
public IActionResult AlocarFuncionario(AlocacaoDTO alocacaoTemp) { if (ModelState.IsValid) { Alocacao alocacao = new Alocacao(); Funcionario funcionario = database.Funcionarios.First(func => func.Id == alocacaoTemp.Funcionario_Id); Vaga vaga = database.Vagas.First(vaga => vaga.Id == alocacaoTemp.Vaga_Id); funcionario.Vaga = vaga; var dataAlocacao = DateTime.Now; alocacao.Funcionario = funcionario; alocacao.Vaga = vaga; alocacao.DataAlocacao = dataAlocacao; database.Alocacoes.Add(alocacao); vaga.Qtd_vaga -= 1; funcionario.isAlocado = true; database.SaveChanges(); return(RedirectToAction("Funcionario", "Funcionario")); } else { return(Content("Dados invalidos")); } }
public IActionResult SalvarAlocacao(AlocacaoDTO alocacaoT) { if (ModelState.IsValid) { Alocacao alocacao = new Alocacao(); alocacao.Vagas = Database.Vagas.First(v => v.Id == alocacaoT.VagaId); alocacao.Funcionarios = Database.Funcionarios.First(f => f.Id == alocacaoT.FuncionarioId); alocacao.Data = DateTime.Now; var FuncionarioAlocado = Database.Funcionarios.First(f => f.Id == alocacaoT.FuncionarioId); var VagaAlocada = Database.Vagas.First(v => v.Id == alocacaoT.VagaId); FuncionarioAlocado.Status = false; VagaAlocada.QuantidadeDeVagas -= 1; if (VagaAlocada.QuantidadeDeVagas <= 0) { VagaAlocada.Status = false; } Database.Alocacao.Add(alocacao); Database.SaveChanges(); return(RedirectToAction("Historico", "Wa")); } else { ViewBag.Vagas = Database.Vagas.Where(n => n.Status == true).ToList(); ViewBag.Funcionarios = Database.Funcionarios.Where(n => n.Status == true).ToList(); return(View("../Wa/Alocacao")); } }
public IActionResult Alocar(AlocacaoDTO alocTemp) { var func = database.Funcionarios.First(x => x.Id == alocTemp.FuncionarioID); database.Funcionarios.Remove(func); AlocacaoDTO aloc = new AlocacaoDTO(); aloc.Registro = DateTime.Now; database.SaveChanges(); return(RedirectToAction("Funcionarios", "Aw")); }
public IActionResult Salvar(AlocacaoDTO AlocacaoTemporaria) { ViewBag.Vaga = database.Vagas.Where(v => v.Disponivel == true).ToList(); ViewBag.Funcionario = database.Funcionarios.Where(f => f.Alocado == false).ToList(); List <string> vagasSelecionadas = new List <string>(); if (ModelState.IsValid) { try{ Alocacao alocacao = new Alocacao(); alocacao.InicioAlocacao = AlocacaoTemporaria.InicioAlocacao; alocacao.Vaga = database.Vagas.Where(v => v.Quantidade >= 1 && v.Disponivel == true).First(vaga => vaga.Id == AlocacaoTemporaria.VagaId); alocacao.Funcionario = database.Funcionarios.Where(f => f.Alocado == false).First(funcionario => funcionario.Id == AlocacaoTemporaria.FuncionarioId); database.Alocacoes.Add(alocacao); var funcionario = database.Funcionarios.First(func => func.Id == AlocacaoTemporaria.FuncionarioId); funcionario.Alocado = true; var vaga = database.Vagas.First(vag => vag.Id == AlocacaoTemporaria.VagaId); if (vaga.Quantidade <= 1) { vaga.Quantidade = vaga.Quantidade - 1; vaga.Disponivel = false; } else { vaga.Quantidade = vaga.Quantidade - 1; }; database.SaveChanges(); return(RedirectToAction("Alocacao", "Wa")); } catch (InvalidOperationException) { return(View("../wa/Alocar")); }; } ViewBag.Vaga = database.Vagas.Where(v => v.Disponivel == true).ToList(); ViewBag.Funcionario = database.Funcionarios.Where(f => f.Alocado == false).ToList(); return(View("../wa/Alocar")); }