コード例 #1
0
        public static int Salvar(Pergunta pergunta)
        {
            var ret = 0;

            using (var db = new ProjectoBaseDataContext())
            {
                if (pergunta.Id <= 0)
                {
                    db.Perguntas.Add(pergunta);
                }
                else
                {
                    var model = BuscarPeloId(pergunta.Id).Respostas.ToList();
                    model.ForEach(p => p.Pergunta = null);
                    if (model.Any())
                    {
                        foreach (var item in model)
                        {
                            db.Entry(item).State = EntityState.Modified;
                        }

                        db.Respostas.RemoveRange(model);
                    }

                    db.Respostas.AddRange(pergunta.Respostas);
                    pergunta.Respostas = null;

                    db.Entry(pergunta).State = EntityState.Modified;
                }

                db.SaveChanges();
                ret = pergunta.Id;
            }
            return(ret);
        }
コード例 #2
0
        public int Salvar(UsuarioPerfil perfil)
        {
            var ret = 0;

            using (var db = new ProjectoBaseDataContext())
            {
                var model = db.UsuarioPerfis
                            .Where(x => x.PerfilNome == perfil.PerfilNome)
                            .FirstOrDefault();

                if (model == null)
                {
                    db.UsuarioPerfis.Add(perfil);
                }
                else
                {
                    model.PerfilNome = perfil.PerfilNome;
                    model.Ativo      = perfil.Ativo;
                    db.UsuarioPerfis.Attach(perfil);
                    db.Entry(perfil).State = EntityState.Unchanged;
                }

                db.SaveChanges();
                ret = perfil.Id;
            }

            return(ret);
        }
コード例 #3
0
        public static string Salvar(Usuario usuario)
        {
            var ret = string.Empty;

            var model = BuscarPeloId(usuario.Id);

            using (var db = new ProjectoBaseDataContext())
            {
                if (model == null)
                {
                    if (!string.IsNullOrEmpty(usuario.Senha))
                    {
                        usuario.Senha = usuario.Senha.Encrypt();
                    }
                    usuario.NomeUsuario = usuario.NomeCompleto.Split(' ')[0];// Buscar o primeiro nome
                    db.Usuarios.Add(usuario);
                }
                else
                {
                    db.Usuarios.Attach(usuario);
                    db.Entry(usuario).State = EntityState.Modified;

                    if (string.IsNullOrEmpty(usuario.Senha))
                    {
                        db.Entry(usuario).Property(x => x.Senha).IsModified = false;
                    }
                    else
                    {
                        usuario.Senha = usuario.Senha.Encrypt();
                    }
                }

                db.SaveChanges();
                ret = usuario.Id;
            }

            return(ret);
            //return true;
        }
コード例 #4
0
        public JsonResult AddResposta(List <Prova> provas, int totalPontos)
        {
            var pontos     = 0;
            var perguntaId = 0;
            var resultado  = false;

            //Calcular pontos por cada resposta certa
            foreach (var prova in provas)
            {
                var resposta = db.Respostas.Find(prova.RespostaSelecionadaId);

                if (resposta.RespostaCerta == true)
                {
                    pontos += db.Perguntas.Find(resposta.PerguntaId).Pontos;
                }
                perguntaId = prova.PerguntaId;
                db.Provas.Add(prova);
            }


            //Se acertar mais de 50% do total de pontos = aprovado, caso contrário = reprovado.
            if (pontos >= ((totalPontos * 50) / 100))
            {
                resultado = true;
            }

            if (pontos < ((totalPontos * 50) / 100))
            {
                resultado = false;
            }


            var porcentagem = (pontos * 100) / totalPontos;


            var exame = db.Exames.Find(provas[0].ExameId);

            exame.Resultado = resultado;
            exame.Pontos    = pontos;

            db.Entry(exame).State = EntityState.Modified;
            db.SaveChanges();


            return(Json(new { pontos, porcentagem, resultado }, JsonRequestBehavior.AllowGet));
        }
コード例 #5
0
        public static int Salvar(Questionario questionario)
        {
            var ret = 0;

            using (var db = new ProjectoBaseDataContext())
            {
                var model = BuscarPeloId(questionario.Id);

                if (model == null)
                {
                    db.Questionarios.Add(questionario);
                }
                else
                {
                    db.Entry(questionario).State = EntityState.Modified;
                }

                db.SaveChanges();
                ret = questionario.Id;
            }
            return(ret);
        }
コード例 #6
0
        public static string Salvar(TempoExame tempoExame)
        {
            var ret = string.Empty;

            using (var db = new ProjectoBaseDataContext())
            {
                var model = BuscarPeloId(tempoExame.Id);

                if (model == null)
                {
                    db.TempoExames.Add(tempoExame);
                }
                else
                {
                    db.Entry(tempoExame).State = EntityState.Modified;
                }

                db.SaveChanges();
                ret = tempoExame.Id;
            }
            return(ret);
        }
コード例 #7
0
        public static int Salvar(AreaCandidatura area)
        {
            var ret = 0;

            using (var db = new ProjectoBaseDataContext())
            {
                var model = BuscarPeloId(area.Id);

                if (model == null)
                {
                    db.AreaCandidaturas.Add(area);
                }
                else
                {
                    db.Entry(area).State = EntityState.Modified;
                }

                db.SaveChanges();
                ret = area.Id;
            }
            return(ret);
        }
コード例 #8
0
        public static string Salvar(Candidatura candidatura)
        {
            var ret = string.Empty;

            var model = BuscarPeloId(candidatura.Id);

            using (var db = new ProjectoBaseDataContext())
            {
                if (model == null)
                {
                    db.Candidaturas.Add(candidatura);
                }
                else
                {
                    db.Candidaturas.Attach(candidatura);
                    db.Entry(candidatura).State = EntityState.Modified;
                }

                db.SaveChanges();
                ret = candidatura.Id;
            }

            return(ret);
        }
コード例 #9
0
        public static bool Eliminar(Pergunta pergunta)
        {
            if (pergunta != null)
            {
                using (var db = new ProjectoBaseDataContext())
                {
                    if (pergunta.Respostas.Any())
                    {
                        foreach (var item in pergunta.Respostas)
                        {
                            db.Entry(item).State = EntityState.Modified;
                        }

                        db.Respostas.RemoveRange(pergunta.Respostas);
                    }

                    db.Perguntas.Remove(pergunta);
                    db.SaveChanges();
                }
                return(true);
            }

            return(false);
        }