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."; } } }
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; } }
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); } }
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); } }
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); } }