// PUT /tbDispositivoUsuario/token/ public HttpResponseMessage Put(string token, [FromBody] tbDispositivoUsuario param) { tbLogAcessoUsuario log = new tbLogAcessoUsuario(); try { log = Bibliotecas.LogAcaoUsuario.New(token, JsonConvert.SerializeObject(param), "Put"); HttpResponseMessage retorno = new HttpResponseMessage(); if (Permissoes.Autenticado(token)) { GatewayTbDispositivoUsuario.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); } }
/// <summary> /// Adiciona nova TbDispositivoUsuario /// </summary> /// <param name="param"></param> /// <returns></returns> public static Int32 Add(string token, IonicWebHook param) { try { // Atualiza o contexto ((IObjectContextAdapter)_db).ObjectContext.Refresh(RefreshMode.StoreWins, _db.ChangeTracker.Entries().Select(c => c.Entity)); tbDispositivoUsuario disUser = new tbDispositivoUsuario(); if (param.usuario == null) { return(1); } else { disUser.dsPlataforma = param.device.platform; disUser.dsModelo = param.device.model; disUser.dsVersao = param.device.version; disUser.tmLargura = param.device.screen_width; disUser.tmAltura = param.device.screen_height; disUser.idIONIC = param.device.uuid; disUser.idUserIONIC = param.user_id; if (param._push.android_tokens.Count > 0) { disUser.cdTokenValido = param._push.android_tokens.First(); } else if (param._push.ios_tokens.Count > 0) { disUser.cdTokenValido = param._push.ios_tokens.First(); } else { disUser.cdTokenValido = null; } disUser.idUser = Permissoes.GetIdUserPeloLogin(param.usuario); _db.tbDispositivoUsuarios.Add(disUser); _db.SaveChanges(); return(1); } } catch (Exception e) { if (e is DbEntityValidationException) { string erro = MensagemErro.getMensagemErro((DbEntityValidationException)e); throw new Exception(erro.Equals("") ? "Falha ao salvar TbDispositivoUsuario" : erro); } throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message); } }
/// <summary> /// Altera tbDispositivoUsuario /// </summary> /// <param name="param"></param> /// <returns></returns> public static void Update(string token, tbDispositivoUsuario param) { try { // Atualiza o contexto ((IObjectContextAdapter)_db).ObjectContext.Refresh(RefreshMode.StoreWins, _db.ChangeTracker.Entries().Select(c => c.Entity)); tbDispositivoUsuario value = _db.tbDispositivoUsuarios .Where(e => e.idDispositivoUsuario.Equals(param.idDispositivoUsuario)) .First <tbDispositivoUsuario>(); // OBSERVAÇÂO: VERIFICAR SE EXISTE ALTERAÇÃO NO PARAMETROS if (param.idDispositivoUsuario != null && param.idDispositivoUsuario != value.idDispositivoUsuario) { value.idDispositivoUsuario = param.idDispositivoUsuario; } if (param.idUser != null && param.idUser != value.idUser) { value.idUser = param.idUser; } if (param.dsPlataforma != null && param.dsPlataforma != value.dsPlataforma) { value.dsPlataforma = param.dsPlataforma; } if (param.dsModelo != null && param.dsModelo != value.dsModelo) { value.dsModelo = param.dsModelo; } if (param.dsVersao != null && param.dsVersao != value.dsVersao) { value.dsVersao = param.dsVersao; } if (param.idIONIC != null && param.idIONIC != value.idIONIC) { value.idIONIC = param.idIONIC; } if (param.idUserIONIC != null && param.idUserIONIC != value.idUserIONIC) { value.idUserIONIC = param.idUserIONIC; } if (param.cdTokenValido != null && param.cdTokenValido != value.cdTokenValido) { value.cdTokenValido = param.cdTokenValido; } if (param.tmLargura != null && param.tmLargura != value.tmLargura) { value.tmLargura = param.tmLargura; } if (param.tmAltura != null && param.tmAltura != value.tmAltura) { value.tmAltura = param.tmAltura; } _db.SaveChanges(); } catch (Exception e) { if (e is DbEntityValidationException) { string erro = MensagemErro.getMensagemErro((DbEntityValidationException)e); throw new Exception(erro.Equals("") ? "Falha ao alterar TbDispositivoUsuario" : erro); } throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message); } }