// PUT /webpages_Controllers/token/ public HttpResponseMessage Put(string token, [FromBody] webpages_Controllers param) { // Abre nova conexão using (painel_taxservices_dbContext _db = new painel_taxservices_dbContext()) { tbLogAcessoUsuario log = new tbLogAcessoUsuario(); try { HttpResponseMessage retorno = new HttpResponseMessage(); log = Bibliotecas.LogAcaoUsuario.New(token, JsonConvert.SerializeObject(param), "Put", _db); if (Permissoes.Autenticado(token, _db)) { GatewayWebpagesControllers.Update(token, param, _db); log.codResposta = (int)HttpStatusCode.OK; Bibliotecas.LogAcaoUsuario.Save(log, _db); return(Request.CreateResponse(HttpStatusCode.OK)); } else { log.codResposta = (int)HttpStatusCode.Unauthorized; Bibliotecas.LogAcaoUsuario.Save(log, _db); 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> /// Altera webpages_Controllers /// </summary> /// <param name="param"></param> /// <returns></returns> public static void Update(string token, webpages_Controllers param, painel_taxservices_dbContext _dbContext = null) { painel_taxservices_dbContext _db; if (_dbContext == null) { _db = new painel_taxservices_dbContext(); } else { _db = _dbContext; } try { webpages_Controllers value = _db.webpages_Controllers .Where(e => e.id_controller.Equals(param.id_controller)) .First <webpages_Controllers>(); // OBSERVAÇÂO: VERIFICAR SE EXISTE ALTERAÇÃO NO PARAMETROS //if (param.id_controller != null && param.id_controller != value.id_controller) // value.id_controller = param.id_controller; if (param.ds_controller != null && param.ds_controller != value.ds_controller) { value.ds_controller = param.ds_controller; } if (param.nm_controller == null && param.ds_controller != null && param.ds_controller != value.ds_controller) { value.nm_controller = param.ds_controller; } else if (param.nm_controller != null && param.nm_controller != value.nm_controller) { value.nm_controller = param.nm_controller; } if (param.fl_menu != null && param.fl_menu != value.fl_menu) { value.fl_menu = param.fl_menu; } if (param.id_subController != null && param.id_subController != value.id_subController) { if (param.id_subController == -1) { value.id_subController = null; } else { value.id_subController = param.id_subController; } } _db.SaveChanges(); } catch (Exception e) { if (e is DbEntityValidationException) { string erro = MensagemErro.getMensagemErro((DbEntityValidationException)e); throw new Exception(erro.Equals("") ? "Falha ao alterar controller" : erro); } 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 _db.Database.Connection.Close(); _db.Dispose(); } } }