public FilaAtendimentoUsuarioViewModel Run(Repository value) { FilaAtendimentoUsuarioViewModel r = (FilaAtendimentoUsuarioViewModel)value; FilaAtendimentoUsuarioViewModel result = new FilaAtendimentoUsuarioViewModel() { uri = r.uri, empresaId = sessaoCorrente.empresaId, FilaAtendimentoID = r.FilaAtendimentoID, UsuarioID = r.UsuarioID, Situacao = r.Situacao, mensagem = new Validate() { Code = 0, Message = "Registro processado com sucesso" } }; try { int _empresaId = SessaoLocal.empresaId; FilaAtendimentoUsuarioModel FilaAtendimentoUsuarioModel = new FilaAtendimentoUsuarioModel(this.db, this.seguranca_db); if (Operacao == "I") // Incluir credenciado { #region Incluir o Usuário na Fila result = FilaAtendimentoUsuarioModel.Insert(result); #endregion } else if (Operacao == "A") // Alterar credenciado { #region Alterar situação do usuário na fila result = FilaAtendimentoUsuarioModel.Update(result); #endregion } else // Excluir credenciado { #region Excluir Usuário da Fila result = FilaAtendimentoUsuarioModel.Delete(result); #endregion } if (result.mensagem.Code > 0) { throw new App_DominioException(result.mensagem); } db.SaveChanges(); result.mensagem.Code = -1; // Tem que devolver -1 porque na Superclasse, se devolver zero, vai executar novamente o SaveChanges. } catch (ArgumentException ex) { result.mensagem = new Validate() { Code = 997, Message = MensagemPadrao.Message(997).ToString(), MessageBase = ex.Message }; } catch (App_DominioException ex) { result.mensagem = ex.Result; if (ex.InnerException != null) { result.mensagem.MessageBase = new App_DominioException(ex.InnerException.Message ?? ex.Message, GetType().FullName).Message; } else { result.mensagem.MessageBase = new App_DominioException(ex.Result.Message, GetType().FullName).Message; } } catch (DbUpdateException ex) { result.mensagem.MessageBase = ex.InnerException.InnerException.Message ?? ex.Message; if (result.mensagem.MessageBase.ToUpper().Contains("REFERENCE")) { if (result.mensagem.MessageBase.ToUpper().Contains("DELETE")) { result.mensagem.Code = 16; result.mensagem.Message = MensagemPadrao.Message(16).ToString(); result.mensagem.MessageType = MsgType.ERROR; } else { result.mensagem.Code = 28; result.mensagem.Message = MensagemPadrao.Message(28).ToString(); result.mensagem.MessageType = MsgType.ERROR; } } else if (result.mensagem.MessageBase.ToUpper().Contains("PRIMARY")) { result.mensagem.Code = 37; result.mensagem.Message = MensagemPadrao.Message(37).ToString(); result.mensagem.MessageType = MsgType.WARNING; } else if (result.mensagem.MessageBase.ToUpper().Contains("UNIQUE KEY")) { result.mensagem.Code = 54; result.mensagem.Message = MensagemPadrao.Message(54).ToString(); result.mensagem.MessageType = MsgType.WARNING; } else { result.mensagem.Code = 44; result.mensagem.Message = MensagemPadrao.Message(44).ToString(); result.mensagem.MessageType = MsgType.ERROR; } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { result.mensagem = new Validate() { Code = 42, Message = MensagemPadrao.Message(42).ToString(), MessageBase = ex.EntityValidationErrors.Select(m => m.ValidationErrors.First().ErrorMessage).First() }; } catch (Exception ex) { result.mensagem.Code = 17; result.mensagem.Message = MensagemPadrao.Message(17).ToString(); result.mensagem.MessageBase = new App_DominioException(ex.InnerException.InnerException.Message ?? ex.Message, GetType().FullName).Message; result.mensagem.MessageType = MsgType.ERROR; } return(result); }
public FilaAtendimentoUsuarioEditViewModel Run(Repository value) { FilaAtendimentoUsuarioEditViewModel r = (FilaAtendimentoUsuarioEditViewModel)value; FilaAtendimentoUsuarioEditViewModel result = new FilaAtendimentoUsuarioEditViewModel() { mensagem = new Validate() { Code = 0, Message = "Registro processado com sucesso" } }; try { int _empresaId = sessaoCorrente.empresaId; #region FilaAtendimentoUsuarioEditViewModel FilaAtendimentoUsuarioModel Model = new FilaAtendimentoUsuarioModel(this.db, this.seguranca_db); result.FilaAtendimentoUsuarioViewModel = Model.CreateRepository(); result.FilaAtendimentoUsuarioViewModel.FilaAtendimentoID = r.FilaAtendimentoUsuarioViewModel.FilaAtendimentoID; result.FilaAtendimentoUsuarioViewModel.DescricaoFila = db.FilaAtendimentos.Find(r.FilaAtendimentoUsuarioViewModel.FilaAtendimentoID).Descricao; ListViewFilaAtendimentoUsuario list = new ListViewFilaAtendimentoUsuario(this.db, this.seguranca_db); result.FilaAtendimentoUsuarios = list.Bind(0, 50, result.FilaAtendimentoUsuarioViewModel.FilaAtendimentoID); #endregion } catch (ArgumentException ex) { result.FilaAtendimentoUsuarioViewModel.mensagem = new Validate() { Code = 999, Message = MensagemPadrao.Message(999).ToString(), MessageBase = ex.Message }; } catch (App_DominioException ex) { result.FilaAtendimentoUsuarioViewModel.mensagem = ex.Result; if (ex.InnerException != null) { result.FilaAtendimentoUsuarioViewModel.mensagem.MessageBase = new App_DominioException(ex.InnerException.Message ?? ex.Message, GetType().FullName).Message; } else { result.FilaAtendimentoUsuarioViewModel.mensagem.MessageBase = new App_DominioException(ex.Result.Message, GetType().FullName).Message; } } catch (DbUpdateException ex) { result.FilaAtendimentoUsuarioViewModel.mensagem.MessageBase = ex.InnerException.InnerException.Message ?? ex.Message; if (result.FilaAtendimentoUsuarioViewModel.mensagem.MessageBase.ToUpper().Contains("REFERENCE")) { if (result.FilaAtendimentoUsuarioViewModel.mensagem.MessageBase.ToUpper().Contains("DELETE")) { result.FilaAtendimentoUsuarioViewModel.mensagem.Code = 16; result.FilaAtendimentoUsuarioViewModel.mensagem.Message = MensagemPadrao.Message(16).ToString(); result.FilaAtendimentoUsuarioViewModel.mensagem.MessageType = MsgType.ERROR; } else { result.FilaAtendimentoUsuarioViewModel.mensagem.Code = 28; result.FilaAtendimentoUsuarioViewModel.mensagem.Message = MensagemPadrao.Message(28).ToString(); result.FilaAtendimentoUsuarioViewModel.mensagem.MessageType = MsgType.ERROR; } } else if (result.FilaAtendimentoUsuarioViewModel.mensagem.MessageBase.ToUpper().Contains("PRIMARY")) { result.FilaAtendimentoUsuarioViewModel.mensagem.Code = 37; result.FilaAtendimentoUsuarioViewModel.mensagem.Message = MensagemPadrao.Message(37).ToString(); result.FilaAtendimentoUsuarioViewModel.mensagem.MessageType = MsgType.WARNING; } else if (result.FilaAtendimentoUsuarioViewModel.mensagem.MessageBase.ToUpper().Contains("UNIQUE KEY")) { result.FilaAtendimentoUsuarioViewModel.mensagem.Code = 54; result.FilaAtendimentoUsuarioViewModel.mensagem.Message = MensagemPadrao.Message(54).ToString(); result.FilaAtendimentoUsuarioViewModel.mensagem.MessageType = MsgType.WARNING; } else { result.FilaAtendimentoUsuarioViewModel.mensagem.Code = 44; result.FilaAtendimentoUsuarioViewModel.mensagem.Message = MensagemPadrao.Message(44).ToString(); result.FilaAtendimentoUsuarioViewModel.mensagem.MessageType = MsgType.ERROR; } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { result.FilaAtendimentoUsuarioViewModel.mensagem = new Validate() { Code = 42, Message = MensagemPadrao.Message(42).ToString(), MessageBase = ex.EntityValidationErrors.Select(m => m.ValidationErrors.First().ErrorMessage).First() }; } catch (Exception ex) { result.FilaAtendimentoUsuarioViewModel.mensagem.Code = 17; result.FilaAtendimentoUsuarioViewModel.mensagem.Message = MensagemPadrao.Message(17).ToString(); result.FilaAtendimentoUsuarioViewModel.mensagem.MessageBase = new App_DominioException(ex.InnerException.InnerException.Message ?? ex.Message, GetType().FullName).Message; result.FilaAtendimentoUsuarioViewModel.mensagem.MessageType = MsgType.ERROR; } return(result); }
public ActionResult EditUser(string FilaAtendimentoID, string UsuarioID, string UsuarioID_Exc, string Situacao, string Operacao) { if (ModelState.IsValid) { if (ViewBag.ValidateRequest) { FilaAtendimentoUsuarioEditViewModel result = null; try { #region Incluir/Editar FilaAtendimentoUsuario UsuarioID = Operacao == "I" ? UsuarioID : UsuarioID_Exc; result = new FilaAtendimentoUsuarioEditViewModel() { FilaAtendimentoUsuarioViewModel = new FilaAtendimentoUsuarioViewModel() { FilaAtendimentoID = int.Parse(FilaAtendimentoID), UsuarioID = int.Parse(UsuarioID), Situacao = Situacao, mensagem = new App_Dominio.Contratos.Validate() { Code = 0 } }, mensagem = new App_Dominio.Contratos.Validate() { Code = 0 } }; result.FilaAtendimentoUsuarioViewModel.uri = this.ControllerContext.Controller.GetType().Name.Replace("Controller", "") + "/" + this.ControllerContext.RouteData.Values["action"].ToString(); FactoryLocalhost <FilaAtendimentoUsuarioViewModel, ApplicationContext> factory = new FactoryLocalhost <FilaAtendimentoUsuarioViewModel, ApplicationContext>(); result.FilaAtendimentoUsuarios = factory.Execute(new FilaAtendimentoUsuarioCadastrarBI(Operacao), result.FilaAtendimentoUsuarioViewModel, int.Parse(FilaAtendimentoID)); if (factory.Mensagem.Code > 0) { throw new App_DominioException(factory.Mensagem); } FilaAtendimentoUsuarioModel FilaAtendimentoUsuarioModel = new FilaAtendimentoUsuarioModel(); result.FilaAtendimentoUsuarioViewModel = FilaAtendimentoUsuarioModel.CreateRepository(Request); result.FilaAtendimentoUsuarioViewModel.FilaAtendimentoID = int.Parse(FilaAtendimentoID); #endregion Success("Registro processado com sucesso"); } catch (App_DominioException ex) { ModelState.AddModelError("", ex.Result.MessageBase); // mensagem amigável ao usuário Error(ex.Result.Message); // Mensagem em inglês com a descrição detalhada do erro e fica no topo da tela } catch (Exception ex) { App_DominioException.saveError(ex, GetType().FullName); ModelState.AddModelError("", MensagemPadrao.Message(17).ToString()); // mensagem amigável ao usuário Error(ex.Message); // Mensagem em inglês com a descrição detalhada do erro e fica no topo da tela } return(View("_EditUser", result)); } else { return(View()); } } else { FilaAtendimentoUsuarioEditViewModel result = new FilaAtendimentoUsuarioEditViewModel() { FilaAtendimentoUsuarioViewModel = new FilaAtendimentoUsuarioViewModel() { FilaAtendimentoID = int.Parse(FilaAtendimentoID), mensagem = new App_Dominio.Contratos.Validate() { Code = 0 } }, mensagem = new App_Dominio.Contratos.Validate() { Code = 0 } }; Factory <FilaAtendimentoUsuarioEditViewModel, ApplicationContext> factory = new Factory <FilaAtendimentoUsuarioEditViewModel, ApplicationContext>(); FilaAtendimentoUsuarioEditViewModel obj = factory.Execute(new FilaAtendimentoUsuarioBI(), result); result.FilaAtendimentoUsuarios = obj.FilaAtendimentoUsuarios; Error("Erro de preenhcimento em campos"); return(View("_EditUser", result)); } }