protected void atribuir_Click(object sender, EventArgs e) { DAL.DALChamado aDALChamado = new DAL.DALChamado(); Modelo.Chamado aChamado = aDALChamado.Select(Session["idchamado"].ToString()); DropDownList drop = (DropDownList)Repeater3.Items[0].FindControl("atribuidoID"); aChamado.usuario_atribuido_id = drop.SelectedValue; aChamado.status = 2; aDALChamado.UpdateAtribuido(aChamado); Response.Redirect("~//2-Servidor/WebFormCRUDChamado.aspx"); }
protected void Repeater3_ItemCommand(object source, RepeaterCommandEventArgs e) { if (e.CommandName == "Fechar") { string id; id = e.CommandArgument.ToString(); Session["id"] = id; DAL.DALChamado arquivo = new DAL.DALChamado(); Modelo.Chamado mchamado; mchamado = arquivo.Select(id); mchamado.status = 3; arquivo.Update(mchamado); Response.Redirect("~//2-Servidor/WebFormCRUDChamado.aspx"); } }
protected void add_Click1(object sender, EventArgs e) { //Chamada do Modelo e do DAL para gravar valor no banco Modelo.Chamado aChamado; DAL.DALChamado aDALChamado = new DAL.DALChamado();; //Conversão de da quantidade de equipamento de string para int int quantidade = 0; //Caso seja um inteiro, efetua a conversão //Caso contrário, retornará 0 para ser tratado no trigger do banco if (int.TryParse(quantidadeeq.Text, out int result)) { quantidade = Convert.ToInt32(quantidadeeq.Text); } else { quantidade = 0; } //Salva os valores pegos na WebForm na classe modelo aChamado = new Modelo.Chamado("1", Session["idusuario"].ToString(), salaDrop.Text, catDrop.Text, modeloDrop.Text, tombamento.Text, 1, Convert.ToInt32(statusEI.Text), "", Convert.ToString(resumo.Text), quantidade, DateTime.Now); //bool para controle de erros //ok == true -> Erro inexistente //ok == false = -> Erro existente bool ok = true; //TryCatch para tratamento de possíveis erros //Os erros serão apresentados na tela quando a página for atualizada try { aDALChamado.Insert(aChamado); } //Erros capturados pelos triggers no banco de dados catch (SqlException error) { //Caso um erro seja detectado, ok se torna false ok = false; //Resumo vazio if (error.Message.Contains("Para abrir um chamado você deve indicar o problema")) { Session["MsgErroresumop"] = "Para abrir um chamado você deve indicar o problema"; } //Quantidade de máquinas com defeito menor que 1 if (error.Message.Contains("A quantidade de equipamentos deve ser um número maior que 0")) { Session["MsgErromaqdef"] = "A quantidade de equipamentos inválida"; } //Quantidade de máquinas maior que o existente na sala if (error.Message.Contains("Numero maximo de maquinas excedido")) { Session["MsgErromaqdef"] = "Número máximo de equipamentos excedido"; } //Nenhum equipamento foi escolhido -- Caso esse erro ocorra, nenhum dos outros será chamado, pois ele ocorre antes do trigger if (error.Message.Contains("FK__Chamado__sala_id")) { Session["MsgErroSala"] = "Voce deve selecionar a sala que possui equipamentos com defeito"; } } //Erro de erro de conversão que pode acontecer no DAL catch (FormatException errorFormat) { //Caso um erro seja detectado, ok se torna false ok = false; //Nenhum equipamento foi escolhido //Esse erro não será tratado caso a língua padrão da máquina onde a aplicação foi instalada for diferente do português // Acontecerá, pois o Format Exception é gerado automaticamente //Nenhum equipamento foi escolhido -- Caso esse erro ocorra, nenhum dos outros será chamado, pois ele ocorre antes do trigger if (errorFormat.Message.Contains("A cadeia de caracteres de entrada não estava em um formato correto")) { Session["MsgErrosala"] = "Deve haver uma sala válido existente"; } } //If para confirmação de erro //Caso não ocorra algum erro, o usuário é redirecionado para o crud //Caso haja erro, a página atualiza exibe as mensagens de erro if (ok) { Response.Redirect("~//2-Servidor/WebFormCRUDChamado.aspx"); } else { Response.Redirect("~//2-Servidor/WebFormAddChamado.aspx"); } }
public List <Modelo.Chamado> SelectOnly() { //Variáveis para buscar o nome das outras tabelas DALSalas sala = new DALSalas(); DALUsuario usu = new DALUsuario(); DALCategoria cat = new DALCategoria(); DALEquipamento equi = new DALEquipamento(); DALChamado tom = new DALChamado(); string nomeUsuarioAberto; string nomeUsuarioAtribuido; string nomesala; string categoriaName; string equip_id; string tombamento; // Variavel para armazenar um livro Modelo.Chamado aChamado; // Cria Lista Vazia List <Modelo.Chamado> aListChamado = new List <Modelo.Chamado>(); // Cria Conexão com banco de dados SqlConnection conn = new SqlConnection(connectionString); // Abre conexão com o banco de dados conn.Open(); // Cria comando SQL SqlCommand cmd = conn.CreateCommand(); SqlCommand cmdUsu = conn.CreateCommand(); SqlCommand cmdsala = conn.CreateCommand(); SqlCommand cmdequip = conn.CreateCommand(); SqlCommand cmdtom = conn.CreateCommand(); // define SQL do comando cmd.CommandText = "SELECT id,usuario_aberto_id,sala_id, usuario_atribuido_id, status, statusEI, resumo,quant_equipamentos_defeituosos,data, categoria_id, equip_id, tombamento, CASE " + "WHEN status = 1 THEN 'ABERTO'WHEN status = 2 THEN 'EM ATENDIMENTO'" + "WHEN status = 3 THEN 'FECHADO'ELSE 'REABERTO' END AS statuschamado FROM Chamado where (status = 1 or status = 2 or status = 4)"; // Executa comando, gerando objeto DbDataReader SqlDataReader dr = cmd.ExecuteReader(); // Le titulo do livro do resultado e apresenta no segundo rótulo if (dr.HasRows) { while (dr.Read()) // Le o proximo registro { //Retorna o nome do usuário nomeUsuarioAberto = usu.Select(dr["usuario_aberto_id"].ToString()).nome; //Retorna o nome da sala nomesala = sala.SelectNome(dr["sala_id"].ToString()); //Retorna o nome do usuario nomeUsuarioAtribuido = usu.Select(dr["usuario_atribuido_id"].ToString()).nome; //Retorna o nome da categoria categoriaName = cat.Select(dr["categoria_id"].ToString()).nome; //Retorna o nome do equipamento equip_id = equi.Select(dr["equip_id"].ToString()).modelo; //Retorna o tombamento tombamento = tom.Select(dr["tombamento"].ToString()).tombamento; // Cria objeto com dados lidos do banco de dados aChamado = new Modelo.Chamado(dr["id"].ToString(), dr["usuario_aberto_id"].ToString(), dr["sala_id"].ToString(), dr["usuario_atribuido_id"].ToString(), nomeUsuarioAberto, nomeUsuarioAtribuido, nomesala, Convert.ToInt32(dr["status"].ToString()), Convert.ToInt32(dr["status"].ToString()), dr["statuschamado"].ToString(), dr["resumo"].ToString(), Convert.ToInt32(dr["quant_equipamentos_defeituosos"].ToString()), equip_id, dr["tombamento"].ToString(), Convert.ToDateTime(dr["data"].ToString()), categoriaName); // Adiciona o livro lido à lista aListChamado.Add(aChamado); } } // Fecha DataReader dr.Close(); // Fecha Conexão conn.Close(); return(aListChamado); }
public List <Modelo.Chamado> selectSearchFechados(string resumo) { //Variáveis para buscar o nome das outras tabelas DALSalas sala = new DALSalas(); DALUsuario usu = new DALUsuario(); DALCategoria cat = new DALCategoria(); DALEquipamento equi = new DALEquipamento(); DALChamado tom = new DALChamado(); string nomeUsuarioAberto; string nomeUsuarioAtribuido; string nomesala; string categoriaName; string equip_id; string tombamento; Modelo.Chamado aChamado = new Modelo.Chamado(); List <Modelo.Chamado> listChamado = new List <Modelo.Chamado>(); SqlConnection conn = new SqlConnection(connectionString); conn.Open(); SqlCommand cmd = conn.CreateCommand(); cmd.CommandText = "SELECT id,usuario_aberto_id,sala_id, usuario_atribuido_id, status,resumo,quant_equipamentos_defeituosos,data, categoria_id, equip_id, tombamento, CASE WHEN status = 1 THEN 'ABERTO'WHEN status = 2 THEN 'EM ATENDIMENTO'" + "WHEN status = 3 THEN 'FECHADO'ELSE 'REABERTO' END AS statuschamado FROM Chamado where (resumo like '%" + resumo + "%') and (status like 3)"; SqlDataReader dr = cmd.ExecuteReader(); if (dr.HasRows) { while (dr.Read()) // Le o proximo registro { //Retorna o nome do usuário nomeUsuarioAberto = usu.Select(dr["usuario_aberto_id"].ToString()).nome; //Retorna o nome da sala nomesala = sala.SelectNome(dr["sala_id"].ToString()); //Retorna o nome do usuario nomeUsuarioAtribuido = usu.Select(dr["usuario_atribuido_id"].ToString()).nome; //Retorna o nome da categoria categoriaName = cat.Select(dr["categoria_id"].ToString()).nome; //Retorna o nome do equipamento equip_id = equi.Select(dr["equip_id"].ToString()).modelo; //Retorna o tombamento tombamento = tom.Select(dr["tombamento"].ToString()).tombamento; // Cria objeto com dados lidos do banco de dados aChamado = new Modelo.Chamado(dr["id"].ToString(), dr["usuario_aberto_id"].ToString(), dr["sala_id"].ToString(), dr["usuario_atribuido_id"].ToString(), nomeUsuarioAberto, nomeUsuarioAtribuido, nomesala, Convert.ToInt32(dr["status"].ToString()), Convert.ToInt32(dr["status"].ToString()), dr["statuschamado"].ToString(), dr["resumo"].ToString(), Convert.ToInt32(dr["quant_equipamentos_defeituosos"].ToString()), equip_id, dr["tombamento"].ToString(), Convert.ToDateTime(dr["data"].ToString()), categoriaName); // Adiciona o livro lido à lista listChamado.Add(aChamado); } } dr.Close(); conn.Close(); return(listChamado); }