Exemple #1
0
        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();
            string       nomeUsuarioAberto;
            string       nomeUsuarioAtribuido;
            string       nomesala;
            string       categoriaName;

            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, 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;

                    // 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()), Convert.ToDateTime(dr["data"].ToString()), categoriaName);

                    // Adiciona o livro lido à lista

                    listChamado.Add(aChamado);
                }
            }

            dr.Close();

            conn.Close();

            return(listChamado);
        }
Exemple #2
0
        public void Update(Modelo.Chamado obj)
        {
            SqlConnection conn = new SqlConnection(connectionString);

            conn.Open();
            SqlCommand com = conn.CreateCommand();
            SqlCommand cmd = new SqlCommand("Update Chamado Set status = @status Where id = @id", conn);

            cmd.Parameters.AddWithValue("@id", obj.id);
            cmd.Parameters.AddWithValue("@status", obj.status);

            cmd.ExecuteNonQuery();
        }
Exemple #3
0
        public void Insert(Modelo.Chamado obj)
        {
            // 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 com = conn.CreateCommand();
            // Define comando de exclusão
            SqlCommand cmd = new SqlCommand("INSERT INTO Chamado(usuario_aberto_id, sala_id, categoria_id, equip_id, tombamento, status, statusEI, resumo,quant_equipamentos_defeituosos,data) VALUES (@usuario_aberto_id, @sala_id,@categoria_id,@equip_id, @tombamento,@status, @statusEI,@resumo,@quant_equipamentos_defeituosos,@data)", conn);

            cmd.Parameters.AddWithValue("@id", obj.id);
            cmd.Parameters.AddWithValue("@usuario_aberto_id", int.Parse(obj.usuario_aberto_id));

            //TryCatch para conversão
            try
            {
                cmd.Parameters.AddWithValue("@sala_id", int.Parse(obj.sala_id));
            }
            catch (FormatException error)
            {
                cmd.Parameters.AddWithValue("@sala_id", 0);
            }
            //TryCatch para conversão
            try
            {
                cmd.Parameters.AddWithValue("@categoria_id", int.Parse(obj.categoria_id));
            }
            catch (FormatException error)
            {
                cmd.Parameters.AddWithValue("@categoria_id", 0);
            }
            //TryCatch para conversão
            try
            {
                cmd.Parameters.AddWithValue("@equip_id", int.Parse(obj.equip_id));
            }
            catch (FormatException error)
            {
                cmd.Parameters.AddWithValue("@equip_id", 0);
            }
            cmd.Parameters.AddWithValue("@tombamento", obj.tombamento);
            cmd.Parameters.AddWithValue("@status", obj.status);
            cmd.Parameters.AddWithValue("@statusEI", obj.statusEI);
            cmd.Parameters.AddWithValue("@resumo", obj.resumo);
            cmd.Parameters.AddWithValue("@quant_equipamentos_defeituosos", obj.quantidadeeq);
            cmd.Parameters.AddWithValue("@data", obj.data);
            // Executa Comando
            cmd.ExecuteNonQuery();
        }
        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, 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 deve ser um número maior que 0";
                }

                //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__salas__5EBF139D"))
                {
                    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("~//3-Bolsista/WebFormCRUDChamadoBolsista.aspx");
            }
            else
            {
                Response.Redirect("~//3-Bolsista/WebFormAddChamadoBolsista.aspx");
            }
        }
Exemple #5
0
        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);
        }
Exemple #6
0
        public Modelo.Chamado Select(string id)
        {
            //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();

            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 'SEM ATRIBUIÇÃO'WHEN status = 2 THEN 'EM ATENDIMENTO'WHEN status = 3 THEN 'FECHADO'ELSE 'REABERTO' END AS statuschamado FROM Chamado where id = @id";
            cmd.Parameters.AddWithValue("@id", id);

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

            dr.Close();

            conn.Close();

            return(aChamado);
        }