Ejemplo n.º 1
0
        /// <summary>
        /// Lista de todos os Documentos não deletados
        /// </summary>
        /// <param name="doc_id">Filtro por Id de Documento, null para todos</param>
        /// <param name="doc_codigo">Filtro por Código de Documento, vazio para todos</param>
        /// <param name="doc_descricao">Filtro por Descrição de Documento, vazio para todos</param>
        /// <param name="tpd_id">Filtro por Tipo de Documento, vazio para todos</param>
        /// <param name="dcl_codigo">Filtro por Classe de Projeto de Documento, vazio para todos</param>
        /// <param name="usu_id">Id do usuário logado</param>
        /// <returns>Lista de Documentos</returns>
        public List <Documento> Documento_ListAll(int?doc_id, string doc_codigo = "", string doc_descricao = "", string tpd_id = "", string dcl_codigo = "", int?usu_id = null)
        {
            try
            {
                string CaminhoVirtualRaizArquivos = new ParametroDAO().Parametro_GetValor("CaminhoVirtualRaizArquivos");
                if (!CaminhoVirtualRaizArquivos.EndsWith("/"))
                {
                    CaminhoVirtualRaizArquivos = CaminhoVirtualRaizArquivos + "/";
                }

                List <Documento> lst = new List <Documento>();
                using (SqlConnection con = new SqlConnection(strConn))
                {
                    con.Open();
                    SqlCommand com = new SqlCommand("STP_SEL_DOCUMENTOS", con);
                    com.CommandType = CommandType.StoredProcedure;
                    com.Parameters.AddWithValue("@doc_id", doc_id);
                    com.Parameters.AddWithValue("@doc_codigo", doc_codigo);
                    com.Parameters.AddWithValue("@doc_descricao", doc_descricao);
                    com.Parameters.AddWithValue("@tpd_id", tpd_id);
                    com.Parameters.AddWithValue("@dcl_codigo", dcl_codigo);
                    com.Parameters.AddWithValue("@usu_id", usu_id);

                    SqlDataReader rdr = com.ExecuteReader();
                    while (rdr.Read())
                    {
                        string doc_caminho = rdr["doc_caminho"].ToString();
                        if (doc_caminho.Trim() != "")
                        {
                            doc_caminho = CaminhoVirtualRaizArquivos + doc_caminho;
                            doc_caminho = HttpUtility.HtmlDecode(doc_caminho);

                            if (!new Gerais().RemoteFileExists(doc_caminho))
                            {
                                doc_caminho = "";
                            }
                        }

                        lst.Add(new Documento
                        {
                            doc_id        = Convert.ToInt32(rdr["doc_id"]),
                            doc_codigo    = rdr["doc_codigo"].ToString(),
                            doc_descricao = rdr["doc_descricao"].ToString(),
                            tpd_id        = rdr["tpd_id"].ToString(),
                            doc_caminho   = doc_caminho,
                            doc_ativo     = Convert.ToInt16(rdr["doc_ativo"]),
                            tpd_descricao = rdr["tpd_descricao"].ToString(),
                            dcl_id        = (rdr["dcl_id"] == DBNull.Value) ? 0 : Convert.ToInt16(rdr["dcl_id"]),
                            dcl_codigo    = (rdr["dcl_codigo"] == DBNull.Value) ? "" : rdr["dcl_codigo"].ToString(),
                            dcl_descricao = (rdr["dcl_descricao"] == DBNull.Value) ? "" : rdr["dcl_descricao"].ToString()
                        });
                    }
                    return(lst);
                }
            }
            catch (Exception ex)
            {
                int id = 0;
                new LogSistemaDAO().InserirLogErro(new LogErro(ex, this.GetType().Name, new StackTrace().GetFrame(0).GetMethod().Name), out id);
                throw new Exception(ex.Message);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Insere ou Altera os dados do Documento
        /// </summary>
        /// <param name="doc">Dados do Documento</param>
        /// <param name="usu_id">Id do usuário logado</param>
        /// <param name="ip">IP do usuário logado</param>
        /// <param name="doc_codigo_filtro">Dados do filtro por Codigo</param>
        /// <param name="doc_descricao_filtro">Dados do filtro por Descrição</param>
        /// <param name="tpd_id_filtro">Dados do filtro por Tipo</param>
        /// <param name="dcl_codigo_filtro">Dados do filtro por Classe</param>
        /// <param name="qt_por_pagina">Quantidade de registros por página</param>
        /// <param name="ordenado_por">Ordenado por</param>
        /// <returns>string</returns>
        public string Documento_Salvar(Documento doc, int usu_id, string ip,
                                       string doc_codigo_filtro = "", string doc_descricao_filtro = "", string tpd_id_filtro = "", string dcl_codigo_filtro = "",
                                       int qt_por_pagina        = 10, string ordenado_por = "")
        {
            try
            {
                string CaminhoVirtualRaizArquivos = new ParametroDAO().Parametro_GetValor("CaminhoVirtualRaizArquivos");
                string doc_caminho = doc.doc_caminho.Replace(CaminhoVirtualRaizArquivos, "");
                doc_caminho = HttpUtility.HtmlEncode(doc_caminho);
                string saida = "0";
                using (SqlConnection con = new SqlConnection(strConn))
                {
                    con.Open();
                    SqlCommand com = new SqlCommand();
                    if (doc.doc_id > 0)
                    {
                        com.CommandText = "STP_UPD_DOCUMENTO";
                    }
                    else
                    {
                        com.CommandText = "STP_INS_DOCUMENTO";
                    }

                    com.Connection  = con;
                    com.CommandType = CommandType.StoredProcedure;
                    com.Parameters.Clear();

                    // System.Data.SqlClient.SqlParameter p_return = new System.Data.SqlClient.SqlParameter();
                    //p_return.Direction = System.Data.ParameterDirection.ReturnValue;
                    //com.Parameters.Add(p_return);
                    //com.Parameters[0].Size = 1000000; //int.MaxValue;

                    if (doc.doc_id > 0)
                    {
                        com.Parameters.AddWithValue("@doc_id", doc.doc_id);
                    }

                    com.Parameters.AddWithValue("@doc_codigo", doc.doc_codigo.ToUpper());
                    com.Parameters.AddWithValue("@doc_descricao", doc.doc_descricao);
                    com.Parameters.AddWithValue("@tpd_id", doc.tpd_id);
                    if (doc.dcl_id > 0)
                    {
                        com.Parameters.AddWithValue("@dcl_id ", doc.dcl_id);
                    }
                    com.Parameters.AddWithValue("@doc_caminho", doc_caminho);
                    com.Parameters.AddWithValue("@doc_ativo", doc.doc_ativo);
                    com.Parameters.AddWithValue("@usu_id", usu_id);
                    com.Parameters.AddWithValue("@ip", ip);

                    if (doc.doc_id == 0) // se for insert, tem parametros adicionais
                    {
                        com.Parameters.AddWithValue("@doc_codigo_filtro", doc_codigo_filtro);
                        com.Parameters.AddWithValue("@doc_descricao_filtro", doc_descricao_filtro);
                        com.Parameters.AddWithValue("@tpd_id_filtro", tpd_id_filtro);
                        com.Parameters.AddWithValue("@dcl_codigo_filtro", dcl_codigo_filtro);
                        com.Parameters.AddWithValue("@ordenado_por", ordenado_por);
                        com.Parameters.AddWithValue("@qt_por_pagina", qt_por_pagina);
                    }

                    //   com.ExecuteScalar();

                    SqlDataReader reader = com.ExecuteReader();
                    while (reader.Read())
                    {
                        saida = reader["saida"] == DBNull.Value ? "0" : reader["saida"].ToString();
                    }
                    //  return Convert.ToInt32(p_return.Value);



                    return(saida);
                }
            }
            catch (Exception ex)
            {
                int id = 0;
                new LogSistemaDAO().InserirLogErro(new LogErro(ex, this.GetType().Name, new StackTrace().GetFrame(0).GetMethod().Name), out id);
                throw new Exception(ex.Message);
            }
        }