Beispiel #1
0
        public Troca GetJaPropos(Guid idAtual)
        {
            try
            {
                DbCommand cmd = baseDados.GetStoredProcCommand("TrocasSelectJaPropos");

                baseDados.AddInParameter(cmd, "@Id", DbType.Guid, idAtual);

                Troca aux = null;
                AlocacaoDAO alocDAO = new AlocacaoDAO();

                using (IDataReader leitor = baseDados.ExecuteReader(cmd))
                {

                    while (leitor.Read())
                    {
                        DateTime data = leitor.GetDateTime(leitor.GetOrdinal("Data"));
                        string horario = leitor.GetString(leitor.GetOrdinal("Horario"));
                        Guid id = leitor.GetGuid(leitor.GetOrdinal("Id"));
                        Alocacao alocAtual = alocDAO.GetAlocacao(leitor.GetGuid(leitor.GetOrdinal("IdRecAtual")), data, horario);
                        Alocacao alocDesejada = alocDAO.GetAlocacao(leitor.GetGuid(leitor.GetOrdinal("IdRecDesejado")), data, horario);
                        bool estaPendente = leitor.GetBoolean(leitor.GetOrdinal("EstaPendente"));

                        bool? foiAceita = leitor["FoiAceita"] as bool?;
                        if (foiAceita.HasValue)
                            foiAceita = foiAceita.Value;
                        else foiAceita = null;

                        bool foiVisualizada = leitor.GetBoolean(leitor.GetOrdinal("FoiVisualizada"));
                        aux = new Troca(id, alocAtual, alocDesejada, foiAceita, estaPendente, foiVisualizada, horario, data);

                    }
                }

                return aux;
            }
            catch (SqlException ex)
            {
                throw new DataAccessException(ErroMessages.GetErrorMessage(ex.Number), ex);
            }
        }
    protected void dgRecusrosAlocados_ItemCommand(object sender, DataGridCommandEventArgs e)
    {
        if (e.CommandName == "Troca")
        {
            Label lblResponsavel = (Label)e.Item.FindControl("lblResponsavel");
            Label lblRecursoId = (Label)e.Item.FindControl("lblRecursoId");
            Label lblTurmaEventoId = (Label)e.Item.FindControl("lblTurmaEventoId");

            DateTime data = Convert.ToDateTime(Session["Data"]);
            string horario = (string)Session["Horario"];
            Guid eventoId = new Guid(Session["EventoId"].ToString());

            Troca temTrocaRequerente = trocaBo.GetJaPropos(eventoId);
            Troca temTrocaSolicidado = trocaBo.GetJaPropos(new Guid(lblTurmaEventoId.Text));

            if (temTrocaRequerente == null && temTrocaSolicidado == null)
            {

                Evento evento = null;
                try
                {
                    evento = eventoBO.GetEventoById(eventoId);
                }
                catch (Exception)
                {
                    Response.Redirect("~/Default/Erro.aspx?Erro=Código do evento inválido!");
                }

                //monta alocacao desejada
                Guid recIdDesejado = new Guid(lblRecursoId.Text);
                Alocacao alocDesejada = alocBO.GetAlocacao(recIdDesejado, data, horario);

                //monta alocacao atual
                if (rblRecursos.SelectedValue != "")
                {
                    Recurso recAtual = controleRecursos.GetRecursoById(new Guid(rblRecursos.SelectedValue));
                    Alocacao alocAtual = new Alocacao(recAtual, data, horario, null, evento);

                    Troca troca = new Troca(Guid.NewGuid(), alocAtual, alocDesejada, null, true, false,horario,data);

                    try
                    {
                        trocaBo.InsereTroca(troca);
                    }
                    catch (Exception)
                    {
                        Response.Redirect("~/Default/Erro.aspx?Erro=Proposta não pode ser cadastrada!");
                    }

                    lblStatus.Text = "A proposta de troca de recurso foi enviada para " + lblResponsavel.Text + ".";

                }
                else
                {
                    lblStatus.Text = "Selecione um recurso próprio para propor uma troca!";
                }
            }
            else
            {
                lblStatus.Text = "Existe uma troca em andamento.";
            }

        }
    }
