Esempio n. 1
0
        public void Corrigir(Exercicio realizado)
        {
            ExercicioDAL dal      = new ExercicioDAL();
            Nota         n        = new Nota();
            Exercicio    gabarito = new Exercicio();

            gabarito = dal.Consultar(realizado.ID);
            n        = dal.Corrigir(realizado, gabarito);
            NotaDAL dalnota = new NotaDAL();

            dalnota.Inserir(n);
            DesempenhoDAL daldesempenho = new DesempenhoDAL();
            ConteudoDAL   dalconteudo   = new ConteudoDAL();

            gabarito.Conteudo = dalconteudo.Consultar(gabarito.Conteudo.ID);
            Desempenho desempenho = daldesempenho.Consultar(gabarito.Conteudo.Materia.ID, realizado.Usuario);

            if (desempenho.ID == 0)
            {
                desempenho = new Desempenho
                {
                    HorasEstudadas = 0,
                    Materia        = gabarito.Conteudo.Materia,
                    Porcentagem    = 0,
                    Usuario        = new Usuario {
                        ID = realizado.Usuario
                    }
                };
                daldesempenho.Inserir(desempenho);
            }
            else
            {
                daldesempenho.Alterar(desempenho);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Insere um Desempenho na tabela Desempenho
        /// Precisando Apenas do ID do Usuario e o ID do Materia
        /// </summary>
        /// <param name="D"> parametro do tipo Desempenho | sem id </param>
        public void Inserir(Desempenho D)
        {
            SqlCommand comm       = new SqlCommand(@"Select Count(*) 
                                                From Materia m inner join Conteudo c on m.ID_Materia = c.ID_Materia
                                                inner join Exercicio e on e.ID_Conteudo = c.ID_Conteudo Where m.ID_Materia = " + D.Materia.ID, Banco.Abrir());
            decimal    quantidade = Convert.ToDecimal(comm.ExecuteScalar()) * 10;
            decimal    notas      = 0;

            comm.CommandText = @"Select e.ID_Exercicio, Max(Nota_Nota)
                                From Materia m inner join Conteudo c on m.ID_Materia = c.ID_Materia
                                inner join Exercicio e on e.ID_Conteudo = c.ID_Conteudo 
                                inner join Nota n on n.ID_Exercicio = e.ID_Exercicio Where m.ID_Materia = " + D.Materia.ID + " and n.ID_Usuario = " + D.Usuario.ID + " group by e.ID_Exercicio";
            SqlDataReader dr = comm.ExecuteReader();

            while (dr.Read())
            {
                notas += Convert.ToDecimal(dr.GetValue(1));
            }
            dr.Close();
            comm.CommandType = System.Data.CommandType.StoredProcedure;
            comm.CommandText = "InserirDesempenho";
            comm.Parameters.Add("@Usuario", SqlDbType.Int).Value = D.Usuario.ID;
            comm.Parameters.Add("@Materia", SqlDbType.Int).Value = D.Materia.ID;
            if (notas > 0)
            {
                comm.Parameters.Add("@Porcentagem", SqlDbType.Decimal).Value = notas / quantidade;
            }
            else
            {
                comm.Parameters.Add("@Porcentagem", SqlDbType.Decimal).Value = 0;
            }
            comm.Parameters.Add("@HorasEstudadas", SqlDbType.Decimal).Value = D.HorasEstudadas;
            comm.ExecuteNonQuery();
            comm.Connection.Close();
        }
Esempio n. 3
0
 private void Grid_Materais_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     foreach (var item in materias.Where(x => x.Nome == Grid_Materais.CurrentRow.Cells[0].Value.ToString()))
     {
         try
         {
             DesempenhoDAL dal        = new DesempenhoDAL();
             Desempenho    desempenho = dal.Consultar(item.ID, UsuarioAtual.ID);
             Txt_Porcentagem.Text = (desempenho.Porcentagem * 100).ToString();
             if (desempenho.Porcentagem < (decimal)0.5)
             {
                 Txt_Porcentagem.ForeColor = Color.Red;
             }
             else
             {
                 if (desempenho.Porcentagem >= (decimal)0.5 && desempenho.Porcentagem < (decimal)0.7)
                 {
                     Txt_Porcentagem.ForeColor = Color.Yellow;
                 }
                 else
                 {
                     Txt_Porcentagem.ForeColor = Color.Green;
                 }
             }
             int horas   = (int)desempenho.HorasEstudadas;
             int minutos = (int)((desempenho.HorasEstudadas - horas) * 60);
             Lbl_Horas.Text   = "Horas Estudadas = \nHoras: " + horas + " \nMinutos: " + minutos;
             Lbl_Materia.Text = item.Nome;
         }
         catch
         {
             MessageBox.Show("Erro de Conexão, tente novamente", "Enigma", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
Esempio n. 4
0
    // Metodo para realizar acao da escolha do usuario de acordo com e-mail selecionado.
    public void opcao(string resposta)
    {
        leituraArquivo = GameObject.Find("LeituraArquivo").GetComponent <LeituraArquivo>() as LeituraArquivo;

        // Se o e-mail nao foi respondido.
        if (!isRespondido)
        {
            // Busco e-mail, em seguida envio como parametro sua resposta e altero o estado para respondido.
            this.getEmail(resposta);

            if (resposta.Equals("aceitar"))
            {
                int idProjeto = 0;

                //Debug.Log ("IdProjeto: " + leituraArquivo.IdProjetoEmail (idEmail));
                int.TryParse(leituraArquivo.IdProjetoEmail(idEmail), out idProjeto);

                if (idProjeto != 0)
                {
                    Projeto.aumentaQtdProjetos();
                    //Debug.Log ("Quantidade projetos: " + Projeto.getQtdProjetos ());
                    //Debug.Log ("Projeto " + Projeto.getQtdProjetos ().ToString ());
                    Projeto p = GameObject.Find("TelaEstacaoTrabalho").transform.FindChild("TelaInicial/Projeto " + Projeto.getQtdProjetos().ToString()).GetComponent <Projeto> () as Projeto;
                    p.criarProjeto(idProjeto);
                }
                else
                {
                    //Debug.Log ("E-mail nao possui um projeto");
                }

                this.transform.FindChild("UI/Canvas/Respostas").gameObject.SetActive(false);
                this.transform.FindChild("UI/Canvas/Aceito").gameObject.SetActive(true);

                // leitura do arquivo de Email.xml
                leituraArquivo.CarregarArquivo();

                //Debug.Log ("clicou para aceitar o email " + idEmail);
            }
            else if (resposta.Equals("recusar"))
            {
                this.transform.FindChild("UI/Canvas/Respostas").gameObject.SetActive(false);
                this.transform.FindChild("UI/Canvas/Recusado").gameObject.SetActive(true);
                Navegador.AdicionarListaNoticias(idEmail);
                Desempenho.AddProjeto(idEmail, 0, false);
            }
            else
            {
                //Debug.Log ("Opçao invalida.");
            }

            // Marco a resposta da tela atual para respondido e invalidando acesso aos botoes da tela.
            this.isRespondido = true;
        }
        else
        {
            //Debug.Log("Este e-mail ja foi respondido e portanto os botoes ficaram sem acao.");
        }
    }
Esempio n. 5
0
    private void Awake()
    {
#if UNITY_EDITOR
        if (instance != null)
        {
            Debug.Log("Mais de uma instancia.");
        }
#endif

        instance = this;
    }
Esempio n. 6
0
        /// <summary>
        /// Insere um Desempenho na tabela Desempenho
        /// Precisando Apenas do ID do Usuario e o ID do Materia
        /// </summary>
        /// <param name="D"> parametro do tipo Desempenho | sem id </param>
        public void Inserir(Desempenho D)
        {
            SqlCommand comm = new SqlCommand("", Banco.Abrir());

            comm.CommandType = System.Data.CommandType.StoredProcedure;
            comm.CommandText = "InserirDesempenho";
            comm.Parameters.Add("@Usuario", SqlDbType.Int).Value            = D.Usuario.ID;
            comm.Parameters.Add("@Materia", SqlDbType.Int).Value            = D.Materia.ID;
            comm.Parameters.Add("@Porcentagem", SqlDbType.Decimal).Value    = D.Porcentagem;
            comm.Parameters.Add("@HorasEstudadas", SqlDbType.Decimal).Value = D.HorasEstudadas;
            comm.ExecuteNonQuery();
            comm.Connection.Close();
        }
Esempio n. 7
0
    public void trabalhar()
    {
        if (turnosTotal > 0 && progresso != 100 && Energia.ObterEstado() > 0)
        {
            turnosCorridos++;
            progresso = (100 / turnosTotal) * turnosCorridos;
            escreverDados();
            Energia.Diminuir();
            Relogio.MudarPeriodo();

            if (turnosTotal - turnosCorridos == 0)
            {
                Dinheiro.Receber(valor);
                Personagem.isPagamento = true;
                Navegador.GerarNoticias("ProjetoEntregado", idProjeto);
                Desempenho.AddProjeto(idProjeto, progresso, true);
            }
        }
    }
Esempio n. 8
0
    public static void AvaliarDesempenho()
    {
        if (GameObject.Find("TelaEstacaoTrabalho"))
        {
            GameObject.Find("TelaEstacaoTrabalho").transform.FindChild("TelaInicial").gameObject.SetActive(true);

            foreach (GameObject objeto in GameObject.FindGameObjectsWithTag("Projeto"))
            {
                if (Projeto.isAndamento(objeto))
                {
                    int projeto   = objeto.gameObject.GetComponent <Projeto>().idProjeto;
                    int progresso = objeto.gameObject.GetComponent <Projeto>().progresso;
                    Desempenho.AddProjeto(projeto, progresso, true);
                }
            }

            if (!SceneManager.GetActiveScene().name.Equals("Computador"))
            {
                GameObject.Find("TelaEstacaoTrabalho").transform.FindChild("TelaInicial").gameObject.SetActive(false);
            }
        }
    }
Esempio n. 9
0
        public void Atualizar(Desempenho D)
        {
            DesempenhoDAL dal = new DesempenhoDAL();
            int           materia = D.Materia.ID, usuario = D.Usuario.ID;
            decimal       hestudadas = D.HorasEstudadas;

            D = dal.Consultar(D.Materia.ID, D.Usuario.ID);
            if (D.ID == 0)
            {
                D.Materia = new Materia {
                    ID = materia
                };
                D.Usuario = new Usuario {
                    ID = usuario
                };
                dal.Inserir(D);
            }
            else
            {
                dal.Alterar(D);
            }
        }
Esempio n. 10
0
 private void Form_Conteudo_FormClosed(object sender, FormClosedEventArgs e)
 {
     try
     {
         TimeSpan timeSpan = DateTime.Now - Agora;
         decimal  horas    = (decimal)timeSpan.Hours;
         decimal  minutos  = 0;
         if (timeSpan.Minutes > 0)
         {
             minutos = (decimal)timeSpan.Minutes / (decimal)60;
         }
         if (timeSpan.Days > 0)
         {
             horas += 24 * timeSpan.Days;
         }
         DesempenhoDAL dal        = new DesempenhoDAL();
         Desempenho    D          = new Desempenho();
         decimal       hestudadas = horas + minutos;
         D = dal.Consultar(this.materia.ID, UsuarioAtual.ID);
         if (D.ID == 0)
         {
             D.Materia = this.materia;
             D.Usuario = new Usuario {
                 ID = UsuarioAtual.ID
             };
             D.HorasEstudadas = hestudadas;
             dal.Inserir(D);
         }
         else
         {
             D.HorasEstudadas += hestudadas;
             dal.Alterar(D);
         }
     }
     catch
     {
     }
 }
Esempio n. 11
0
    // Método para enviar os dados.
    public static void Enviar()
    {
        WWWForm form = new WWWForm();

        // Comportamento
        form.AddField("id", jogador);
        form.AddField("dia", Data.ObterData());
        form.AddField("dinheiro", Dinheiro.ObterValor());
        form.AddField("despesa", Financeiro.ObterDespesa());
        form.AddField("tempoDia", Comportamento.ObterTempo());
        form.AddField("socializacao", Sentimento.ObterSocializacao());
        form.AddField("cliqueGeral", Comportamento.ObterGeral());
        form.AddField("cliqueEmail", Comportamento.ObterEmail());
        form.AddField("cliqueProjeto", Comportamento.ObterProjeto());
        form.AddField("cliqueTrabalho", Comportamento.ObterTrabalho());
        form.AddField("cliqueNavegador", Comportamento.ObterNavegador());
        form.AddField("cliqueComputador", Comportamento.ObterComputador());
        Comportamento.Reiniciar();

        // Desempenho
        foreach (Desempenho.Projeto projeto in Desempenho.Lista())
        {
            form.AddField("desempenho_projeto[]", projeto.id);
            form.AddField("desempenho_progresso[]", projeto.progresso);
            form.AddField("desempenho_situacao[]", projeto.situacao.ToString());
        }

        Desempenho.Reiniciar();

        // Conclusao
        if (Fim.getCenario() != null)
        {
            form.AddField("conclusao", Fim.getCenario());
        }

        // Enviando os dados do form através do método post.
        WWW envio = new WWW(url, form.data, form.headers);
    }
Esempio n. 12
0
        /// <summary>
        /// retorna um objeto do tipo Desempenho contendo apenas o ID do Usuario e o ID Da Materia
        /// </summary>
        /// <param name="materia"> parametro do tipo inteiro que representa o id da materia</param>
        /// <param name="usuario">parametro do tipo inteiro que representa o id do usuario</param>
        /// <returns></returns>
        public Desempenho Consultar(int materia, int usuario)
        {
            SqlCommand    comm = new SqlCommand("Select * from Desempenho where ID_Materia = " + materia + " and ID_Usuario = " + usuario, Banco.Abrir());
            SqlDataReader dr   = comm.ExecuteReader();
            Desempenho    d    = new Desempenho();

            while (dr.Read())
            {
                Usuario u = new Usuario();
                u.ID = Convert.ToInt32(dr.GetValue(1));
                Materia m = new Materia();
                m.ID = Convert.ToInt32(dr.GetValue(2));
                d    = new Desempenho
                {
                    ID             = Convert.ToInt32(dr.GetValue(0)),
                    Usuario        = u,
                    Materia        = m,
                    Porcentagem    = Convert.ToDecimal(dr.GetValue(3)),
                    HorasEstudadas = Convert.ToDecimal(dr.GetValue(4))
                };
            }
            comm.Connection.Close();
            return(d);
        }
Esempio n. 13
0
 void Proximo()
 {
     if (realizando)
     {
         if (enviar == false)
         {
             Questao questao = new Questao();
             questao.Alternativa = new List <Alternativa>();
             foreach (var item in Gabarito.Questao.Where(x => x.Ordem == sequencia[QuestaoAtual]))
             {
                 questao.ID                   = item.ID;
                 questao.Ordem                = item.Ordem;
                 questao.Tipo                 = item.Tipo;
                 questao.Pergunta             = item.Pergunta;
                 questao.Usuario              = UsuarioAtual.ID;
                 questao.AleatorioAlternativa = item.AleatorioAlternativa;
                 questao.Exercicio            = item.Exercicio;
             }
             if (questao.Tipo.Trim() == "C")
             {
                 bool validar = true;
                 for (int i = 0; i < textBoxes.Length; i++)
                 {
                     if (textBoxes[i].Text.Trim() == "")
                     {
                         validar = false;
                     }
                 }
                 if (validar)
                 {
                     int ordem = 1;
                     for (int i = 0; i < textBoxes.Length; i++)
                     {
                         Alternativa alternativa = new Alternativa
                         {
                             Conteudo = textBoxes[i].Text.Trim(),
                             Ordem    = ordem,
                             Questao  = questao,
                             Tipo     = "R",
                             Usuario  = UsuarioAtual.ID
                         };
                         questao.Alternativa.Add(alternativa);
                         ordem += 1;
                     }
                 }
                 else
                 {
                     MessageBox.Show("Preencha todos os campos", "Enigma", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     processar = false;
                 }
             }
             else
             {
                 bool validar  = false;
                 int  resposta = 0;
                 for (int i = 0; i < respostas.Length; i++)
                 {
                     if (respostas[i] == true)
                     {
                         validar  = true;
                         resposta = i;
                     }
                 }
                 if (validar)
                 {
                     Alternativa alternativa = new Alternativa();
                     foreach (var item in Gabarito.Questao.Where(x => x.Ordem == sequencia[QuestaoAtual]))
                     {
                         foreach (var it in item.Alternativa.Where(x => x.Ordem == sequenciaalternativa[resposta]))
                         {
                             alternativa = new Alternativa
                             {
                                 Conteudo = it.Conteudo,
                                 Ordem    = it.Ordem,
                                 Questao  = it.Questao,
                                 Tipo     = "R",
                                 Usuario  = UsuarioAtual.ID
                             };
                         }
                     }
                     questao.Alternativa.Add(alternativa);
                 }
                 else
                 {
                     MessageBox.Show("Selecione uma alternativa", "Enigma", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     processar = false;
                 }
             }
             if (processar)
             {
                 Resolvido.Questao.Add(questao);
                 if (QuestaoAtual + 1 == Gabarito.Questao.Count)
                 {
                     enviar = true;
                 }
                 else
                 {
                     QuestaoAtual += 1;
                     MostrarQuestao();
                 }
             }
         }
         if (enviar)
         {
             try
             {
                 Program.PanelCarregando.Visible = true;
                 Program.PanelCarregando.Refresh();
                 ExercicioDAL dal     = new ExercicioDAL();
                 NotaDAL      dalnota = new NotaDAL();
                 Nota         n       = new Nota();
                 n = dal.Corrigir(Resolvido, Gabarito);
                 dalnota.Inserir(n);
                 DesempenhoDAL daldesempenho = new DesempenhoDAL();
                 ConteudoDAL   dalconteudo   = new ConteudoDAL();
                 Gabarito.Conteudo = dalconteudo.Consultar(Gabarito.Conteudo.ID);
                 Desempenho desempenho = daldesempenho.Consultar(Gabarito.Conteudo.Materia.ID, Resolvido.Usuario);
                 if (desempenho.ID == 0)
                 {
                     desempenho = new Desempenho
                     {
                         HorasEstudadas = 0,
                         Materia        = Gabarito.Conteudo.Materia,
                         Porcentagem    = 0,
                         Usuario        = new Usuario {
                             ID = Resolvido.Usuario
                         }
                     };
                     daldesempenho.Inserir(desempenho);
                 }
                 else
                 {
                     daldesempenho.Alterar(desempenho);
                 }
                 Form frm = new Form_ExibirNota(dalnota.ConsultarUltimo(UsuarioAtual.ID, Gabarito.ID));
                 frm.ShowDialog();
                 LimparCampos();
             }
             catch
             {
                 MessageBox.Show("Erro de Conexão, tente novamente", "Enigma", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
             Program.PanelCarregando.Visible = false;
         }
         processar = true;
     }
 }
        // GET: CategoriaLivros
        public async Task <IActionResult> Index()
        {
            var result = from obj in _context.Categoria select obj;

            List <Desempenho> desempenhos = new List <Desempenho>();

            Desempenho desempenho = new Desempenho();

            desempenho.CoSeqCategoriaAvaliacao = 1;
            desempenho.desempenhoMes           = 20;
            desempenho.mes = 3;
            desempenhos.Add(desempenho);

            desempenho.CoSeqCategoriaAvaliacao = 3;
            desempenho.desempenhoMes           = 20;
            desempenho.mes = 4;
            desempenhos.Add(desempenho);

            desempenho.CoSeqCategoriaAvaliacao = 3;
            desempenho.desempenhoMes           = 20;
            desempenho.mes = 3;
            desempenhos.Add(desempenho);

            desempenho.CoSeqCategoriaAvaliacao = 2;
            desempenho.desempenhoMes           = 20;
            desempenho.mes = 4;
            desempenhos.Add(desempenho);

            desempenho.CoSeqCategoriaAvaliacao = 3;
            desempenho.desempenhoMes           = 50;
            desempenho.mes = 3;
            desempenhos.Add(desempenho);

            var nova = desempenhos.OrderBy(d1 => d1.CoSeqCategoriaAvaliacao).ThenBy(d1 => d1.mes);

            int sum = nova.Aggregate(0, (d1, d2) => d2.mes == 3 && d2.CoSeqCategoriaAvaliacao == 3 ? d2.mes : d2.mes);

            foreach (Desempenho d in nova)
            {
                Console.WriteLine(d);
            }

            Console.WriteLine(sum);

            desempenhos.ForEach(p => { p.mes += p.mes + 5; });

            foreach (Desempenho p in desempenhos)
            {
                var w = p.mes;
            }

            List <double> listaFloat = new List <double>();

            for (int mes = 1; mes <= 4; mes++)
            {
                for (int categoria = 1; categoria <= 3; categoria++)
                {
                    listaFloat.Add(desempenhos.Where(p => p.CoSeqCategoriaAvaliacao == categoria && p.mes == mes).Sum(p => p.desempenhoMes));
                }
            }

            for (int mes = 1; mes <= 4; mes++)
            {
                for (int categoria = 1; categoria <= 3; categoria++)
                {
                    listaFloat.Add(desempenhos.Where(p => p.CoSeqCategoriaAvaliacao == categoria && p.mes == mes).Select(p => p.desempenhoMes).DefaultIfEmpty(0).Average());
                }
            }

            for (int mes = 1; mes <= 4; mes++)
            {
                for (int categoria = 1; categoria <= 3; categoria++)
                {
                    listaFloat.Add(desempenhos.Where(p => p.CoSeqCategoriaAvaliacao == categoria && p.mes == mes).Select(p => p.desempenhoMes).Aggregate(0.0, (x, y) => x + y));
                }
            }

            foreach (float f in listaFloat)
            {
                Console.WriteLine(f);
            }

            var r1 = desempenhos.GroupBy(p => p.CoSeqCategoriaAvaliacao);

            foreach (IGrouping <int, Desempenho> grupo in r1)
            {
                Console.WriteLine("Categoria: " + grupo.Key);
                foreach (Desempenho d1 in grupo)
                {
                    Console.WriteLine(grupo);
                }
            }

            return(View(await result.ToListAsync()));
        }