protected void Page_Load(object sender, EventArgs e) { //Se não for postback, ou seja, se estiver carregando normalmente a página, if (!IsPostBack) { if (Request.QueryString["GUID"] != null) { try { CategoriaDisciplinaBO boCategoriaDisciplina = new CategoriaDisciplinaBO(); try { //Caso haja a querystring, popula o gridview com as "categoriarecurso"s existentes do banco CategoriaDisciplina cat = boCategoriaDisciplina.GetCategoriaDisciplina(new Guid(Request.QueryString["GUID"])); txtDescricao.Text = cat.Descricao; grvListaCatDisciplina.DataSource = crBo.GetCategoriaRecurso(); grvListaCatDisciplina.DataBind(); //e, para cada linha de CategoriaRecurso, testa se ela já existia no momento em que a CategoriaDisciplina //foi criada(basta testar se ela existe dentro das atuais, que é o que o foreach faz) //caso positivo, popula o textbox com o valor da prioridade que existia. for (int i = 0; i < grvListaCatDisciplina.Rows.Count; i++) { Guid id = (Guid)grvListaCatDisciplina.DataKeys[i].Value; foreach (KeyValuePair <CategoriaRecurso, double> kvp in cat.Prioridades) { try { if (id == kvp.Key.Id) { ((TextBox)(grvListaCatDisciplina.Rows[i].FindControl("txtPrioridade"))).Text = kvp.Value.ToString(); break; } } catch (Exception ex) { Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message); } } } } catch (FormatException) { Response.Redirect("~/CategoriaDisciplina/List.aspx"); } } catch (BusinessData.DataAccess.DataAccessException) { Response.Redirect("~/CategoriaDisciplina/List.aspx"); } } //Se não houver Query String significa q essa página n serve pra nada! Volta pra que lista, que //serve pra alguma coisa else { Response.Redirect("~/CategoriaDisciplina/List.aspx"); } } }
public Calendario GetCalendario(int ano, int semestre) { BusinessData.BusinessLogic.CalendariosBO controleCalendarios = new CalendariosBO(); BusinessData.Entities.Calendario cal = controleCalendarios.GetCalendarioByAnoSemestre(ano, semestre); ControleDias dias = new ControleDias(); ControleCategorias categorias = new ControleCategorias(); ControleRequisicoes requisicoes = new ControleRequisicoes(); ControleTurmas turmas = new ControleTurmas(); BusinessData.BusinessLogic.CategoriaDisciplinaBO categoriasDeDisciplina = new CategoriaDisciplinaBO(); List <BusinessData.Entities.CategoriaDisciplina> catalogoCategoriasDisciplina = categoriasDeDisciplina.GetCategoriaDisciplinas(); ColecaoDias catalogoDias = dias.GetColecaoDias(cal); ColecaoCategoriaDeRecursos catalogoCategorias = categorias.GetCategorias(); ColecaoTurmas catalogoTurmas = turmas.GetTurmas(cal, catalogoCategoriasDisciplina); return(new Calendario( cal, catalogoDias, requisicoes.GetRequisicoes(cal, catalogoDias, catalogoCategorias, catalogoTurmas), catalogoTurmas, catalogoCategorias, catalogoCategoriasDisciplina )); }
protected void Page_Load(object sender, EventArgs e) { controleProfs = new ProfessoresBO(); profs = new Dictionary <string, Professor>(); discs = new Dictionary <string, Disciplina>(); catDisBo = new CategoriaDisciplinaBO(); controleDiscs = new DisciplinasBO(); turmasBO = new TurmaBO(); cursosBO = new CursosBO(); }
//Caso a edição seja confirmada... protected void btnConfirmar_Click(object sender, EventArgs e) { Dictionary <CategoriaRecurso, double> prioridades = new System.Collections.Generic.Dictionary <CategoriaRecurso, double>(); //Recria o dicionário com os valores modificados(ou não) do gridview for (int i = 0; i < grvListaCatDisciplina.DataKeys.Count; i++) { try { Guid id = (Guid)grvListaCatDisciplina.DataKeys[i].Value; CategoriaRecurso cat = crBo.GetCategoriaRecursoById(id); if (cat != null) { double p = Convert.ToDouble(((TextBox)(grvListaCatDisciplina.Rows[i].FindControl("txtPrioridade"))).Text); prioridades.Add(cat, p); } else { Response.Redirect("~/Default/Erro.aspx?Erro=" + "Categoria não existente."); } } catch (Exception ex) { Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message); } } //Cria-se, então, uma nova instância de CategoriaDisciplina, com o ID original, o nome que pode(ou não) ter sido mudado pelo usuário //e o dicionário criado anteriormente contendo todos os novos valores CategoriaDisciplina cd = CategoriaDisciplina.GetCategoriaDisciplina(new Guid(Request.QueryString["GUID"]), txtDescricao.Text, prioridades); try { CategoriaDisciplinaBO cdBo = new CategoriaDisciplinaBO(); //Manda fazer o update, finalmente cdBo.UpdateCategoriaDisciplina(cd); Response.Redirect("~/CategoriaDisciplina/List.aspx"); } catch (BusinessData.DataAccess.DataAccessException ex) { Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message); } catch (SecurityException ex) { Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message); } }
protected void btnConfirmar_Click(object sender, EventArgs e) { System.Collections.Generic.Dictionary <CategoriaRecurso, double> prioridades = new System.Collections.Generic.Dictionary <CategoriaRecurso, double>(); for (int i = 0; i < grvListaCatDisciplina.DataKeys.Count; i++) { try { Guid id = (Guid)grvListaCatDisciplina.DataKeys[i].Value; CategoriaRecurso cat = crBo.GetCategoriaRecursoById(id); double p = Convert.ToDouble(((TextBox)(grvListaCatDisciplina.Rows[i].FindControl("txtPrioridade"))).Text); prioridades.Add(cat, p); } catch (Exception ex) { Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message); } } CategoriaDisciplina cd = CategoriaDisciplina.NewCategoriaDisciplina(txtDescricao.Text, prioridades); try { CategoriaDisciplinaBO cdBo = new CategoriaDisciplinaBO(); cdBo.InsereCategoriaDisciplina(cd); lblStatus.Text = "Categoria de Disciplinas inserida com sucesso."; lblStatus.Visible = true; txtDescricao.Text = ""; //Usado aqui para zerar todos os campos PopulaCategoriasRecurso(); } catch (BusinessData.DataAccess.DataAccessException ex) { Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message); } catch (SecurityException ex) { Response.Redirect("~/Default/Erro.aspx?Erro=" + ex.Message); } }
public void ImportarDisciplinas(Calendario cal) { // Import discs from Excel data var data = from c in excel.Worksheet("disciplinas") select c; // All must be imported into this category CategoriaDisciplinaBO catDisBo = new CategoriaDisciplinaBO(); var cat = (from c in catDisBo.GetCategoriaDisciplinas() where c.Descricao == "CategoriaDisciplinaImportação" select c).First(); foreach (var s in data) { int cred = Int32.Parse(s[1]); bool g2 = s[3] == "Sim" ? true : false; discs.Add(Disciplina.GetDisciplina(s[0], cred, s[2], g2, cal, cat)); } try { DisciplinasBO controleDisciplinas = new DisciplinasBO(); IList <Disciplina> disciplinasCadastradas = controleDisciplinas.GetDisciplinas(); IList <Disciplina> disciplinasImportadas = discs; List <Disciplina> disciplinasInCalendario = controleDisciplinas.GetDisciplinaInCalendario(cal.Id); //Dictionary<String, Disciplina> dic_disciplinasCadastradas = new Dictionary<string, Disciplina>(); //foreach(Disciplina d in disciplinasCadastradas) // dic_disciplinasCadastradas.Add(d.Cod, d); //Dictionary<String, Disciplina> dic_disciplinasInCalendario = new Dictionary<string, Disciplina>(); //foreach (Disciplina d in disciplinasInCalendario) // dic_disciplinasInCalendario.Add(d.Cod, d); int novas = 0; int novasCal = 0; foreach (Disciplina disciplinaAtual in disciplinasImportadas) { // if (!dic_disciplinasCadastradas.ContainsKey(disciplinaAtual.Cod)) if (!disciplinasCadastradas.Contains(disciplinaAtual)) { output.InnerHtml += disciplinaAtual.ToString() + "<br>"; //ListBox1.Items.Add(disciplinaAtual.ToString()); //insere na tabela disciplinas e disciplinasincalendario controleDisciplinas.InsereDisciplina(disciplinaAtual); novas++; } else { // if (!dic_disciplinasInCalendario.ContainsKey(disciplinaAtual.Cod)) if (!disciplinasInCalendario.Contains(disciplinaAtual)) { //insere apenas na tabela disciplinasincalendario controleDisciplinas.InsereDisciplinaInCalendario(disciplinaAtual, cal.Id); novasCal++; } } } output.InnerHtml += "<h3>Novas: " + novas + ", novas neste calendário: " + novasCal + "</h3>"; } catch (Exception ex) { throw ex; } }