public bool Add(Usuario usuario) { if (!Account.Current.Permissao.Has("ADD_USUARIO")) { this.MessageError = "USUARIO_SEM_PERMISSAO"; return false; } var unidadeRepositorio = new UnidadeRepositorio(); var usuarioRepositorio = new UsuarioRepositorio(); var accountRepositorio = new AccountRepositorio(); var zap = unidadeRepositorio.FetchZapUnidade(); if (usuarioRepositorio.ExistNome(usuario)) { this.MessageError = "USUARIO_EXISTENTE_NOME"; return false; } if (accountRepositorio.ExistUsername(usuario.Account)) { this.MessageError = "USERNAME_EXISTENTE_NOME"; return false; } usuario.Unidade = zap; usuarioRepositorio.Add(usuario); usuarioRepositorio.UpdateAnexos(usuario); usuario.Account.Usuario = usuario; accountRepositorio.Add(usuario.Account); usuario.Account.Usuario = null; var notificacaoRepositorio = new NotificacaoUsuarioRepositorio(); notificacaoRepositorio.Add(new NotificacaoUsuario() { UsuarioId = usuario.Id, Total = 0 }); return true; }