/// <summary> /// Verifica a validade do Token /// </summary> /// <param name="token"></param> /// <returns></returns> public static Retorno Validade(string token) { try { ModelApiUnes _db = new ModelApiUnes(); Dictionary <string, string> queryString = new Dictionary <string, string>(); queryString.Add("104", token); queryString.Add("102", DateTime.Now.ToString("yyyyMMdd") + "<"); Retorno dados = Get("", 0, 104, 0, 0, 0, queryString, _db); if (dados.Registros.Count > 0) { TB_UNIVERSIDADE_TOKEN_API param = (TB_UNIVERSIDADE_TOKEN_API)dados.Registros[0]; param.UTA_DT_VALIDADE = DateTime.Now.AddDays(1); _db = new ModelApiUnes(); Update(token, param, _db); } return((dados.Registros.Count > 0) ? dados : new Retorno()); } catch (Exception e) { throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message); } }
/// <summary> /// Autentica e Gera novo Token /// </summary> /// <param name="preToken"></param> /// <param name="usuIdUsuario"></param> /// <returns></returns> public static Retorno NewToken(string preToken, int usuIdUsuario) { try { ModelApiUnes _db = new ModelApiUnes(); string token = Token.GetUniqueKey(preToken); TB_UNIVERSIDADE_TOKEN_API tokenApi = new TB_UNIVERSIDADE_TOKEN_API(); tokenApi.USU_ID_USUARIO = usuIdUsuario; tokenApi.UTA_DT_GERACAO = DateTime.Now; string horasLifeCircleString = _db.Database.SqlQuery <string>("SELECT PAR_TX FROM dbo.TB_PARAMETRO WHERE PAR_ID = 4").FirstOrDefault <string>(); double horasLifeCircle = Convert.ToDouble(horasLifeCircleString); // Adiciona tempo de vida para a Validade do Token tokenApi.UTA_DT_VALIDADE = DateTime.Now.AddHours(horasLifeCircle);// .AddDays(1); tokenApi.UTA_TX_TOKEN = token; Int64 idToken = Add("", tokenApi, _db); Dictionary <string, string> queryString = new Dictionary <string, string>(); queryString.Add("100", idToken.ToString()); Retorno dados = Get(token, 2, 100, 0, 0, 0, queryString, _db); return((dados.Registros.Count > 0) ? dados : new Retorno()); } catch (Exception e) { throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message); } }
/// <summary> /// Adiciona nova TB_UNIVERSIDADE_TOKEN_API /// </summary> /// <param name="param"></param> /// <returns></returns> public static Int64 Add(string token, TB_UNIVERSIDADE_TOKEN_API param, ModelApiUnes _dbContext = null) { ModelApiUnes _db; if (_dbContext == null) { _db = new ModelApiUnes(); } else { _db = _dbContext; } using (var transaction = _db.Database.BeginTransaction()) { try { _db.TB_UNIVERSIDADE_TOKEN_API.Add(param); _db.SaveChanges(); transaction.Commit(); return(param.UTA_ID_TOKEN_API); } catch (Exception e) { transaction.Rollback(); throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message); } finally { if (_dbContext == null) { // Fecha conexão transaction.Dispose(); _db.Database.Connection.Close(); _db.Dispose(); } } } }
/// <summary> /// Altera TB_UNIVERSIDADE_TOKEN_API /// </summary> /// <param name="param"></param> /// <returns></returns> public static void Update(string token, TB_UNIVERSIDADE_TOKEN_API param, ModelApiUnes _dbContext = null) { ModelApiUnes _db; if (_dbContext == null) { _db = new ModelApiUnes(); } else { _db = _dbContext; } using (var transaction = _db.Database.BeginTransaction()) { try { TB_UNIVERSIDADE_TOKEN_API value = _db.TB_UNIVERSIDADE_TOKEN_API .Where(e => e.UTA_ID_TOKEN_API.Equals(param.UTA_ID_TOKEN_API)) .First <TB_UNIVERSIDADE_TOKEN_API>(); if (param.UTA_ID_TOKEN_API != value.UTA_ID_TOKEN_API) { value.UTA_ID_TOKEN_API = param.UTA_ID_TOKEN_API; } if (param.USU_ID_USUARIO != value.USU_ID_USUARIO) { value.USU_ID_USUARIO = param.USU_ID_USUARIO; } if (param.UTA_DT_VALIDADE != null && param.UTA_DT_VALIDADE != value.UTA_DT_VALIDADE) { value.UTA_DT_VALIDADE = param.UTA_DT_VALIDADE; } if (param.UTA_DT_GERACAO != null && param.UTA_DT_GERACAO != value.UTA_DT_GERACAO) { value.UTA_DT_GERACAO = param.UTA_DT_GERACAO; } if (param.UTA_TX_TOKEN != null && param.UTA_TX_TOKEN != value.UTA_TX_TOKEN) { value.UTA_TX_TOKEN = param.UTA_TX_TOKEN; } _db.SaveChanges(); transaction.Commit(); } catch (Exception e) { transaction.Rollback(); throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message); } finally { if (_dbContext == null) { // Fecha conexão transaction.Dispose(); _db.Database.Connection.Close(); _db.Dispose(); } } } }