Beispiel #3
0
        public void UpDateTroca(Troca troca)
        {
            try
            {
                dao.UpDateTroca(troca);

                //MembershipUser user = Membership.GetUser();
                //LogEntry log = new LogEntry();
                //log.Message = "; Id: " + troca.Id + "; Usuário: " + user.UserName;
                //log.TimeStamp = DateTime.Now;
                //log.Severity = TraceEventType.Information;
                //log.Title = "Update Troca";
                //log.MachineName = Dns.GetHostName();
                //Logger.Write(log);
            }
            catch (DataAccessException)
            {
                throw;
            }
        }
Beispiel #4
0
        public List<Troca> GetNaoVisualizadasByAula(Guid aulaId, DateTime data, string horario)
        {
            try
            {
                DbCommand cmd = baseDados.GetStoredProcCommand("TrocasSelectNaoVisualizadasByAula");
                baseDados.AddInParameter(cmd, "@Data", DbType.DateTime, data);
                baseDados.AddInParameter(cmd, "@Horario", DbType.String, horario);
                baseDados.AddInParameter(cmd, "@AulaId", DbType.Guid, aulaId);

                List<Troca> aux = new List<Troca>();
                Troca troca = null;

                AlocacaoDAO alocDAO = new AlocacaoDAO();
                RecursosDAO recDAO = new RecursosDAO();

                using (IDataReader leitor = baseDados.ExecuteReader(cmd))
                {

                    while (leitor.Read())
                    {

                        Guid trocaId = leitor.GetGuid(leitor.GetOrdinal("Id"));

                        Recurso recAtual = recDAO.GetRecurso(leitor.GetGuid(leitor.GetOrdinal("IdRecAtual")));
                        Recurso recDesejado = recDAO.GetRecurso(leitor.GetGuid(leitor.GetOrdinal("IdRecDesejado")));

                        Alocacao alocAtual = alocDAO.GetAlocacao(leitor.GetGuid(leitor.GetOrdinal("IdRecAtual")), data, horario);
                        Alocacao alocDesejada = alocDAO.GetAlocacao(leitor.GetGuid(leitor.GetOrdinal("IdRecDesejado")), data, horario);

                        bool estaPendente = leitor.GetBoolean(leitor.GetOrdinal("EstaPendente"));

                        bool? foiAceita = leitor["FoiAceita"] as bool?;
                        if (foiAceita.HasValue)
                            foiAceita = foiAceita.Value;
                        else foiAceita = null;

                        bool foiVisualizada = leitor.GetBoolean(leitor.GetOrdinal("FoiVisualizada"));

                        troca = new Troca(trocaId, alocAtual, alocDesejada, foiAceita, estaPendente, foiVisualizada, horario, data);
                        aux.Add(troca);
                    }
                }

                return aux;
            }
            catch (SqlException ex)
            {
                throw new DataAccessException(ErroMessages.GetErrorMessage(ex.Number), ex);
            }
        }
Beispiel #5
0
        public void UpDateTroca(Troca troca)
        {
            try
            {
                DbCommand cmd = baseDados.GetStoredProcCommand("TrocasUpdate");

                baseDados.AddInParameter(cmd, "@Id", DbType.Guid, troca.Id);
                baseDados.AddInParameter(cmd, "@IdRecAtual", DbType.Guid, troca.AlocacaoAtual.Recurso.Id);
                if (troca.AlocacaoAtual.Aula == null)
                {
                    baseDados.AddInParameter(cmd, "@IdEventoAtual", DbType.Guid, troca.AlocacaoAtual.Evento.EventoId);
                    baseDados.AddInParameter(cmd, "@IdAulaAtual", DbType.Guid, DBNull.Value);
                }
                else
                {
                    baseDados.AddInParameter(cmd, "@IdEventoAtual", DbType.Guid, DBNull.Value);
                    baseDados.AddInParameter(cmd, "@IdAulaAtual", DbType.Guid, troca.AlocacaoAtual.Aula.Id);
                }
                baseDados.AddInParameter(cmd, "@IdRecDesejado", DbType.Guid, troca.AlocacaoDesejada.Recurso.Id);
                if (troca.AlocacaoDesejada.Aula == null)
                {
                    baseDados.AddInParameter(cmd, "@IdEventoDesejado", DbType.Guid, troca.AlocacaoDesejada.Evento.EventoId);
                    baseDados.AddInParameter(cmd, "@IdAulaDesejada", DbType.Guid, DBNull.Value);
                }
                else
                {
                    baseDados.AddInParameter(cmd, "@IdEventoDesejado", DbType.Guid, DBNull.Value);
                    baseDados.AddInParameter(cmd, "@IdAulaDesejada", DbType.Guid, troca.AlocacaoDesejada.Aula.Id);
                }
                baseDados.AddInParameter(cmd, "@EstaPendente", DbType.Boolean, troca.EstaPendente);
                baseDados.AddInParameter(cmd, "@FoiAceita", DbType.Boolean, troca.FoiAceita);
                baseDados.AddInParameter(cmd, "@FoiVisualizada", DbType.Boolean, troca.FoiVisualizada);
                baseDados.AddInParameter(cmd, "@Horario", DbType.String, troca.Horario);
                baseDados.AddInParameter(cmd, "@Data", DbType.DateTime, troca.Data);

                baseDados.ExecuteNonQuery(cmd);
            }
            catch (SqlException ex)
            {
                throw new DataAccessException(ErroMessages.GetErrorMessage(ex.Number), ex);
            }
        }
