public static int Inserir (System.String Cau_Descri, System.Int32 Cau_TipoAprovacao, System.String Cau_UrlAprovacao, System.Int32? Hie_Id, System.String Cau_ClasseRetorno, System.String Cau_MetodoRetorno){ string sql = @" INSERT INTO CadeiaAutorizacao.Cadeia ( Cau_Descri, Cau_TipoAprovacao, Cau_UrlAprovacao, Hie_Id, Cau_ClasseRetorno, Cau_MetodoRetorno ) VALUES ( @Cau_Descri, @Cau_TipoAprovacao, @Cau_UrlAprovacao, @Hie_Id, @Cau_ClasseRetorno, @Cau_MetodoRetorno ); SELECT SCOPE_IDENTITY(); "; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Cau_Descri", System.Data.DbType.String, 50, Cau_Descri ); bd.AdicionarParametro("@Cau_TipoAprovacao", System.Data.DbType.Int32, -1, Cau_TipoAprovacao ); bd.AdicionarParametro("@Cau_UrlAprovacao", System.Data.DbType.String, 100, Cau_UrlAprovacao ); bd.AdicionarParametro("@Hie_Id", System.Data.DbType.Int32, -1, Hie_Id ); bd.AdicionarParametro("@Cau_ClasseRetorno", System.Data.DbType.String, 100, Cau_ClasseRetorno ); bd.AdicionarParametro("@Cau_MetodoRetorno", System.Data.DbType.String, 50, Cau_MetodoRetorno ); object objRetorno = bd.ExecuteScalar(); return ( objRetorno == null || Convert.IsDBNull(objRetorno)) ? 0 : Convert.ToInt32(objRetorno); }
public string AddEditUser(Models.User P_User) { string sRet = ""; string sSQL = ""; BdUtil bdUtil = new BdUtil(); if (P_User.Id == 0) { sSQL = "Insert Into USERS(NAME,AGE,ADDRESS) values ('" + P_User.Name.Replace("'", " ") + "'," + P_User.Age + ",'" + P_User.Address.Replace("'", " ") + "')"; } else { sSQL = "Update USERS set NAME = '" + P_User.Name.Replace("'", " ") + "', AGE = " + P_User.Age + ",ADDRESS = '" + P_User.Address.Replace("'", " ") + "' where ID = " + P_User.Id; } try { if (bdUtil.ExecuteNonQuery(sSQL, null) == 1) { sRet = "OK"; } } catch (System.Exception ex) { //ex.Message; } return(sRet); }
public static int Inserir(System.String Hie_Descri, System.String Hie_Funcao) { string sql = @" INSERT INTO CadeiaAutorizacao.Hierarquia ( Hie_Descri, Hie_Funcao, Hie_DatInc, Hie_UsuInc, Hie_UsuTra, Hie_DatHor ) VALUES ( @Hie_Descri, @Hie_Funcao, GetDate(), @Hie_UsuInc, @Hie_UsuTra, GetDate() ); SELECT SCOPE_IDENTITY(); "; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Hie_Descri", System.Data.DbType.String, 50, Hie_Descri); bd.AdicionarParametro("@Hie_Funcao", System.Data.DbType.String, 100, Hie_Funcao); bd.AdicionarParametro("@Hie_UsuInc", System.Data.DbType.String, 15, System.Threading.Thread.CurrentPrincipal.Identity.Name); bd.AdicionarParametro("@Hie_UsuTra", System.Data.DbType.String, 15, System.Threading.Thread.CurrentPrincipal.Identity.Name); object objRetorno = bd.ExecuteScalar(); return (objRetorno == null || Convert.IsDBNull(objRetorno)) ? 0 : Convert.ToInt32(objRetorno); }
public static DataTable Obter_Hierarquias() { string sql = @" SELECT Hie_Id, Hie_Descri, Hie_Funcao FROM CadeiaAutorizacao.Hierarquia "; BdUtil bd = new BdUtil(sql); return bd.ObterDataTable(); }
public List <Models.User> GetName(Models.Search P_NAME) { List <Models.User> ret = new List <Models.User>(); BdUtil bdUtil = new BdUtil(); System.Data.Common.DbDataReader rs = bdUtil.Qry("select ID,NAME,AGE,ADDRESS from USERS where upper(name) like '%" + P_NAME.Name.ToUpperInvariant() + "%' order by NAME", null); while (rs.Read()) { ret.Add(new Models.User { Id = rs.GetInt32(0), Name = rs.GetString(1), Age = rs.GetInt32(2), Address = rs.GetString(3) }); } return(ret); }
public List <Models.User> GetAll() { List <Models.User> ret = new List <Models.User>(); BdUtil bdUtil = new BdUtil(); System.Data.Common.DbDataReader rs = bdUtil.Qry("select ID,NAME,AGE,ADDRESS from USERS order by NAME", null); while (rs.Read()) { ret.Add(new Models.User { Id = rs.GetInt32(0), Name = rs.GetString(1), Age = rs.GetInt32(2), Address = rs.GetString(3) }); } return(ret); }
public Models.User GetId(int P_ID) { Models.User ret = new Models.User(); BdUtil bdUtil = new BdUtil(); System.Data.Common.DbDataReader rs = bdUtil.Qry("select ID,NAME,AGE,ADDRESS from USERS where ID = " + P_ID, null); while (rs.Read()) { ret.Id = rs.GetInt32(0); ret.Name = rs.GetString(1); ret.Age = rs.GetInt32(2); ret.Address = rs.GetString(3); } return(ret); }
public static DataTable Obter_Usuario_Por_Hierarquia(string hie_ID) { string sql = @" SELECT Hus_Id, Hie_Id, u.Usu_Id, u.Usu_Nome, Hus_Alcada, u1.Usu_Nome Supervisor FROM CadeiaAutorizacao.HierarquiaUsuario hu join USUARIO u on hu.Usu_Id = u.usu_id left join Usuario u1 on hu.Usu_IdSuperior = u1.usu_id WHERE ( Hie_Id LIKE @Hie_Id ) "; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Hie_Id", System.Data.DbType.Int32, -1, hie_ID); return bd.ObterDataTable(); }
public static DataTable ObterPor_PK_CadeiaAutorizacao (System.Int32 Cau_Id){ string sql = @" SELECT Cau_Id, Cau_Descri, Cau_TipoAprovacao, Cau_UrlAprovacao, Hie_Id, Cau_ClasseRetorno, Cau_MetodoRetorno FROM CadeiaAutorizacao.Cadeia WHERE ( Cau_Id LIKE @Cau_Id )"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Cau_Id", System.Data.DbType.Int32, -1, Cau_Id ); return bd.ObterDataTable(); }
public string DelUser(int P_ID) { string sRet = ""; BdUtil bdUtil = new BdUtil(); string sSQL = "Delete from USERS where ID = " + P_ID.ToString(); try { if (bdUtil.ExecuteNonQuery(sSQL, null) == 1) { sRet = "OK"; } } catch (System.Exception ex) { //ex.Message; } return(sRet); }
public static DataTable ObterPor_PK_Hierarquia(System.Int32 Hie_Id) { string sql = @" SELECT Hie_Id, Hie_Descri, Hie_Funcao, Hie_DatInc, Hie_UsuInc, Hie_UsuTra, Hie_DatHor FROM CadeiaAutorizacao.Hierarquia WHERE ( Hie_Id LIKE @Hie_Id )"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Hie_Id", System.Data.DbType.Int32, -1, Hie_Id); return bd.ObterDataTable(); }
public static int Inserir(System.Int32 Hie_Id, System.Int32 Usu_Id, System.Decimal? Hus_Alcada, System.Int32? Usu_IdSuperior) { string sql = @" INSERT INTO CadeiaAutorizacao.HierarquiaUsuario ( Hie_Id, Usu_Id, Hus_Alcada, Usu_IdSuperior, Hus_DatInc, Hus_UsuInc, Hus_DatHor, Hus_UsuTra ) VALUES ( @Hie_Id, @Usu_Id, @Hus_Alcada, @Usu_IdSuperior, GetDate(), @Hus_UsuInc, GetDate(), @Hus_UsuTra ); SELECT SCOPE_IDENTITY(); "; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Hie_Id", System.Data.DbType.Int32, -1, Hie_Id); bd.AdicionarParametro("@Usu_Id", System.Data.DbType.Int32, -1, Usu_Id); bd.AdicionarParametro("@Hus_Alcada", System.Data.DbType.Decimal, -1, Hus_Alcada); bd.AdicionarParametro("@Usu_IdSuperior", System.Data.DbType.Int32, -1, Usu_IdSuperior); bd.AdicionarParametro("@Hus_UsuInc", System.Data.DbType.String, 15, System.Threading.Thread.CurrentPrincipal.Identity.Name); bd.AdicionarParametro("@Hus_UsuTra", System.Data.DbType.String, 15, System.Threading.Thread.CurrentPrincipal.Identity.Name); object objRetorno = bd.ExecuteScalar(); return (objRetorno == null || Convert.IsDBNull(objRetorno)) ? 0 : Convert.ToInt32(objRetorno); }
public static DataTable ObterPor_PK_HierarquiaUsuario(System.Int32 Hus_Id) { string sql = @" SELECT Hus_Id, Hie_Id, Usu_Id, Hus_Alcada, Usu_IdSuperior, Hus_DatInc, Hus_UsuInc, Hus_DatHor, Hus_UsuTra FROM CadeiaAutorizacao.HierarquiaUsuario WHERE ( Hus_Id LIKE @Hus_Id )"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Hus_Id", System.Data.DbType.Int32, -1, Hus_Id); return bd.ObterDataTable(); }
/// <summary> /// Verifica as autorizações para a instância de uma cadeia a partir de uma participação /// </summary> /// <param name="IdParticipacao">Id da participação</param> /// <returns>Status da instância da cadeia de acordo com a participação fornecida</returns> private static int VerificarAutorizacao(int IdInstacia, int IdParticipacao) { //BdUtil bd = new BdUtil("select CadeiaAutorizacao.UF_VerificarAutorizacao(@IdInstancia, @IdParticipacao)"); BdUtil bd = new BdUtil("select CadeiaAutorizacao.UF_VerificarAutorizacao(@IdParticipacao)"); //bd.AdicionarParametro("@IdInstancia", DbType.Int32, IdInstacia); bd.AdicionarParametro("@IdParticipacao", DbType.Int32, IdParticipacao); return bd.ExecuteScalar<int>(); }
/// <summary> /// Obtém os superiores do usuário baseado na estrutura de tabelas para hierarquia /// </summary> /// <param name="IdCadeia">Id da cadeia</param> /// <param name="IdUsuario">Id do usuário</param> /// <returns>Superiores do usuário</returns> private static DataTable ObterSuperioresPorTabelas(int IdCadeia, int IdUsuario) { string sql = @"WITH Superior (IdSuperior, alcada) AS ( SELECT hus.Usu_IdSuperior, hus.Hus_Alcada FROM CadeiaAutorizacao.HierarquiaUsuario hus JOIN CadeiaAutorizacao.Cadeia cau on cau.Hie_Id = hus.Hie_Id WHERE hus.Usu_Id = @Usu_Id and cau.Cau_Id = @Cau_Id UNION ALL SELECT Hus.Usu_IdSuperior, hus.Hus_Alcada FROM CadeiaAutorizacao.HierarquiaUsuario hus JOIN CadeiaAutorizacao.Cadeia cau on cau.Hie_Id = hus.Hie_Id JOIN Superior ON hus.Usu_Id = Superior.IdSuperior and Cau_Id = @Cau_Id ) SELECT IdSuperior, alcada FROM Superior WHERE IdSuperior IS NOT NULL;"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Usu_Id", DbType.Int32, IdUsuario); bd.AdicionarParametro("@Cau_Id", DbType.Int32, IdCadeia); return bd.ObterDataTable(); }
/// <summary> /// Para uma cadeia retorna os parâmetros definidos para a sua função armazenada de hierarquia /// O objetivo desse método é facilitar a criação do DataTable para o parâmetro parametrosFuncaoHierarquia /// do método Incluir /// </summary> /// <returns>Superiores hierárquicos do funcionário</returns> public static CadeiaAutorizacaoDataSet.ParemetroFuncaoHierarquiaDataTable ObterParametrosFuncaoHierarquia(int IdCadeia) { string sql = @"SELECT Hpr_Nome AS nome, tpa.Tpa_Descri AS tipo, Hpr_Tamanho AS tamanho, null AS valor FROM CadeiaAutorizacao.HierarquiaParametro hpr INNER JOIN CadeiaAutorizacao.Hierarquia hie on hie.Hie_Id = hpr.Hie_Id INNER JOIN CadeiaAutorizacao.Cadeia cau on cau.Hie_Id = hie.Hie_Id INNER JOIN Manutencao.TipoADO tpa on tpa.Tpa_Id = hpr.Tpa_Id WHERE cau.Cau_Id = @IdCadeia"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdCadeia", DbType.Int32, IdCadeia); return bd.ObterDataTable<CadeiaAutorizacaoDataSet.ParemetroFuncaoHierarquiaDataTable>(); }
public static void Alterar (System.Int32 original_Cau_Id, System.String Cau_Descri, System.Int32 Cau_TipoAprovacao, System.String Cau_UrlAprovacao, System.Int32? Hie_Id, System.String Cau_ClasseRetorno, System.String Cau_MetodoRetorno){ string sql = @"UPDATE CadeiaAutorizacao.Cadeia SET Cau_Descri= @Cau_Descri , Cau_TipoAprovacao= @Cau_TipoAprovacao , Cau_UrlAprovacao= @Cau_UrlAprovacao , Hie_Id= @Hie_Id , Cau_ClasseRetorno= @Cau_ClasseRetorno , Cau_MetodoRetorno= @Cau_MetodoRetorno WHERE Cau_Id = @Cau_Id"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Cau_Id", System.Data.DbType.Int32, -1, original_Cau_Id ); bd.AdicionarParametro("@Cau_Descri", System.Data.DbType.String, 50, Cau_Descri ); bd.AdicionarParametro("@Cau_TipoAprovacao", System.Data.DbType.Int32, -1, Cau_TipoAprovacao ); bd.AdicionarParametro("@Cau_UrlAprovacao", System.Data.DbType.String, 100, Cau_UrlAprovacao ); bd.AdicionarParametro("@Hie_Id", System.Data.DbType.Int32, -1, Hie_Id ); bd.AdicionarParametro("@Cau_ClasseRetorno", System.Data.DbType.String, 100, Cau_ClasseRetorno ); bd.AdicionarParametro("@Cau_MetodoRetorno", System.Data.DbType.String, 50, Cau_MetodoRetorno ); bd.ExecuteNonQuery(); }
/// <summary> /// Incluir um participante na instância da cadeia de autorizacao /// </summary> /// <param name="IdInstancia">Id da instância</param> /// <param name="IdParticipante">Id do usuário participante</param> /// <param name="data">Data da criação da participação</param> /// <param name="tipo">Tipo da participação: 1 = Responsável; 2 = Colaborador; 3 = Leitor</param> public static void IncluirParticipante(int IdInstancia, int IdParticipante, DateTime data, TipoParticipacao tipoParticipacao) { string sql = @"INSERT INTO CadeiaAutorizacao.UsuarioParticipacao (Cai_Id, Usu_Id, Usp_Tipo, Usp_Data) VALUES (@Cai_Id, @Usu_Id, @Usp_Tipo, @Usp_Data)"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Cai_Id", DbType.Int32, IdInstancia); bd.AdicionarParametro("@Usu_Id", DbType.Int32, IdParticipante); bd.AdicionarParametro("@Usp_Tipo", DbType.Int16, (int)tipoParticipacao); bd.AdicionarParametro("@Usp_Data", DbType.DateTime, data); bd.ExecuteNonQuery(); }
/// <summary> /// Retorna o chamado para o Usp_ID /// </summary> /// <param name="usp_ID"></param> /// <returns></returns> public static int ObterCai_IDPorUsp_ID(int usp_ID) { string sql = @"SELECT Cai_ID FROM CadeiaAutorizacao.UsuarioParticipacao WHERE Usp_ID = @Usp_ID"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Usp_ID", DbType.Int32, usp_ID); return bd.ExecuteScalar<int>(); }
/// <summary> /// Executa o método do sistema fornecendo o Id da participação /// </summary> /// <param name="IdParticipacao">Id da participação</param> private static void ExecutarMetodoSistema(int IdParticipacao, Autorizacao Autorizacao, string Mensagem) { string sql = @"SELECT cau.Cau_ClasseRetorno, cau.Cau_MetodoRetorno, cai.Cai_Id, usp.Usu_ID FROM CadeiaAutorizacao.UsuarioParticipacao usp INNER JOIN CadeiaAutorizacao.CadeiaInstancia cai on cai.Cai_Id = usp.Cai_Id INNER JOIN CadeiaAutorizacao.Cadeia cau on cau.Cau_Id = cai.Cau_Id WHERE usp.Usp_Id = @IdParticipacao"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdParticipacao", DbType.Int32, IdParticipacao); DataTable dt = bd.ObterDataTable(); if (dt.Rows.Count == 0) { throw new SecvException("Erro ao obter o método do sistema e id da instância"); } string nomeClasse = dt.Rows[0]["Cau_ClasseRetorno"].ToString(); string nomeMetodo = dt.Rows[0]["Cau_MetodoRetorno"].ToString(); int IdInstancia = Convert.ToInt32(dt.Rows[0]["Cai_Id"]); Type tipo = Type.GetType(nomeClasse); if (tipo == null) { throw new SecvException("Classe não encontrada."); } MethodInfo metodo = tipo.GetMethod(nomeMetodo); if (metodo == null) { throw new SecvException("Método não encontrado."); } int i = 0; List<object> parametros = new List<object>(); parametros.Add(IdInstancia); parametros.Add(Autorizacao); foreach (ParameterInfo parametro in metodo.GetParameters()) { switch (i) { case 0: { if (parametro.ParameterType != typeof(int)) { throw new SecvException("A ordem dos parâmetros tem que ser System.Int32, Autorizacao."); } i++; } break; case 1: { if (parametro.ParameterType != typeof(Autorizacao)) { throw new SecvException("A ordem dos parâmetros tem que ser System.Int32, Autorizacao."); } i++; } break; case 2: { if (parametro.ParameterType == typeof(String)) { parametros.Add(Mensagem); } else if (parametro.ParameterType == typeof(int)) { parametros.Add(Convert.ToInt32(dt.Rows[0]["Usu_ID"])); } else { throw new SecvException("A ordem dos parâmetros tem que ser [System.Int32 cai_ID, Autorizacao autorizacao, System.String mensagem] ou [System.Int32 cai_ID, Autorizacao autorizacao, System.Int32 UsuarioAprovador]."); } i++; } break; } } if ( i < 2 && i > 3) throw new SecvException("Quantidade de parametros inválida"); metodo.Invoke(null, parametros.ToArray()); }
/// <summary> /// Remove o substituto do usuário /// </summary> /// <param name="IdUsuario">Id do usuário</param> public static void RemoverSubstituto(int IdUsuario) { string sql = @"DELETE FROM CadeiaAutorizacao.Substituicao WHERE Sub_IdUsuario = @IdUsuario"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdUsuario", DbType.Int32, IdUsuario); bd.ExecuteNonQuery(); }
public static int ObterIDInstaciaPelaParticipacao(int IdParticipacao) { //Obtendo o Id da instância string sql = @" SELECT Cai_Id FROM CadeiaAutorizacao.UsuarioParticipacao WHERE Usp_Id = @IdParticipacao"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdParticipacao", DbType.Int32, IdParticipacao); return bd.ExecuteScalar<int>(); }
/// <summary> /// Retorna o substituto de um usuário /// </summary> /// <param name="IdUsario">Id do usuário</param> /// <returns>DataTable com o substituto do usuário.</returns> public static DataTable ObterSubstituto(int IdUsario) { string sql = @"SELECT usu.Usu_Id, usu.Usu_Nome FROM CadeiaAutorizacao.Substituicao sub INNER JOIN Usuario usu on usu.Usu_Id = sub.Sub_IdSubstituto WHERE sub.Sub_IdUsuario = @IdUsuario"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdUsuario", DbType.Int32, IdUsario); return bd.ObterDataTable(); }
public static int ObterQuantidadeParticipacoesAtivas(int usu_ID) { string sql = @"SELECT count(*) FROM CadeiaAutorizacao.UsuarioParticipacao usp JOIN CadeiaAutorizacao.CadeiaInstancia cai on cai.Cai_Id = usp.Cai_Id WHERE usp.Usp_Autorizacao = 0 AND cai.cai_status = 0 AND usp.Usu_Id = @IdUsuario"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdUsuario", DbType.Int32, usu_ID); return bd.ExecuteScalar<int>(); }
/// <summary> /// Retorna todas as participações pendentes do usuário /// </summary> /// <param name="IdUsuario">Id do usuário</param> /// <returns>DataTable com as todas as participações pendentes do usuário.</returns> public static DataTable ObterParticipacoesUsuario(int IdUsuario) { string sql = @"SELECT -- Cadeia cau.Cau_Descri, cau.Cau_UrlAprovacao, -- CadeiaInstancia cai.Cai_Id, cai.Cai_Descri, cai.Cai_Data, cai.Cai_Valor, cai.Cai_Conteudo, CASE cai.Cai_Status WHEN 0 THEN 'Aberta' WHEN 1 THEN 'Aprovada' WHEN 2 THEN 'Reprovada' END AS InstanciaStatus, -- UsuarioParticipacao usp.Usp_Id, Usp_Tipo, CASE usp.Usp_Tipo WHEN 1 THEN 'Responsavel' WHEN 2 THEN 'Colaborador' WHEN 3 THEN 'Leitor' END AS ParticipacaoTipo, usp.Usp_Mensagem FROM CadeiaAutorizacao.UsuarioParticipacao usp INNER JOIN CadeiaAutorizacao.CadeiaInstancia cai on cai.Cai_Id = usp.Cai_Id INNER JOIN CadeiaAutorizacao.Cadeia cau on cau.Cau_Id = cai.Cau_Id WHERE usp.Usp_Autorizacao = 0 AND cai.cai_status = 0 AND usp.Usu_Id = @IdUsuario order by Cai_Data"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdUsuario", DbType.Int32, IdUsuario); return bd.ObterDataTable(); }
/// <summary> /// Obtém as participações dos usuário para uma determinada instância de cadeia /// </summary> /// <param name="IdInstancia">Id da instância</param> /// <returns></returns> public static DataTable ObterParticipacoesCadeia(int IdInstancia) { string sql = @"SELECT usp.Usp_Id, CASE usp.Usp_Autorizacao WHEN 1 THEN 'Autorizado' WHEN 2 THEN 'Não Autorizado' END AS AutorizacaoTipo, Case usp.Usp_Tipo When 1 then 'Responsavel' When 2 then 'Colaborador' When 3 then 'Leitor' end as Tipo, usp.Usp_Mensagem, usp.usp_Data, u.Usu_Nome FROM CadeiaAutorizacao.UsuarioParticipacao usp INNER JOIN Usuario u on u.Usu_Id = usp.Usu_Id WHERE usp.Cai_Id = @IdCadeia"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdCadeia", DbType.Int32, IdInstancia); return bd.ObterDataTable(); }
/// <summary> /// Insere no banco de dados uma instância de cadeia de autorização /// </summary> /// <param name="descricao">Descrição da instância</param> /// <param name="data">Data</param> /// <param name="statusCadeia">Status</param> /// <param name="valor">Valor</param> /// <param name="conteudo">Conteúdo</param> /// <param name="IdCadeia">Id da cadeia</param> /// <param name="IdProprietario">Id do usuário que iniciou a instância da cadeia</param> /// <returns></returns> private static int IncluirInstancia(string descricao, DateTime data, StatusCadeia statusCadeia, float? valor, string conteudo, int IdCadeia, int IdProprietario) { string sql = @"INSERT INTO CadeiaAutorizacao.CadeiaInstancia (Cai_Descri, Cai_Data, Cai_Status, Cau_Id, Usu_IdProprietario, Cai_Valor, Cai_Conteudo) VALUES (@Cai_Descri, @Cai_Data, @Cai_Status, @Cau_Id, @Usu_IdProprietario, @Cai_Valor, @Cai_Conteudo); SELECT SCOPE_IDENTITY();"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Cai_Descri", DbType.String, descricao); bd.AdicionarParametro("@Cai_Data", DbType.DateTime, data); bd.AdicionarParametro("@Cai_Status", DbType.Int16, (int)statusCadeia); bd.AdicionarParametro("@Cau_Id", DbType.Int32, IdCadeia); bd.AdicionarParametro("@Usu_IdProprietario", DbType.Int32, IdProprietario); bd.AdicionarParametro("@Cai_Valor", DbType.Decimal, valor); bd.AdicionarParametro("@Cai_Conteudo", DbType.String, conteudo); object objRetorno = bd.ExecuteScalar(); return (objRetorno == null) ? 0 : Convert.ToInt32(objRetorno); }
public static void Alterar(System.Int32 original_Hus_Id, System.Int32 Hie_Id, System.Int32 Usu_Id, System.Decimal? Hus_Alcada, System.Int32? Usu_IdSuperior) { string sql = @"UPDATE CadeiaAutorizacao.HierarquiaUsuario SET Hie_Id= @Hie_Id , Usu_Id= @Usu_Id , Hus_Alcada= @Hus_Alcada , Usu_IdSuperior= @Usu_IdSuperior , Hus_DatHor= GetDate() , Hus_UsuTra= @Hus_UsuTra WHERE Hus_Id = @original_Hus_Id"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Hie_Id", System.Data.DbType.Int32, -1, Hie_Id); bd.AdicionarParametro("@Usu_Id", System.Data.DbType.Int32, -1, Usu_Id); bd.AdicionarParametro("@Hus_Alcada", System.Data.DbType.Decimal, -1, Hus_Alcada); bd.AdicionarParametro("@Usu_IdSuperior", System.Data.DbType.Int32, -1, Usu_IdSuperior); bd.AdicionarParametro("@Hus_UsuTra", System.Data.DbType.String, 15, System.Threading.Thread.CurrentPrincipal.Identity.Name); bd.AdicionarParametro("@original_Hus_Id", System.Data.DbType.Int32, -1, original_Hus_Id); bd.ExecuteNonQuery(); }
private static void InserirSubstituicao(int IdUsuario, int IdSubstituto) { string sql = @"INSERT INTO CadeiaAutorizacao.Substituicao (Sub_IdUsuario, Sub_IdSubstituto) VALUES (@IdUsuario, @IdSubstituto)"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdUsuario", DbType.Int32, IdUsuario); bd.AdicionarParametro("@IdSubstituto", DbType.Int32, IdSubstituto); bd.ExecuteNonQuery(); }
public static void Apagar (System.Int32 original_Cau_Id) { string sql = @"DELETE FROM CadeiaAutorizacao.Cadeia WHERE Cau_Id = @Cau_Id"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Cau_Id", System.Data.DbType.Int32, -1, original_Cau_Id ); bd.ExecuteNonQuery(); }
/// <summary> /// Obtém o nome da função de hierarquia para uma determinada cadeia /// </summary> /// <param name="IdCadeia">Id da cadeia</param> /// <returns>Nome da stored function de hierarquia</returns> private static string ObterNomeFuncaHierarquia(int IdCadeia) { string sql = @"SELECT h.Hie_Funcao FROM CadeiaAutorizacao.Hierarquia h INNER JOIN CadeiaAutorizacao.Cadeia c on c.Hie_Id = h.Hie_Id WHERE c.cau_Id = @IdCadeia"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdCadeia", DbType.Int32, IdCadeia); return Convert.ToString(bd.ExecuteScalar()); }
/// <summary> /// Cancela uma instância de cadeia. Altera o status para StatusCadeia.Cancelada (-1) /// </summary> /// <param name="IdInstancia">Id da Instância</param> public static void Cancelar(int IdInstancia) { //using (Escopo escopo = new Escopo(OpcaoTransacao.Requerido)) //{ string sql = @"UPDATE CadeiaAutorizacao.CadeiaInstancia SET Cai_Status = -1 WHERE Cai_Id = @Cai_Id"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@Cai_Id", DbType.Int32, IdInstancia); bd.ExecuteNonQuery(); //} }
/// <summary> /// Obtém os superiores do usuário executando a stored function de hierarquia /// </summary> /// <param name="IdCadeia">Id da cadeia</param> /// <param name="IdUsuario">Id do usuário</param> /// <param name="parametrosFuncaoHierarquia">Parâmetros para executar a stored function de hierarquia</param> /// <returns></returns> private static DataTable ObterSuperioresPorFuncao(int IdCadeia, int IdUsuario, CadeiaAutorizacaoDataSet.ParemetroFuncaoHierarquiaDataTable parametrosFuncaoHierarquia) { // Obtendo o nome da funcao para a hierarquia da cadeia string nomeFuncao = ObterNomeFuncaHierarquia(IdCadeia); if (string.IsNullOrEmpty(nomeFuncao)) { throw new SecvException("Função de hirarquia não encontrada"); } BdUtil bd = new BdUtil(nomeFuncao); //bd.Command.CommandType = CommandType.Text;// StoredProcedure; // Preparando os parâmetros foreach (DataRow parametro in parametrosFuncaoHierarquia) { string nome = parametro["nome"].ToString(); DbType tipo = (DbType)Enum.Parse(typeof(DbType), parametro["tipo"].ToString(), true); object valor = parametro["valor"]; bd.AdicionarParametro(nome, tipo, valor); } return bd.ObterDataTable(); }
/// <summary> /// Retorna o substituto de um usuário /// </summary> /// <param name="IdUsario">Id do usuário</param> /// <param name="NmUsuario">Valor para ser usado como filtro</param> /// <returns>DataTable com os usuários.</returns> public static DataTable ObterUsuarios(int IdUsario, string NmUsuario) { string sql = @" SELECT Usu_Id, Usu_Nome FROM Usuario where usu_id <> @IdUsuario and usu_nome like @NmUsuario order by usu_nome"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdUsuario", DbType.Int32, IdUsario); bd.AdicionarParametro("@NmUsuario", DbType.String, NmUsuario); return bd.ObterDataTable(); }
/// <summary> /// Retorna os dados da instância da cadeia. /// </summary> /// <param name="IdInstancia">Id da instância</param> /// <returns>DataTable com a linha da instância</returns> public static DataTable ObterInstancia(int IdInstancia) { string sql = @"SELECT cau.Cau_Descri, cai.Cai_Id, cai.Cai_Descri, cai.Cai_Data, cai.Cai_Status, CASE cai.Cai_Status WHEN 0 THEN 'Aberta' WHEN 1 THEN 'Aprovada' WHEN 2 THEN 'Reprovada' END AS InstanciaStatus, cai.Cai_Valor, cai.Cai_Conteudo, usu.usu_Nome FROM CadeiaAutorizacao.Cadeia cau INNER JOIN CadeiaAutorizacao.CadeiaInstancia cai on cau.Cau_Id = cai.Cau_Id INNER JOIN Usuario usu on usu.Usu_Id = cai.Usu_IdProprietario WHERE cai.Cai_Id = @IdInstancia"; BdUtil bd = new BdUtil(sql); bd.AdicionarParametro("@IdInstancia", DbType.Int32, IdInstancia); return bd.ObterDataTable(); }