// PUT /LogExecution/token/ public HttpResponseMessage Put(string token, [FromBody] LogExecution param) { tbLogAcessoUsuario log = new tbLogAcessoUsuario(); try { log = Bibliotecas.LogAcaoUsuario.New(token, JsonConvert.SerializeObject(param), "Put"); HttpResponseMessage retorno = new HttpResponseMessage(); if (Permissoes.Autenticado(token)) { GatewayLogExecution.Update(token, param); log.codResposta = (int)HttpStatusCode.OK; Bibliotecas.LogAcaoUsuario.Save(log); return(Request.CreateResponse(HttpStatusCode.OK)); } else { log.codResposta = (int)HttpStatusCode.Unauthorized; Bibliotecas.LogAcaoUsuario.Save(log); return(Request.CreateResponse(HttpStatusCode.Unauthorized)); } } catch (Exception e) { log.codResposta = (int)HttpStatusCode.InternalServerError; log.msgErro = e.Message; Bibliotecas.LogAcaoUsuario.Save(log); throw new HttpResponseException(HttpStatusCode.InternalServerError); } }
// POST api/novacarga public int Post([FromBody] api.Models.Object.NovaCarga value) { try { int retorno = 0; string date = value.data.Substring(0, 10); DateTime dt = Convert.ToDateTime(date); DateTime dtNow = dt.AddDays(1); using (var _db = new painel_taxservices_dbContext()) { _db.Configuration.ProxyCreationEnabled = false; var lo = (from l in _db.LoginOperadoras where l.idOperadora.Equals(value.adquirente) select l).FirstOrDefault(); int idLogin = lo.id; api.Models.LogExecution verify = (from a in _db.LogExecutions join l in _db.LoginOperadoras on a.idLoginOperadora equals l.id where l.idGrupo.Equals(value.empresa) && l.cnpj.Equals(value.filial) && l.idOperadora.Equals(value.adquirente) && a.dtaFiltroTransacoes.Equals(dt) select(api.Models.LogExecution) a ).FirstOrDefault(); if (verify == null) { LogExecution log = new LogExecution(); log.idOperadora = value.adquirente; log.idLoginOperadora = lo.id; log.statusExecution = "7"; log.dtaExecucaoProxima = dtNow; log.dtaFiltroTransacoes = dt; log.dtaFiltroTransacoesFinal = dt; _db.LogExecutions.Add(log); _db.SaveChanges(); retorno = log.id; } else { string script = "exec up_ReprocessarCarga " + verify.id; int ret = _db.Database.ExecuteSqlCommand(script); retorno = verify.id; } return(retorno); } } catch (Exception e) { throw new HttpResponseException(HttpStatusCode.InternalServerError); } }
/// <summary> /// Adiciona nova LogExecution /// </summary> /// <param name="param"></param> /// <returns></returns> public static Int32 Add(string token, LogExecution param) { try { _db.LogExecutions.Add(param); _db.SaveChanges(); return(param.id); } catch (Exception e) { if (e is DbEntityValidationException) { string erro = MensagemErro.getMensagemErro((DbEntityValidationException)e); throw new Exception(erro.Equals("") ? "Falha ao salvar logexecution" : erro); } throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message); } }
// PUT api/execucao/5 public HttpResponseMessage Put(string token, [FromBody] Int32 id) { try { using (var _db = new painel_taxservices_dbContext()) { //_db.Configuration.ProxyCreationEnabled = false; LogExecution log = _db.LogExecutions.Where(s => s.id == id).FirstOrDefault <LogExecution>(); log.statusExecution = "3"; _db.SaveChanges(); } return(new HttpResponseMessage(HttpStatusCode.OK)); } catch { throw new HttpResponseException(HttpStatusCode.InternalServerError); } }
/** * Armazena o logexecution, caso não exista */ private static void adicionaLogExecution(painel_taxservices_dbContext _db, Int32 idLoginOperadora, Int32 idOperadora) { // Armazena o logexecution, caso não exista // Verifica se já existe logExecution para o registro corrente LogExecution logExecution = _db.LogExecutions .Where(l => l.idLoginOperadora == idLoginOperadora) .Where(l => l.idOperadora == idOperadora) .FirstOrDefault(); if (logExecution == null) { Operadora op = _db.Operadoras.Where(o => o.id == idOperadora).FirstOrDefault(); // o que é enviado é o nome e não a descrição if (op == null) { return; } Models.Adquirente adquirente = _db.Adquirentes.Where(o => o.nome.Equals(op.nmOperadora)).FirstOrDefault(); if (adquirente == null) { return; } DateTime hrExec = (DateTime)adquirente.hraExecucao; LogExecution newLogExecution = new LogExecution(); newLogExecution.idLoginOperadora = idLoginOperadora; newLogExecution.idOperadora = idOperadora; newLogExecution.statusExecution = "7"; //0 = Em execução; 1 = Executado com Sucesso; 2 = Erro na Execução; 3 = Re-Executar; 7 = Elegivel //newLogExecution.dtaFiltroTransacoes = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1, hrExec.Hour, hrExec.Minute, hrExec.Second); //newLogExecution.dtaFiltroTransacoesFinal = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1, hrExec.Hour, hrExec.Minute, hrExec.Second); newLogExecution.dtaFiltroTransacoes = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1, 0, 0, 0); newLogExecution.dtaFiltroTransacoesFinal = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1, 0, 0, 0); newLogExecution.dtaExecucaoProxima = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 2, hrExec.Hour, hrExec.Minute, hrExec.Second); newLogExecution.qtdTransacoes = 0; newLogExecution.vlTotalTransacoes = new decimal(0.0); _db.LogExecutions.Add(newLogExecution); _db.SaveChanges(); } }
/// <summary> /// Altera LogExecution /// </summary> /// <param name="param"></param> /// <returns></returns> public static void Update(string token, LogExecution param) { try { LogExecution value = _db.LogExecutions .Where(e => e.id.Equals(param.id)) .First <LogExecution>(); // OBSERVAÇÂO: VERIFICAR SE EXISTE ALTERAÇÃO NO PARAMETROS if (param.id != null && param.id != value.id) { value.id = param.id; } if (param.idOperadora != null && param.idOperadora != value.idOperadora) { value.idOperadora = param.idOperadora; } if (param.dtaExecution != null && param.dtaExecution != value.dtaExecution) { value.dtaExecution = param.dtaExecution; } if (param.dtaFiltroTransacoes != null && param.dtaFiltroTransacoes != value.dtaFiltroTransacoes) { value.dtaFiltroTransacoes = param.dtaFiltroTransacoes; } if (param.qtdTransacoes != null && param.qtdTransacoes != value.qtdTransacoes) { value.qtdTransacoes = param.qtdTransacoes; } if (param.vlTotalTransacoes != null && param.vlTotalTransacoes != value.vlTotalTransacoes) { value.vlTotalTransacoes = param.vlTotalTransacoes; } if (param.statusExecution != null && param.statusExecution != value.statusExecution) { value.statusExecution = param.statusExecution; } if (param.idLoginOperadora != null && param.idLoginOperadora != value.idLoginOperadora) { value.idLoginOperadora = param.idLoginOperadora; } if (param.dtaExecucaoInicio != null && param.dtaExecucaoInicio != value.dtaExecucaoInicio) { value.dtaExecucaoInicio = param.dtaExecucaoInicio; } if (param.dtaExecucaoFim != null && param.dtaExecucaoFim != value.dtaExecucaoFim) { value.dtaExecucaoFim = param.dtaExecucaoFim; } if (param.dtaFiltroTransacoesFinal != null && param.dtaFiltroTransacoesFinal != value.dtaFiltroTransacoesFinal) { value.dtaFiltroTransacoesFinal = param.dtaFiltroTransacoesFinal; } if (param.dtaExecucaoProxima != null && param.dtaExecucaoProxima != value.dtaExecucaoProxima) { value.dtaExecucaoProxima = param.dtaExecucaoProxima; } _db.SaveChanges(); } catch (Exception e) { if (e is DbEntityValidationException) { string erro = MensagemErro.getMensagemErro((DbEntityValidationException)e); throw new Exception(erro.Equals("") ? "Falha ao alterar logexecution" : erro); } throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message); } }