Beispiel #6
0
        public List<Troca> GetTrocasEventosByAutor(Guid autorid, Calendario cal)
        {
            try
            {
                DbCommand cmd = baseDados.GetStoredProcCommand("TrocasEventosSelectByAutor");

                baseDados.AddInParameter(cmd, "@AutorId", DbType.Guid, autorid);
                baseDados.AddInParameter(cmd, "@CalendarioId", DbType.Guid, cal.Id);

                List<Troca> aux = new List<Troca>();
                Troca troca = null;
                AulasDAO aulaDAO = new AulasDAO();
                AlocacaoDAO alocDAO = new AlocacaoDAO();
                RecursosDAO recDAO = new RecursosDAO();
                EventoDAO eventoDAO = new EventoDAO();

                using (IDataReader leitor = baseDados.ExecuteReader(cmd))
                {

                    while (leitor.Read())
                    {

                        Guid trocaId = leitor.GetGuid(leitor.GetOrdinal("Id"));

                        Recurso recAtual = recDAO.GetRecurso(leitor.GetGuid(leitor.GetOrdinal("IdRecAtual")));
                        Recurso recDesejado = recDAO.GetRecurso(leitor.GetGuid(leitor.GetOrdinal("IdRecDesejado")));

                        string horario = leitor.GetString(leitor.GetOrdinal("Horario"));
                        DateTime data = leitor.GetDateTime(leitor.GetOrdinal("Data"));

                        Aula aulaAtual = null;
                        Aula aulaDesejada = null;
                        Evento eventoAtual = null;
                        Evento eventoDesejado = null;

                        Guid? IdAulaAtual = leitor["IdAulaAtual"] as Guid?;
                        if (IdAulaAtual.HasValue)
                            aulaAtual = aulaDAO.GetAula(leitor.GetGuid(leitor.GetOrdinal("IdAulaAtual")));

                        Guid? IdAulaDesejada = leitor["IdAulaDesejada"] as Guid?;
                        if (IdAulaDesejada.HasValue)
                            aulaDesejada = aulaDAO.GetAula(leitor.GetGuid(leitor.GetOrdinal("IdAulaDesejada")));

                        Guid? IdEventoAtual = leitor["IdEventoAtual"] as Guid?;
                        if (IdEventoAtual.HasValue)
                            eventoAtual = eventoDAO.GetEvento(IdEventoAtual);

                        Guid? IdEventoDesejado = leitor["IdEventoDesejado"] as Guid?;
                        if (IdEventoDesejado.HasValue)
                            eventoDesejado = eventoDAO.GetEvento(IdEventoDesejado);

                        Alocacao alocAtual = new Alocacao(recAtual, data, horario, aulaAtual, eventoAtual);
                        Alocacao alocDesejada = new Alocacao(recDesejado, data, horario, aulaDesejada, eventoDesejado);

                        bool estaPendente = leitor.GetBoolean(leitor.GetOrdinal("EstaPendente"));

                        bool? foiAceita = leitor["FoiAceita"] as bool?;
                        if (foiAceita.HasValue)
                            foiAceita = foiAceita.Value;
                        else foiAceita = null;

                        bool foiVisualizada = leitor.GetBoolean(leitor.GetOrdinal("FoiVisualizada"));

                        troca = new Troca(trocaId, alocAtual, alocDesejada, foiAceita, estaPendente, foiVisualizada, horario, data);

                        aux.Add(troca);
                    }
                }

                return aux;
            }
            catch (SqlException ex)
            {
                throw new DataAccessException(ErroMessages.GetErrorMessage(ex.Number), ex);
            }
        }