public async Task <IActionResult> Edit(int id, [Bind("Id,Status,GrupoId,IdentityUserId")] UsuarioGrupo usuarioGrupo) { if (id != usuarioGrupo.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(usuarioGrupo); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UsuarioGrupoExists(usuarioGrupo.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["GrupoId"] = new SelectList(_context.Grupos.Where(S => S.OwnerId == getCurrentUserId("id")), "Id", "GroupName"); ViewData["IdentityUserId"] = new SelectList(_context.Users.Where(s => s.CreatedBy == getCurrentUserId("id") || s.CreatedBy == "self"), "Id", "UserName", usuarioGrupo.UserId); return(View(usuarioGrupo)); }
/// <summary> /// /// </summary> /// <returns></returns> public List <UsuarioGrupo> ObtenerTablaUsuarioGrupo() { List <UsuarioGrupo> listadoUsuarioGrupo = new List <UsuarioGrupo>(); using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MotoPoint"].ConnectionString)) { try { con.Open(); SqlCommand cmdSelect = new SqlCommand("SELECT * FROM tbl_UsuarioGrupo", con); using (var reader = cmdSelect.ExecuteReader()) { while (reader.Read()) { UsuarioGrupo oUsuarioGrupo = new UsuarioGrupo(); oUsuarioGrupo.IdUsuario = Convert.ToInt32(reader["idUsuario"]); oUsuarioGrupo.IdGrupo = Convert.ToInt32(reader["idGrupo"]); listadoUsuarioGrupo.Add(oUsuarioGrupo); } } con.Close(); } catch (Exception ex) { con.Close(); throw new EXCEPCIONES.DALExcepcion(ex.Message); } return(listadoUsuarioGrupo); } }
public async Task <ActionResult <UsuarioGrupo> > PostUsuarioGrupo(UsuarioGrupo usuarioGrupo) { _context.UsuarioGrupo.Add(usuarioGrupo); await _context.SaveChangesAsync(); return(CreatedAtAction("GetUsuarioGrupo", new { id = usuarioGrupo.id }, usuarioGrupo)); }
public async Task <IActionResult> Create([Bind("Id,Status,GrupoId,UserId")] UsuarioGrupo usuarioGrupo) { if (ModelState.IsValid) { var registerExist = _context.UsuarioGrupos .Where(S => S.GrupoId == usuarioGrupo.GrupoId && S.UserId == usuarioGrupo.UserId).AsNoTracking().FirstOrDefault(); if (registerExist == null) { _context.Add(usuarioGrupo); await _context.SaveChangesAsync(); } else { HttpContext.Session.SetString(SessionKeyName, "El usuario ya se encuentra en el grupo"); } return(RedirectToAction(nameof(Index))); } List <Grupo> grupos = _context.Grupos.Where(S => S.OwnerId == getCurrentUserId("id")).ToList(); if (grupos.Count() < 1) { RedirectToAction("Create", "Groups", new { message = "Primero crea un grupo" }); } ViewData["GrupoId"] = new SelectList(grupos, "Id", "GroupName"); ViewData["IdentityUserId"] = new SelectList(_context.Users.Where(s => s.CreatedBy == getCurrentUserId("id") || s.CreatedBy == "self"), "Id", "UserDesc", usuarioGrupo.UserId); return(View(usuarioGrupo)); }
public void AddTest() { UsuarioGrupo item = new UsuarioGrupo() { Descricao = "UsuarioGrupo01", Tipo = UserGroupType.Administrator }; IUserGroupRepository target = new UserGroupRepository(); target.Add(item); try { // use session to try to load the product using (ISession session = NHibernateHelper.OpenSession()) { var fromDb = session.Get <UsuarioGrupo>(item.Id); Assert.IsNotNull(fromDb); Assert.AreNotSame(item, fromDb); Assert.AreEqual(item.Descricao, fromDb.Descricao); Assert.AreEqual(item.Tipo, fromDb.Tipo); } } finally { target.Remove(item); } }
public Usuario Insert(Usuario u) { using (DiscosDAL dal = new DiscosDAL()) { dal.Usuarios.Add(u); if (dal.SaveChanges() == 0) { u = null; } else { UsuarioGrupo ug = new UsuarioGrupo(); ug.IdUsuario = dal.Usuarios.OrderByDescending(us => us.IdUsuario) .Select(us => us.IdUsuario) .Take(1).Single(); ug.IdGrupo = 2; dal.UsuariosGrupos.Add(ug); if (dal.SaveChanges() == 0) { u = null; } } } return(u); }
private void OnDeleteExecute(UsuarioGrupo target) { var respository = _container.Resolve <IUserGroupRepository>(); respository.Remove(target); this.Grupos.Remove(target); }
public IHttpActionResult AsignaUsuariosGrupo() { var sIdGrupoUsuarios = getFormKeyValue("idGrupoUsuarios"); var idGrupoUsuarios = Int64.Parse(sIdGrupoUsuarios); var sListaJson = getFormKeyValue("listaJson"); var idsUsuarios = new List <long>(); JsonConvert.PopulateObject(sListaJson, idsUsuarios); var resultado = UsuarioService.BorrarUsuarioGrupopPorGrupo(idGrupoUsuarios); var list = new List <UsuarioGrupo>(); if (resultado.Resultado) { foreach (var idUsuario in idsUsuarios) { var usuarioGrupo = new UsuarioGrupo() { IdUsuario = idUsuario, IdGrupoUsuarios = idGrupoUsuarios, }; list.Add(usuarioGrupo); } if (list.Any()) { resultado = UsuarioService.GuardarUsuarioGrupoBulk(list, IdUsuarioExec); } } return(Ok(resultado)); }
public async Task <IActionResult> PutUsuarioGrupo(int id, UsuarioGrupo usuarioGrupo) { if (id != usuarioGrupo.id) { return(BadRequest()); } _context.Entry(usuarioGrupo).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!UsuarioGrupoExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public UserGroupPresenter(IUserGroupView view, UsuarioGrupo grupo) { this.SubmitCommand = new DelegateCommand <object>(this.Submit, this.CanSubmit); this.CancelCommand = new DelegateCommand <object>(this.Cancel); this.Grupo = grupo; this._view = view; this._view.SetPresenter(this); }
public void Remove(UsuarioGrupo item) { using (ISession session = NHibernateHelper.OpenSession()) using (ITransaction transaction = session.BeginTransaction()) { item.RemoveBySession(session); transaction.Commit(); } }
public UsuarioGrupo GetByDescription(string value) { UsuarioGrupo item = _session .CreateCriteria(typeof(UsuarioGrupo)) .Add(Restrictions.Eq("Descricao", value)) .UniqueResult <UsuarioGrupo>(); return(item); }
protected internal virtual void AssociarGrupo(Usuario usr, Grupo grupo) { UsuarioGrupo ugrupo = new UsuarioGrupo(); ugrupo.Id = new UsuarioGrupoId(); ugrupo.Id.Usuario = usr; ugrupo.Id.Grupo = grupo; ugrupo.Ativo = true; sessao.SaveOrUpdate(ugrupo); }
public int Guardar(UsuarioGrupo entidad) { Catalogo.Id = entidad.Id; Catalogo.Catalogo = TipoCatalogo; Catalogo.Codigo = entidad.Codigo; Catalogo.Descripcion = entidad.Descripcion; Catalogo.Nivel = 1; Catalogo.Activo = 1; return(Catalogo.Guardar()); }
public static void MyClassInitialize(TestContext testContext) { item = new UsuarioGrupo() { Descricao = "UsuarioGrupo01", Tipo = UserGroupType.Administrator }; IUserGroupRepository target = new UserGroupRepository(); target.Add(item); }
public HttpResponseMessage AtualizarGrupo(HttpRequestMessage request, int UsuarioId, IEnumerable <UsuarioGrupoViewModel> gruposXusuarios) { return(CreateHttpResponse(request, () => { HttpResponseMessage response = null; if (!ModelState.IsValid) { response = request.CreateResponse(HttpStatusCode.BadRequest, new { success = false }); } else { Usuario usuario = _usuarioRep.GetSingle(int.Parse(HttpContext.Current.User.Identity.GetUserId())); var gruposdelete = _usuarioGrupoRep.GetAll().Where(x => x.UsuarioId == UsuarioId); if (gruposdelete.Any()) { _usuarioGrupoRep.DeleteAll(gruposdelete); _unitOfWork.Commit(); } if (gruposXusuarios.Any()) { foreach (UsuarioGrupoViewModel item in gruposXusuarios) { if (item.Selecionado) { var novoUsuarioGrupo = new UsuarioGrupo { UsuarioId = UsuarioId, DtCriacao = DateTime.Now, UsuarioCriacao = usuario, GrupoId = item.GrupoId }; _usuarioGrupoRep.Add(novoUsuarioGrupo); _unitOfWork.Commit(); } } } response = request.CreateResponse(HttpStatusCode.OK); } return response; })); }
public ResultadoOperacionDto GuardarUsuarioGrupo(UsuarioGrupo usuarioGrupo) { var resultado = new ResultadoOperacionDto(); try { resultado.InformacionExtra = UsuarioGrupoRepository.GuardarUsuarioGrupo(usuarioGrupo); resultado.Resultado = true; } catch (Exception exception) { resultado.Resultado = false; resultado.Mensaje = exception.Message; resultado.InformacionExtra = exception; } return(resultado); }
private void ShowView(CrudType action, UsuarioGrupo target) { this._container.RegisterInstance <UsuarioGrupo>(target); IUserGroupPresenter presenter = this._container.Resolve <IUserGroupPresenter>("IUserGroupPresenter"); presenter.CloseViewRequested += delegate(object sender, EventArgs eventArgs) { if (eventArgs is CloseViewEventArgs) { if ((eventArgs as CloseViewEventArgs).CloseViewOption == CloseViewType.Submit) { var repository = _container.Resolve <IUserGroupRepository>(); switch (action) { case CrudType.Create: repository.Add(presenter.Grupo); break; case CrudType.Update: repository.Update(presenter.Grupo); break; } SearchCommand.Execute(this); } else { if (action == CrudType.Update) { SearchCommand.Execute(this); } } } }; IBreadCrumbPresenter breadCrumb = this._container.Resolve <IBreadCrumbPresenter>(); if (breadCrumb != null) { breadCrumb.AddCrumb(action.GetDescription(), presenter); } }
public void RemoveTest() { UsuarioGrupo item = new UsuarioGrupo() { Descricao = "UsuarioGrupo00", Tipo = UserGroupType.Employee }; IUserGroupRepository target = new UserGroupRepository(); target.Add(item); target.Remove(item); // use session to try to load the product using (ISession session = NHibernateHelper.OpenSession()) { var fromDb = session.Get <UsuarioGrupo>(item.Id); Assert.IsNull(fromDb); Assert.AreNotSame(item, fromDb); } }
public void AdicionarUsuarioAoGrupo(ConviteGrupo convite) { // Resumo: Adiciona dois usuários (rementente e destinatário) ao grupo contatos um do outro. usuarioGrupo = new UsuarioGrupo() { IdUsuario = convite.IdDestinatario, IdGrupo = convite.IdGrupoRemetente }; if (convite.ConviteContatos) { usuario2Grupo = new UsuarioGrupo() { IdUsuario = convite.IdRemetente, IdGrupo = convite.IdGrupoDestinatario }; } dadosUsuarioGrupo = new UsuarioGrupoRepository(); try { dadosUsuarioGrupo.IncluirUsuarioGrupo(usuarioGrupo); if (convite.ConviteContatos) { dadosUsuarioGrupo.IncluirUsuarioGrupo(usuario2Grupo); } // Mensagem: Você foi adicionado ao grupo. Toast.ShortMessage(Mensagem.MENS_FORM_25); } catch (SQLiteException ex) { // Mensagem: Erro ao incluir associação de usuário e grupo no banco de dados. Toast.ShortMessage(Mensagem.MENS_FORM_14); } }
/// <summary> /// /// </summary> /// <param name="oUsuarioGrupo"></param> public void InsertarUsuarioGrupo(UsuarioGrupo oUsuarioGrupo) { using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MotoPoint"].ConnectionString)) { using (SqlCommand cmdInsert = new SqlCommand("INSERT INTO tbl_UsuarioGrupo([idUsuario],[idGrupo]) VALUES (@IdUsuario,@IdGrupo)", con)) { cmdInsert.Parameters.AddWithValue("@IdUsuario", oUsuarioGrupo.IdUsuario); cmdInsert.Parameters.AddWithValue("@IdGrupo", oUsuarioGrupo.IdGrupo); try { con.Open(); cmdInsert.ExecuteNonQuery(); con.Close(); } catch (Exception ex) { con.Close(); throw new EXCEPCIONES.DALExcepcion(ex.Message); } } } }
private void OnCreateExecute(UsuarioGrupo target) { ShowView(CrudType.Create, new UsuarioGrupo()); }
private void OnUpdateExecute(UsuarioGrupo target) { ShowView(CrudType.Update, target); }
private bool CanDelete(UsuarioGrupo target) { return((target != null) && (target.Id > 0)); }
public bool CriarNovoGrupo(bool grupoContatos, bool incluirCriador) { // Resumo: Permite criar um grupo. if (dadosUsuario == null) { dadosUsuario = new UsuarioRepository(); } if (dadosGrupo == null) { dadosGrupo = new GrupoRepository(); } if (grupoContatos) { IdCriadorServ = dadosUsuario.UltimoIdInserido(); grupo = new Grupo { IdCriador = IdCriadorServ, Contatos = true }; dadosGrupo.IncluirGrupoContatos(grupo); return(true); } else { IdCriadorServ = (int)Application.Current.Properties["id"]; IdGrupoPaiServ = ObterGrupoContatosDoUsuarioLogado().Id; if (ValidarFormCriarGrupo()) { grupo = new Grupo { IdCriador = IdCriadorServ, IdGrupoPai = IdGrupoPaiServ, NomeGrupo = NomeServ, ObjetivoGrupo = ObjetivoServ, Contatos = false }; dadosGrupo.IncluirGrupo(grupo); int idGrupo = dadosGrupo.UltimoIdInserido(); if (incluirCriador) { usuarioGrupo = new UsuarioGrupo() { IdUsuario = IdCriadorServ, IdGrupo = idGrupo++ }; if (dadosUsuarioGrupo == null) { dadosUsuarioGrupo = new UsuarioGrupoRepository(); } try { dadosUsuarioGrupo.IncluirUsuarioGrupo(usuarioGrupo); //Mensagem: Grupo criado com sucesso. Toast.ShortMessage(Mensagem.MENS_FORM_24); return(true); } catch (SQLiteException ex) { // Mensagem: Erro ao incluir associação de usuário e grupo no banco de dados. Toast.ShortMessage(Mensagem.MENS_FORM_14); } } else { //Mensagem: Grupo criado com sucesso. Toast.ShortMessage(Mensagem.MENS_FORM_24); return(true); } } return(false); } }
public RegisterViewModel Run(Repository value) { RegisterViewModel r = (RegisterViewModel)value; try { #region validar cadastro Validate validate = Validate(r); if (validate.Code > 0) { throw new ArgumentException(validate.MessageBase); } #endregion #region Cadastrar o condômino como um usuário em DWM-Segurança #region Usuario EmpresaSecurity <SecurityContext> security = new EmpresaSecurity <SecurityContext>(); Usuario user = new Usuario() { nome = r.Nome.Trim().Length > 40 ? r.Nome.Substring(0, 40).ToUpper() : r.Nome.Trim().ToUpper(), login = r.Email, empresaId = 10, dt_cadastro = Funcoes.Brasilia(), isAdmin = "N", senha = security.Criptografar(r.senha) }; seguranca_db.Usuarios.Add(user); #endregion #region UsuarioGrupo UsuarioGrupo ug = new UsuarioGrupo() { Usuario = user, grupoId = 10, situacao = "A" }; seguranca_db.UsuarioGrupos.Add(ug); #endregion seguranca_db.SaveChanges(); #endregion r.IndSituacao = "A"; db.SaveChanges(); } catch (ArgumentException ex) { r.mensagem = new Validate() { Code = 999, Message = MensagemPadrao.Message(999).ToString(), MessageBase = ex.Message }; } catch (App_DominioException ex) { r.mensagem = ex.Result; if (ex.InnerException != null) { r.mensagem.MessageBase = new App_DominioException(ex.InnerException.Message ?? ex.Message, GetType().FullName).Message; } else { r.mensagem.MessageBase = new App_DominioException(ex.Result.Message, GetType().FullName).Message; } } catch (DbUpdateException ex) { r.mensagem.MessageBase = ex.InnerException.InnerException.Message ?? ex.Message; if (r.mensagem.MessageBase.ToUpper().Contains("REFERENCE")) { if (r.mensagem.MessageBase.ToUpper().Contains("DELETE")) { r.mensagem.Code = 16; r.mensagem.Message = MensagemPadrao.Message(16).ToString(); r.mensagem.MessageType = MsgType.ERROR; } else { r.mensagem.Code = 28; r.mensagem.Message = MensagemPadrao.Message(28).ToString(); r.mensagem.MessageType = MsgType.ERROR; } } else if (r.mensagem.MessageBase.ToUpper().Contains("PRIMARY")) { r.mensagem.Code = 37; r.mensagem.Message = MensagemPadrao.Message(37).ToString(); r.mensagem.MessageType = MsgType.WARNING; } else if (r.mensagem.MessageBase.ToUpper().Contains("UNIQUE KEY")) { r.mensagem.Code = 54; r.mensagem.Message = MensagemPadrao.Message(54).ToString(); r.mensagem.MessageType = MsgType.WARNING; } else { r.mensagem.Code = 44; r.mensagem.Message = MensagemPadrao.Message(44).ToString(); r.mensagem.MessageType = MsgType.ERROR; } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { r.mensagem = new Validate() { Code = 42, Message = MensagemPadrao.Message(42).ToString(), MessageBase = ex.EntityValidationErrors.Select(m => m.ValidationErrors.First().ErrorMessage).First() }; } catch (Exception ex) { r.mensagem.Code = 17; r.mensagem.Message = MensagemPadrao.Message(17).ToString(); r.mensagem.MessageBase = new App_DominioException(ex.InnerException.InnerException.Message ?? ex.Message, GetType().FullName).Message; r.mensagem.MessageType = MsgType.ERROR; } return(r); }
public void IncluirUsuarioGrupo(UsuarioGrupo usuarioGrupo) { conexao.Insert(usuarioGrupo); }
public CredenciadoViewModel Run(Repository value) { bool EnviaEmail = false; CredenciadoViewModel r = (CredenciadoViewModel)value; CredenciadoViewModel result = new CredenciadoViewModel() { uri = r.uri, empresaId = sessaoCorrente.empresaId, CredenciadoID = r.CredenciadoID, CondominoID = r.CondominoID, Nome = r.Nome, Email = r.Email, TipoCredenciadoID = r.TipoCredenciadoID, Sexo = r.Sexo, Observacao = r.Observacao, UsuarioID = r.UsuarioID, IndVisitantePermanente = r.IndVisitantePermanente, mensagem = new Validate() { Code = 0, Message = "Registro processado com sucesso" } }; try { int _empresaId = SessaoLocal.empresaId; string _keyword = null; CredenciadoModel CredenciadoModel = new CredenciadoModel(this.db, this.seguranca_db); if (r.CredenciadoID == 0) // Incluir credenciado { #region Validar Credenciado if (CredenciadoModel.Validate(result, Crud.INCLUIR).Code > 0) { throw new App_DominioException(result.mensagem); } #endregion #region Cadastrar o credenciado como um usuário em DWM-Segurança if (!string.IsNullOrEmpty(result.Email)) { Random random = new Random(); string _senha = random.Next(9999, 999999).ToString(); _keyword = random.Next(9999, 99999999).ToString(); int _grupoId = int.Parse(db.Parametros.Find(_empresaId, (int)Enumeracoes.Enumeradores.Param.GRUPO_CREDENCIADO).Valor); #region Usuario EmpresaSecurity <SecurityContext> security = new EmpresaSecurity <SecurityContext>(); Usuario user = new Usuario() { nome = r.Nome.ToUpper(), login = r.Email, empresaId = _empresaId, dt_cadastro = Funcoes.Brasilia(), situacao = "D", isAdmin = "N", senha = security.Criptografar(_senha), keyword = _keyword, dt_keyword = Funcoes.Brasilia().AddDays(1) }; // Verifica se o E-mail do usuário já não existe para a empresa if (seguranca_db.Usuarios.Where(info => info.empresaId == _empresaId && info.login == r.Email).Count() > 0) { throw new ArgumentException("E-mail já cadastrado"); } seguranca_db.Usuarios.Add(user); #endregion #region UsuarioGrupo UsuarioGrupo ug = new UsuarioGrupo() { Usuario = user, grupoId = _grupoId, situacao = "A" }; seguranca_db.UsuarioGrupos.Add(ug); #endregion seguranca_db.SaveChanges(); result.UsuarioID = user.usuarioId; EnviaEmail = true; } #endregion #region Incluir o credenciado result = CredenciadoModel.Insert(result); result.mensagem.Field = _keyword; #endregion } else if (Operacao == "S") // Alterar credenciado { #region Validar Credenciado if (CredenciadoModel.Validate(result, Crud.ALTERAR).Code > 0) { throw new App_DominioException(result.mensagem); } #endregion #region Atualiza o cadastro do usuário if (result.UsuarioID.HasValue && result.UsuarioID > 0 && !string.IsNullOrEmpty(result.Email)) // antes existia UsuarioID e tem E-mail { Usuario user = seguranca_db.Usuarios.Find(result.UsuarioID.Value); if (user != null) { user.login = result.Email; user.nome = result.Nome.ToUpper(); user.dt_cadastro = Funcoes.Brasilia(); seguranca_db.Entry(user).State = EntityState.Modified; seguranca_db.SaveChanges(); } } else if ((!result.UsuarioID.HasValue || result.UsuarioID.Value == 0) && !string.IsNullOrEmpty(result.Email)) // antes não existia UsuarioID e na altração passou a existir (e-mail) { Random random = new Random(); string _senha = random.Next(9999, 999999).ToString(); _keyword = random.Next(9999, 99999999).ToString(); int _grupoId = int.Parse(db.Parametros.Find(_empresaId, (int)Enumeracoes.Enumeradores.Param.GRUPO_CREDENCIADO).Valor); #region Usuario EmpresaSecurity <SecurityContext> security = new EmpresaSecurity <SecurityContext>(); Usuario user = new Usuario() { nome = r.Nome.ToUpper(), login = r.Email, empresaId = _empresaId, dt_cadastro = Funcoes.Brasilia(), situacao = "D", isAdmin = "N", senha = security.Criptografar(_senha), keyword = _keyword, dt_keyword = Funcoes.Brasilia().AddDays(1) }; // Verifica se o E-mail do usuário já não existe para a empresa if (seguranca_db.Usuarios.Where(info => info.empresaId == _empresaId && info.login == r.Email).Count() > 0) { throw new ArgumentException("E-mail já cadastrado"); } seguranca_db.Usuarios.Add(user); #endregion #region UsuarioGrupo UsuarioGrupo ug = new UsuarioGrupo() { Usuario = user, grupoId = _grupoId, situacao = "A" }; seguranca_db.UsuarioGrupos.Add(ug); #endregion seguranca_db.SaveChanges(); result.UsuarioID = user.usuarioId; EnviaEmail = true; } else if (result.UsuarioID.HasValue && result.UsuarioID > 0 && string.IsNullOrEmpty(result.Email)) // antes existia usuário e agora não existe mais => Exclui o usuário em dwm-segurança { #region Exclui o cadastro do usuário int _grupoId = int.Parse(db.Parametros.Find(_empresaId, (int)Enumeracoes.Enumeradores.Param.GRUPO_CREDENCIADO).Valor); // Exclui o usuário do Grupo UsuarioGrupo ug = seguranca_db.UsuarioGrupos.Find(result.UsuarioID, _grupoId); seguranca_db.Set <UsuarioGrupo>().Remove(ug); // Exclui o usuário da tabela Sessao seguranca_db.Database.ExecuteSqlCommand("delete from Sessao where usuarioId = " + result.UsuarioID.ToString() + " and empresaId = " + sessaoCorrente.empresaId.ToString()); // Exclui o usuário Usuario user = seguranca_db.Usuarios.Find(result.UsuarioID); seguranca_db.Set <Usuario>().Remove(user); seguranca_db.SaveChanges(); #endregion result.UsuarioID = null; } #endregion #region Alterar credenciado result = CredenciadoModel.Update(result); #endregion } else // Excluir credenciado { #region Validar Credenciado if (CredenciadoModel.Validate(result, Crud.EXCLUIR).Code > 0) { throw new App_DominioException(result.mensagem); } #endregion #region Exclui o cadastro do usuário if (result.UsuarioID.HasValue && result.UsuarioID.Value > 0) { int _grupoId = int.Parse(db.Parametros.Find(_empresaId, (int)Enumeracoes.Enumeradores.Param.GRUPO_CREDENCIADO).Valor); // Exclui o usuário do Grupo UsuarioGrupo ug = seguranca_db.UsuarioGrupos.Find(result.UsuarioID, _grupoId); seguranca_db.Set <UsuarioGrupo>().Remove(ug); // Exclui o usuário da tabela Sessao seguranca_db.Database.ExecuteSqlCommand("delete from Sessao where usuarioId = " + result.UsuarioID.ToString() + " and empresaId = " + sessaoCorrente.empresaId.ToString()); // Exclui o usuário Usuario user = seguranca_db.Usuarios.Find(result.UsuarioID); seguranca_db.Set <Usuario>().Remove(user); seguranca_db.SaveChanges(); } #endregion #region Alterar credenciado result = CredenciadoModel.Delete(result); #endregion } if (result.mensagem.Code > 0) { throw new App_DominioException(result.mensagem); } db.SaveChanges(); if (EnviaEmail) { int _sistemaId = int.Parse(db.Parametros.Find(SessaoLocal.empresaId, (int)Enumeracoes.Enumeradores.Param.SISTEMA).Valor); string _URL_CONDOMINIO = db.Parametros.Find(SessaoLocal.empresaId, (int)Enumeracoes.Enumeradores.Param.URL_CONDOMINIO).Valor; #region envio de e-mail ao credenciado para ativação int EmailTipoID = (int)DWM.Models.Enumeracoes.Enumeradores.EmailTipo.CADASTRO_CREDENCIADO; string EmailMensagem = db.EmailTemplates.Where(info => info.CondominioID == SessaoLocal.empresaId && info.EmailTipoID == EmailTipoID).FirstOrDefault().EmailMensagem; EmailMensagem = EmailMensagem.Replace("@link_credenciado", "<p><a href=\"" + _URL_CONDOMINIO + "/Account/AtivarCredenciado?id=" + result.UsuarioID.ToString() + "&key=" + _keyword + "\" target=\"_blank\"><span style=\"font-family: Verdana; font-size: small; color: #0094ff\">Acesso ao " + seguranca_db.Sistemas.Find(_sistemaId).descricao + "</span></a></p>"); CondominoUnidade cu = (from cou in db.CondominoUnidades where cou.CondominioID == SessaoLocal.empresaId && cou.CondominoID == r.CondominoID select cou).FirstOrDefault(); EmailLogViewModel EmailLogViewModel = new EmailLogViewModel() { uri = r.uri, empresaId = SessaoLocal.empresaId, EmailTipoID = EmailTipoID, // "Cadastro Credenciado" CondominioID = SessaoLocal.empresaId, EdificacaoID = cu.EdificacaoID, Descricao_Edificacao = db.Edificacaos.Find(cu.EdificacaoID).Descricao, UnidadeID = cu.UnidadeID, GrupoCondominoID = null, Descricao_GrupoCondomino = "", DataEmail = Funcoes.Brasilia(), Assunto = db.EmailTipos.Find(EmailTipoID, SessaoLocal.empresaId).Assunto, EmailMensagem = EmailMensagem, Nome = r.Nome, Email = r.Email }; EmailNotificacaoBI notificacaoBI = new EmailNotificacaoBI(this.db, this.seguranca_db); EmailLogViewModel = notificacaoBI.Run(EmailLogViewModel); if (EmailLogViewModel.mensagem.Code > 0) { throw new App_DominioException(EmailLogViewModel.mensagem); } //result.CredenciadoViewModel.mensagem.Field = factory.Mensagem.Field; // senha do credenciado //EnviarEmailCredenciadoBI EnviarEmailCredenciadoBI = new EnviarEmailCredenciadoBI(this.db, this.seguranca_db); //CredenciadoViewModel repository = EnviarEmailCredenciadoBI.Run(result); //if (repository.mensagem.Code > 0) // throw new ArgumentException(repository.mensagem.MessageBase); #endregion } else { 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 ActionResult Save(Usuario model) { try{ var usuario = UserSession.Get(Request.HttpContext).Usuario; if (model.Cod_Comum == 0 || !usuario.Admin) { model.Cod_Comum = usuario.Cod_Comum; } //if(!model.Aluno && !model.Oficializado && !model.Instrutor) if (model.Cod_Usuario != 0 && !usuario.Admin && UsuarioComum.Find(model.Cod_Usuario, model.Cod_Comum) == null) { throw new Exception("Usuário não cadastrado nesta comum!"); } if (Usuario.EmailJaCadastrado(model.Email, model.Cod_Usuario)) { throw new Exception("Email já cadastrado!"); } char oper = model.Cod_Usuario == 0 ? 'C' : 'U'; model.Save(); Monitor.Add <Usuario>(HttpContext, oper, model.Nome); if (usuario.Dev || usuario.Admin || usuario.Instrutor) { UsuarioPermissao permissao = UsuarioPermissao.Find(model.Cod_Usuario); if (usuario.Dev) { permissao.Dev = model.Dev; } if (usuario.Admin) { permissao.Admin = model.Admin; //permissao.Cod_Comum = model.Cod_Comum; } if (usuario.Instrutor) { permissao.Instrutor = model.Instrutor; permissao.Oficializado = model.Oficializado; permissao.RJM = model.RJM; permissao.Aluno = model.Aluno; permissao.Ativo = model.Ativo; //permissao.Cod_Grupo = model.Cod_Grupo; } permissao.Update(); if (usuario.Instrutor) { UsuarioGrupo.UpdateGrupos(model.Cod_Usuario, model.Cod_Grupos); } } return(Json("ok")); } catch (Exception ex) { return(Json(ex.Message)); } }
public RegisterViewModel Run(Repository value) { RegisterViewModel r = (RegisterViewModel)value; try { int _empresaId = int.Parse(db.Parametros.Find(r.CondominioID, (int)Enumeracoes.Enumeradores.Param.EMPRESA).Valor); int _grupoId = int.Parse(db.Parametros.Find(r.CondominioID, (int)Enumeracoes.Enumeradores.Param.GRUPO_USUARIO).Valor); #region validar cadastro Validate validate = Validate(r); if (validate.Code > 0) { throw new ArgumentException(validate.MessageBase); } #endregion #region Cadastrar o condômino como um usuário em DWM-Segurança #region Usuario EmpresaSecurity <SecurityContext> security = new EmpresaSecurity <SecurityContext>(); Usuario user = new Usuario() { nome = r.Nome.Trim().Length > 40 ? r.Nome.Substring(0, 40).ToUpper() : r.Nome.Trim().ToUpper(), login = r.Email, empresaId = _empresaId, dt_cadastro = Funcoes.Brasilia(), situacao = r.UnidadeViewModel.Validador != null && r.UnidadeViewModel.Validador != "" ? "A" : "D", isAdmin = "N", senha = security.Criptografar(r.senha) }; seguranca_db.Usuarios.Add(user); #endregion #region UsuarioGrupo UsuarioGrupo ug = new UsuarioGrupo() { Usuario = user, grupoId = _grupoId, situacao = "A" }; seguranca_db.UsuarioGrupos.Add(ug); #endregion seguranca_db.SaveChanges(); #endregion #region Incluir Condômino CondominoViewModel condomino = null; if (r.UnidadeViewModel.TipoCondomino == "F") { #region Incluir o Condômino PF condomino = new CondominoPFViewModel() { uri = r.uri, empresaId = _empresaId, CondominoID = r.CondominoID, CondominioID = r.CondominioID, Nome = r.Nome, IndFiscal = r.IndFiscal, IndProprietario = r.IndProprietario, TelParticular1 = r.TelParticular1, TelParticular2 = r.TelParticular2, Email = r.Email, IndSituacao = r.UnidadeViewModel.Validador != null && r.UnidadeViewModel.Validador != "" ? "A" : "D", UsuarioID = user.usuarioId, ProfissaoID = r.ProfissaoID, DataNascimento = r.DataNascimento, Sexo = r.Sexo, IndAnimal = r.IndAnimal, }; CondominoPFModel condominoPFModel = new CondominoPFModel(this.db, this.seguranca_db); condomino = condominoPFModel.Insert((CondominoPFViewModel)condomino); if (condomino.mensagem.Code > 0) { #region Exclui o usuário seguranca_db.UsuarioGrupos.Remove(ug); seguranca_db.Usuarios.Remove(user); seguranca_db.SaveChanges(); #endregion throw new App_DominioException(condomino.mensagem); } #endregion } else { #region Incluir o Condômino PJ condomino = new CondominoPJViewModel() { uri = r.uri, empresaId = _empresaId, CondominoID = r.CondominoID, CondominioID = r.CondominioID, Nome = r.Nome, IndFiscal = r.IndFiscal, IndProprietario = r.IndProprietario, TelParticular1 = r.TelParticular1, TelParticular2 = r.TelParticular2, Email = r.Email, IndSituacao = r.UnidadeViewModel.Validador != null && r.UnidadeViewModel.Validador != "" ? "A" : "D", UsuarioID = user.usuarioId, Administrador = r.Administrador, RamoAtividadeID = r.RamoAtividadeID, }; CondominoPJModel condominoPJModel = new CondominoPJModel(this.db, this.seguranca_db); condomino = condominoPJModel.Insert((CondominoPJViewModel)condomino); if (condomino.mensagem.Code > 0) { #region Exclui o usuário seguranca_db.UsuarioGrupos.Remove(ug); seguranca_db.Usuarios.Remove(user); seguranca_db.SaveChanges(); #endregion throw new App_DominioException(condomino.mensagem); } #endregion } #endregion #region Incluir o CondominoUnidade CondominoUnidadeViewModel condominoUnidadeViewModel = new CondominoUnidadeViewModel() { uri = r.uri, CondominioID = r.UnidadeViewModel.CondominioID, EdificacaoID = r.UnidadeViewModel.EdificacaoID, UnidadeID = r.UnidadeViewModel.UnidadeID, CondominoID = r.CondominoID, DataInicio = Funcoes.Brasilia().Date, CondominoViewModel = condomino }; CondominoUnidadeModel condominoUnidadeModel = new CondominoUnidadeModel(this.db, this.seguranca_db); condominoUnidadeViewModel = condominoUnidadeModel.Insert(condominoUnidadeViewModel); if (condominoUnidadeViewModel.mensagem.Code > 0) { throw new App_DominioException(condomino.mensagem); } #endregion r.CondominoID = condomino.CondominoID; r.IndSituacao = condomino.IndSituacao; r.mensagem = condomino.mensagem; r.UnidadeViewModel.EdificacaoDescricao = db.Edificacaos.Find(r.UnidadeViewModel.EdificacaoID).Descricao; db.SaveChanges(); } catch (ArgumentException ex) { r.mensagem = new Validate() { Code = 999, Message = MensagemPadrao.Message(999).ToString(), MessageBase = ex.Message }; } catch (App_DominioException ex) { r.mensagem = ex.Result; if (ex.InnerException != null) { r.mensagem.MessageBase = new App_DominioException(ex.InnerException.Message ?? ex.Message, GetType().FullName).Message; } else { r.mensagem.MessageBase = new App_DominioException(ex.Result.Message, GetType().FullName).Message; } } catch (DbUpdateException ex) { r.mensagem.MessageBase = ex.InnerException.InnerException.Message ?? ex.Message; if (r.mensagem.MessageBase.ToUpper().Contains("REFERENCE")) { if (r.mensagem.MessageBase.ToUpper().Contains("DELETE")) { r.mensagem.Code = 16; r.mensagem.Message = MensagemPadrao.Message(16).ToString(); r.mensagem.MessageType = MsgType.ERROR; } else { r.mensagem.Code = 28; r.mensagem.Message = MensagemPadrao.Message(28).ToString(); r.mensagem.MessageType = MsgType.ERROR; } } else if (r.mensagem.MessageBase.ToUpper().Contains("PRIMARY")) { r.mensagem.Code = 37; r.mensagem.Message = MensagemPadrao.Message(37).ToString(); r.mensagem.MessageType = MsgType.WARNING; } else if (r.mensagem.MessageBase.ToUpper().Contains("UNIQUE KEY")) { r.mensagem.Code = 54; r.mensagem.Message = MensagemPadrao.Message(54).ToString(); r.mensagem.MessageType = MsgType.WARNING; } else { r.mensagem.Code = 44; r.mensagem.Message = MensagemPadrao.Message(44).ToString(); r.mensagem.MessageType = MsgType.ERROR; } } catch (System.Data.Entity.Validation.DbEntityValidationException ex) { r.mensagem = new Validate() { Code = 42, Message = MensagemPadrao.Message(42).ToString(), MessageBase = ex.EntityValidationErrors.Select(m => m.ValidationErrors.First().ErrorMessage).First() }; } catch (Exception ex) { r.mensagem.Code = 17; r.mensagem.Message = MensagemPadrao.Message(17).ToString(); r.mensagem.MessageBase = new App_DominioException(ex.InnerException.InnerException.Message ?? ex.Message, GetType().FullName).Message; r.mensagem.MessageType = MsgType.ERROR; } return(r); }