예제 #1
0
        // 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);
            }
        }
예제 #2
0
        /// <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);
            }
        }
예제 #3
0
        /// <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);
            }
        }