/// <summary> /// Função que criar os dados para tabela Logs /// <para>Parametro ent - Informar a Tabela que está sendo alterada</para> /// <para>Parametro Operação - Informar se é Insert, Update ou Delete</para> /// </summary> /// <param name="ent"></param> /// <param name="Operacao"></param> /// <returns></returns> private MOD_log criarLog(MOD_acessos ent, string Operacao) { try { //preenche os dados para salvar na tabela Logs ent.Logs = new MOD_log(); ent.Logs.Data = DateTime.Now.ToString("dd/MM/yyyy"); ent.Logs.Hora = DateTime.Now.ToString("HH:mm"); ent.Logs.CodUsuario = Convert.ToString(modulos.CodUsuario); ent.Logs.CodRotina = "133"; ent.Logs.NomePc = modulos.DescPc; ent.Logs.CodRotina = Convert.ToString(MOD_acessoUsuario.RotLibAcessoUsuario); ent.Logs.Ocorrencia = "Foi feito " + Operacao.ToUpper() + " de acesso referente à rotina: < " + ent.CodRotina.PadLeft(5, '0') + " > " + " no cadastro do usuário Código: < " + ent.CodUsuario + " > Nome: < " + ent.Nome + " > "; ent.Logs.Ocorrencia = "Liberado o Acesso ref. a Rotina < " + ent.CodRotina + " > para o Usuario < " + ent.Usuario + " >. "; ent.Logs.CodCCB = modulos.CodRegional; return(ent.Logs); } catch (SqlException exl) { throw exl; } catch (Exception exl) { throw exl; } }
/// <summary> /// Função que Transmite a Entidade para a DAL fazer INSERT E DELETE /// </summary> /// <param name="objEnt"></param> /// <returns></returns> public bool salvar(MOD_acessos objEnt) { using (TransactionScope objTrans = new TransactionScope()) { try { #region Inicialização das variaveis this.blnRetorno = true; this.blnRetornoLog = true; #endregion #region Movimentação da tabela Acesso e Logs objDAL = new DAL_acessos(); objDAL_Log = new DAL_log(); //Chama a função que converte as datas objEnt.Logs = this.criarLog(objEnt, "Update"); objEnt.Logs = this.validaDadosLog(objEnt.Logs); blnRetorno = objDAL.salvar(objEnt); blnRetornoLog = objDAL_Log.inserir(objEnt.Logs); #endregion //Se der falso qualquer retorno a Transação deve ser Anulada if (this.blnRetorno.Equals(false) || this.blnRetornoLog.Equals(false)) { //finaliza a transação objTrans.Dispose(); throw new Exception(modulos.MsgErroSalvar); } else { //completa a transação objTrans.Complete(); return(true); } } catch (SqlException exl) { //finaliza a transação objTrans.Dispose(); throw exl; } catch (Exception ex) { //finaliza a transação objTrans.Dispose(); throw ex; } } }
/// <summary> /// Função que faz INSERT, UPDATE E DELETE na Tabela Acessos /// </summary> /// <param name="objEnt"></param> /// <returns></returns> public bool salvar(MOD_acessos objEnt) { try { //Varivel boleana que retorna se foi executado ou não no Banco //Tabela Acessos bool blnRetornoAcesso = true; //Declara a lista de parametros da tabela Acessos List <SqlParameter> objParam = new List <SqlParameter>(); //Verifica os critério se vai para Inserido ou Alteração ou vai para Exclusão if (objEnt.Marcado.Equals(true)) { if (Convert.ToInt64(objEnt.CodAcesso).Equals(0)) { //parametros da tabela principal objParam.Add(new SqlParameter("@CodAcesso", retornaId())); objParam.Add(new SqlParameter("@CodUsuario", string.IsNullOrEmpty(objEnt.CodUsuario) ? DBNull.Value as object : Convert.ToInt64(objEnt.CodUsuario) as object)); objParam.Add(new SqlParameter("@CodRotina", string.IsNullOrEmpty(objEnt.CodRotina) ? DBNull.Value as object : Convert.ToInt32(objEnt.CodRotina) as object)); blnRetornoAcesso = objAcessa.executar(strInsertAcesso, objParam); } } else { if (!Convert.ToInt64(objEnt.CodAcesso).Equals(0)) { //parametros da tabela principal objParam.Add(new SqlParameter("@CodAcesso", Convert.ToInt64(objEnt.CodAcesso))); blnRetornoAcesso = objAcessa.executar(strDeleteAcesso, objParam); } } //retorna o blnRetorno da tabela principal return(blnRetornoAcesso); } catch (SqlException exl) { throw exl; } catch (Exception ex) { throw ex; } }
/// <summary> /// Função que Retorna a Lista da Tabela Acessos Preenchida com os Valores Pesquisados /// </summary> /// <param name="objDtb"></param> /// <returns></returns> private List <MOD_acessos> criarListaAcesso(DataTable objDtb) { try { //instancia a lista List <MOD_acessos> lista = new List <MOD_acessos>(); //faz um loop no DataTable e preenche a lista foreach (DataRow row in objDtb.Rows) { //instancia a entidade MOD_acessos ent = new MOD_acessos(); //adiciona os campos às propriedades ent.CodAcesso = (string)(row.IsNull("CodAcesso") ? Convert.ToString(null) : Convert.ToString(row["CodAcesso"]).PadLeft(6, '0')); ent.CodUsuario = (string)(row.IsNull("CodUsuario") ? Convert.ToString(null) : Convert.ToString(row["CodUsuario"]).PadLeft(6, '0')); ent.Usuario = (string)(row.IsNull("Usuario") ? null : row["Usuario"]); ent.Nome = (string)(row.IsNull("Nome") ? null : row["Nome"]); ent.Supervisor = (string)(row.IsNull("Supervisor") ? null : row["Supervisor"]); ent.CodModulo = (string)(row.IsNull("CodModulo") ? Convert.ToString(null) : Convert.ToString(row["CodModulo"]).PadLeft(3, '0')); ent.DescModulo = (string)(row.IsNull("DescModulo") ? null : row["DescModulo"]); ent.CodSubModulo = (string)(row.IsNull("CodSubModulo") ? Convert.ToString(null) : Convert.ToString(row["CodSubModulo"]).PadLeft(4, '0')); ent.DescSubModulo = (string)(row.IsNull("DescSubModulo") ? null : row["DescSubModulo"]); ent.CodPrograma = (string)(row.IsNull("CodPrograma") ? Convert.ToString(null) : Convert.ToString(row["CodPrograma"]).PadLeft(5, '0')); ent.DescPrograma = (string)(row.IsNull("DescPrograma") ? null : row["DescPrograma"]); ent.CodRotina = (string)(row.IsNull("CodRotina") ? Convert.ToString(null) : Convert.ToString(row["CodRotina"]).PadLeft(6, '0')); ent.DescRotina = (string)(row.IsNull("DescRotina") ? null : row["DescRotina"]); ent.DescInd = (string)(row.IsNull("DescInd") ? null : row["DescInd"]); ent.DescSeg = (string)(row.IsNull("DescSeg") ? null : row["DescSeg"]); ent.NivelRotina = (string)(row.IsNull("NivelRotina") ? Convert.ToString(null) : Convert.ToString(row["NivelRotina"])); ent.Marcado = true; //adiciona os dados à lista lista.Add(ent); } //retorna a lista com os valores return(lista); } catch (SqlException exl) { throw exl; } catch (Exception ex) { throw ex; } }