Ejemplo n.º 1
0
        // POST /tbAssinante/token/
        public HttpResponseMessage Post(string token, [FromBody] tbAssinante param)
        {
            tbLogAcessoUsuario log = new tbLogAcessoUsuario();

            try
            {
                log = Bibliotecas.LogAcaoUsuario.New(token, JsonConvert.SerializeObject(param), "POST");

                HttpResponseMessage retorno = new HttpResponseMessage();
                if (Permissoes.Autenticado(token))
                {
                    short dados = GatewayTbAssinante.Add(token, param);
                    log.codResposta = (int)HttpStatusCode.OK;
                    Bibliotecas.LogAcaoUsuario.Save(log);
                    return(Request.CreateResponse <short>(HttpStatusCode.OK, dados));
                }
                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);
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Altera tbAssinante
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public static void Update(string token, List <Assinante> param)
        {
            try
            {
                // Atualiza o contexto
                //((IObjectContextAdapter)_db).ObjectContext.Refresh(RefreshMode.StoreWins, _db.ChangeTracker.Entries().Select(c => c.Entity));

                foreach (Assinante p in param)
                {
                    int iduser;
                    if (p.id_users == 0)
                    {
                        iduser = Permissoes.GetIdUser(token);
                    }
                    else
                    {
                        iduser = p.id_users;
                    }
                    // Se encontrar no banco e o usuário desabilitar, delete o registro
                    tbAssinante valor = _db.tbAssinantes
                                        .Where(a => a.cdCatalogo == p.cdCatalogo && a.id_users == iduser)
                                        .FirstOrDefault();
                    if (valor != null)
                    {
                        if (!p.flInscrito)
                        {
                            _db.tbAssinantes.Remove(valor);
                            _db.SaveChanges();
                        }
                    }
                    // Se não encontrar e o usuário habilitar, grave o registro
                    else if (p.flInscrito)
                    {
                        valor            = new tbAssinante();
                        valor.id_users   = iduser;
                        valor.cdCatalogo = p.cdCatalogo;

                        _db.tbAssinantes.Add(valor);
                        _db.SaveChanges();
                    }
                }
            }
            catch (Exception e)
            {
                if (e is DbEntityValidationException)
                {
                    string erro = MensagemErro.getMensagemErro((DbEntityValidationException)e);
                    throw new Exception(erro.Equals("") ? "Falha ao alterar TbAssinante" : erro);
                }
                throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message);
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Adiciona nova TbAssinante
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public static short Add(string token, tbAssinante param)
        {
            try
            {
                // Atualiza o contexto
                ((IObjectContextAdapter)_db).ObjectContext.Refresh(RefreshMode.StoreWins, _db.ChangeTracker.Entries().Select(c => c.Entity));

                _db.tbAssinantes.Add(param);
                _db.SaveChanges();
                return(param.cdCatalogo);
            }
            catch (Exception e)
            {
                if (e is DbEntityValidationException)
                {
                    string erro = MensagemErro.getMensagemErro((DbEntityValidationException)e);
                    throw new Exception(erro.Equals("") ? "Falha ao salvar TbAssinante" : erro);
                }
                throw new Exception(e.InnerException == null ? e.Message : e.InnerException.InnerException == null ? e.InnerException.Message : e.InnerException.InnerException.Message);
            }
        }