public JsonResult PostCadastrar(DadosProjetoModel dadosProjetoModel) { try { var projeto = new Projeto { Titulo = dadosProjetoModel.Titulo, DataInicio = dadosProjetoModel.DataInicio, DataFim = dadosProjetoModel.DataFim, Descricao = dadosProjetoModel.Descricao, Status = StatusProjeto.NaoIniciado.Status }; _contexto.Projetos.Add(projeto); _contexto.SaveChanges(); var sessao = (SessionModel)Session["Sessao"]; var gerente = _contexto.Gerentes .FirstOrDefault(x => x.PessoaId == sessao.Pessoa.PessoaId); if (gerente == null) { return(Json(false)); } foreach (int programadorId in dadosProjetoModel.ProgramadoresId) { var programadorProjeto = new ProgramadorProjeto { ProjetoId = projeto.ProjetoId, GerenteId = gerente.GerenteId, ProgramadorId = programadorId }; _contexto.ProgramadorProjeto.Add(programadorProjeto); _contexto.SaveChanges(); } return(Json(new { redirectUrl = Url.Action($"Index", $"PainelDeControle"), isRedirect = true })); } catch (Exception er) { return(Json(false)); } }
public ActionResult Avaliar(int projetoId) { try { var projeto = _contexto.Projetos.FirstOrDefault(l => l.ProjetoId == projetoId); var dadosProjeto = new DadosProjetoModel(projeto) { ProjetoId = projetoId }; return(View(dadosProjeto)); } catch (Exception e) { return(Json(false)); throw; } }
public JsonResult Editar(DadosProjetoModel dadosProjetoModel) { try { var projeto = _contexto.Projetos.FirstOrDefault(l => l.ProjetoId == dadosProjetoModel.ProjetoId); if (projeto == null) { return(Json(false)); } projeto.DataFim = dadosProjetoModel.DataFim; projeto.DataInicio = dadosProjetoModel.DataInicio; projeto.Titulo = dadosProjetoModel.Titulo; projeto.Descricao = dadosProjetoModel.Descricao; _contexto.Entry(projeto).State = EntityState.Modified; _contexto.SaveChanges(); var sessao = (SessionModel)Session["Sessao"]; var gerente = _contexto.Gerentes .FirstOrDefault(x => x.PessoaId == sessao.Pessoa.PessoaId); #region Atualizando programadores var todosProgramadoresDoProjeto = _contexto.ProgramadorProjeto .Where(l => l.ProjetoId == dadosProjetoModel.ProjetoId) .ToList(); foreach (ProgramadorProjeto programadorProjeto in todosProgramadoresDoProjeto.ToList()) { _contexto.ProgramadorProjeto.Remove(programadorProjeto); _contexto.SaveChanges(); } foreach (int programadorId in dadosProjetoModel.ProgramadoresId) { var programadorProjeto = new ProgramadorProjeto { ProjetoId = projeto.ProjetoId, GerenteId = gerente.GerenteId, ProgramadorId = programadorId }; _contexto.ProgramadorProjeto.Add(programadorProjeto); _contexto.SaveChanges(); } #endregion return(this.Json(new { redirectUrl = Url.Action("Index", "PainelDeControle"), isRedirect = true })); } catch (Exception e) { return(Json(false)); throw; } }
public ActionResult Detalhes(int projetoId) { try { #region Projeto var projeto = _contexto.Projetos .Include(l => l.Mensagens) .FirstOrDefault(l => l.ProjetoId == projetoId); if (projeto == null) { return(Json(false)); } var dadosProjeto = new DadosProjetoModel(projeto) { ProjetoId = projetoId }; #endregion #region Programadores var programadores = _contexto.ProgramadorProjeto .Where(l => l.ProjetoId == projetoId) .Select(l => l.Programador) .ToList(); var programadoresModel = new List <ProgramadorModel>(); foreach (Programador programador in programadores) { var programadorModel = new ProgramadorModel(programador); programadoresModel.Add(programadorModel); } #endregion #region Mensagens var mensagensModel = new List <MensagemModel>(); foreach (Mensagem mensagem in projeto.Mensagens) { var mensagemModel = new MensagemModel(mensagem); mensagensModel.Add(mensagemModel); } #endregion var nomeGerente = _contexto.ProgramadorProjeto.Where(l => l.ProjetoId == projetoId) .Select(l => l.Gerente.Pessoa.Nome) .FirstOrDefault(); var detalhesProjetoModel = new DetalhesProjetoModel() { DadosProjetoModel = dadosProjeto, Mensagens = mensagensModel, Programadores = programadoresModel, Gerente = nomeGerente }; return(View(detalhesProjetoModel)); } catch (Exception e) { return(Json(false)); throw; } }