Пример #1
0
        public static async Task gerarMeuPedido()
        {
            UserDialogs.Instance.ShowLoading("Carregando...");
            try
            {
                var regraUsuario = UsuarioFactory.create();
                var usuarioAtual = regraUsuario.pegarAtual();

                var regraPedido = PedidoFactory.create();
                var pedidos     = await regraPedido.listar(usuarioAtual.Id);

                var pedidoListaPage = new PedidoListaPage
                {
                    Title   = "Meus Pedidos",
                    Pedidos = pedidos
                };
                pedidoListaPage.AoSelecionar += (sender, pedido) => {
                    var pedidoPage = new PedidoPage
                    {
                        Pedido = pedido
                    };
                    ((Page)sender).Navigation.PushAsync(pedidoPage);
                };
                UserDialogs.Instance.HideLoading();
                //((RootPage)App.Current.MainPage).PaginaAtual = pedidoListaPage;
                ((RootPage)App.Current.MainPage).PushAsync(pedidoListaPage);
            }
            catch (Exception erro)
            {
                UserDialogs.Instance.HideLoading();
                UserDialogs.Instance.Alert(erro.Message, "Erro", "Fechar");
            }
        }
Пример #2
0
        public UsuarioDTO AddUsuario(UsuarioDTO usuarioDTO)
        {
            try
            {
                if (usuarioDTO == null)
                {
                    throw new Exception("Objeto não instânciado.");
                }

                var usuario = UsuarioFactory.CreateUsuario(
                    usuarioDTO.Permissao,
                    usuarioDTO.NomeUsuario,
                    usuarioDTO.Senha,
                    usuarioDTO.Ativo
                    );

                SalvarUsuario(usuario);

                var adapter = TypeAdapterFactory.CreateAdapter();
                return(adapter.Adapt <Usuario, UsuarioDTO>(usuario));
            }
            catch (ApplicationValidationErrorsException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                LoggerFactory.CreateLog().LogError(ex);
                throw new Exception("O servidor não respondeu.");
            }
        }
Пример #3
0
        public static PagamentoInfo gerar(PedidoInfo pedido)
        {
            var regraUsuario = UsuarioFactory.create();
            var usuario      = regraUsuario.pegarAtual();
            var pagamento    = new PagamentoInfo
            {
                IdUsuario   = usuario.Id,
                Cpf         = usuario.CpfCnpj,
                Cep         = pedido.Cep,
                Logradouro  = pedido.Logradouro,
                Complemento = pedido.Complemento,
                Numero      = pedido.Numero,
                Bairro      = pedido.Bairro,
                Cidade      = pedido.Cidade,
                Uf          = pedido.Uf,
                Situacao    = SituacaoPagamentoEnum.Aberto
            };

            foreach (var item in pedido.Itens)
            {
                pagamento.Itens.Add(new PagamentoItemInfo
                {
                    Descricao  = item.Produto.Nome,
                    Quantidade = item.Quantidade,
                    Valor      = (item.Produto.ValorPromocao > 0) ? item.Produto.ValorPromocao : item.Produto.Valor
                });
            }
            return(pagamento);
        }
Пример #4
0
        protected override async Task executar()
        {
            if (_verificando)
            {
                return;
            }
            _verificando = true;
            try
            {
                var dataAtual = DateTime.Now;
                if (dataAtual.Subtract(_ultimaExecucao).TotalMilliseconds > DuracaoExecucao)
                {
                    var regraUsuario = UsuarioFactory.create();
                    var usuario      = regraUsuario.pegarAtual();
                    if (usuario != null)
                    {
                        var regraMensagem = MensagemFactory.create();
                        var avisos        = await regraMensagem.listarAviso(usuario.Id);

                        foreach (var aviso in avisos)
                        {
                            var rootPage = (RootPage)App.Current.MainPage;
                            //CrossLocalNotifications.Current.Show(rootPage.NomeApp, aviso.Assunto);
                            CrossLocalNotifications.Current.Show(rootPage.NomeApp, aviso.Mensagem);
                        }
                    }
                    _ultimaExecucao = dataAtual;
                    System.Diagnostics.Debug.WriteLine("Verificando avisos: " + dataAtual.ToString("HH:mm:ss"));
                }
            }
            finally {
                _verificando = false;
            }
            return;
        }
Пример #5
0
        protected async virtual Task atualizandoDado()
        {
            var regraUsuario = UsuarioFactory.create();
            var usuarioAtual = regraUsuario.pegarAtual();

            if (usuarioAtual == null)
            {
                UserDialogs.Instance.HideLoading();
                UserDialogs.Instance.Alert("Não está logado.", "Erro", "Fechar");
                return;
            }
            var usuario = await regraUsuario.pegar(usuarioAtual.Id);

            regraUsuario.gravarAtual(usuario);
            _usuarioPage.Usuario = usuario;
            var enderecos = new List <EnderecoInfo>();

            foreach (var endereco in usuario.Enderecos)
            {
                enderecos.Add(endereco);
            }
            _enderecoListaPage.Enderecos = enderecos;

            var regraCartao = CartaoFactory.create();
            var cartoes     = await regraCartao.listar(usuario.Id);

            _cartaoListaPage.Cartoes = cartoes;
            return;
        }
Пример #6
0
        /*
         * public static Page gerarLogin(Action<UsuarioInfo> aoLogar)
         * {
         *  var loginPage = new LoginPage
         *  {
         *      Title = "Login"
         *  };
         *  loginPage.AoLogar += (sender, usuario) =>
         *  {
         *      var regraLoja = LojaFactory.create();
         *      var loja = regraLoja.pegarAtual();
         *
         *      if (loja != null)
         *      {
         *          atualizarRootPage(ProdutoUtils.gerarProdutoListaDestaque(), false);
         *      }
         *      else
         *      {
         *          if (usuario.Enderecos.Count > 0)
         *          {
         *              var endereco = usuario.Enderecos[0];
         *              LojaUtils.gerarLojaLista(endereco);
         *          }
         *          else
         *          {
         *              EnderecoUtils.gerarBuscaPorCep((endereco) => {
         *                  LojaUtils.gerarLojaLista(endereco);
         *              });
         *          }
         *      }
         *  };
         *  return loginPage;
         * }
         */

        public static void carregarUsuario(Action <UsuarioInfo> aoSelecionar)
        {
            var regraUsuario = UsuarioFactory.create();
            var usuario      = regraUsuario.pegarAtual();

            if (usuario == null || (usuario != null && usuario.Id <= 0))
            {
                var usuarioSelecionaPage = new UsuarioSelecionaPage
                {
                    Title   = "Crie / Use sua conta",
                    Usuario = usuario
                };
                usuarioSelecionaPage.AoSelecionar += (sender, usuarioRetorno) =>
                {
                    if (App.Current.MainPage is RootPage)
                    {
                        ((RootPage)App.Current.MainPage).atualizarMenu();
                    }
                    aoSelecionar?.Invoke(usuarioRetorno);
                };
                if (App.Current.MainPage is RootPage)
                {
                    ((RootPage)App.Current.MainPage).PushAsync(usuarioSelecionaPage);
                }
                else
                {
                    App.Current.MainPage = App.gerarRootPage(usuarioSelecionaPage);
                    //App.Current.MainPage = new IconNavigationPage(usuarioSelecionaPage);
                }
            }
            else
            {
                aoSelecionar?.Invoke(usuario);
            }
        }
Пример #7
0
        /// <summary>
        /// Formulário de Vizualização de Usuários
        /// </summary>
        /// <param name="id">The identifier.</param>
        /// <returns></returns>
        public ActionResult Vizualizar(int id)
        {
            ViewBag.Role = new SelectList(roleDAO.List(), "Id", "Description");
            var modelView = UsuarioFactory.BuildModelView(usuarioDAO.GetById(id));

            return(View(modelView));
        }
Пример #8
0
        public static Usuario getUserById(string user)
        {
            MySqlConnection connection = new MySqlConnection(connecString);
            MySqlCommand    command    = connection.CreateCommand();

            connection.Open();
            command.CommandText = "select * from usuarios where userName='******';";
            Usuario newUsuario = null;

            try
            {
                MySqlDataReader reader = command.ExecuteReader();
                while (reader.Read())
                {
                    newUsuario = UsuarioFactory.create(reader);
                }
            }
            catch (Exception e)
            {
                string message = e.Message;
            }



            return(newUsuario);
        }
        static void Main(string[] args)
        {
            var partidaFactory = new PartidaFactory();
            var treino         = partidaFactory.GetPartida(TipoPartidaCode.Treino);

            var usuarioFactory  = new UsuarioFactory();
            var monitor         = usuarioFactory.GetUsuario(TipoUsuarioCode.Monitor);
            var administrador   = usuarioFactory.GetUsuario(TipoUsuarioCode.Administrador);
            var jogadorUsuario  = usuarioFactory.GetUsuario(TipoUsuarioCode.Jogador);
            var jogadorUsuario2 = usuarioFactory.GetUsuario(TipoUsuarioCode.Jogador);

            monitor.Hello();
            administrador.Hello();
            jogadorUsuario.Hello();

            Console.WriteLine();

            var jogador = (Jogador)jogadorUsuario;

            jogador.Id = 2;

            var jogador2 = (Jogador)jogadorUsuario2;

            ((Partida)treino).RegistrarJogador(jogador);
            ((Partida)treino).RegistrarJogador(jogador2);

            _ = jogador.Ação(jogador.Id);

            Console.WriteLine("\n");

            var questao = new Questao();

            questao.Attach((Monitor)monitor);
            questao.SomeBusinessLogic();
        }
        public IActionResult Guests()
        {
            if (_dataService.VerificarSecao())
            {
                var usuario = _dataService.ObterUsuarioSessao();
                if (_dataService.TipoCliente(usuario) != "Dependente")
                {
                    if (!DefaultFactory._mensagemViewModel.SemMensagem())
                    {
                        ViewBag.TipoErro = DefaultFactory._mensagemViewModel.Tipo;
                        ViewBag.Mensagem = DefaultFactory._mensagemViewModel.Mensagem;
                        ViewBag.Operacao = DefaultFactory._mensagemViewModel.Operacao;
                        DefaultFactory._mensagemViewModel.Dispose();
                    }

                    if (UsuarioFactory.ExisteUsuarioViewModel())
                    {
                        ViewBag.DependenteSelecionado = new DependenteViewModel(_dataService.ObterDependente(UsuarioFactory._usuarioViewModel.Id));
                        UsuarioFactory._usuarioViewModel.Dispose();
                    }

                    return(View(_dataService.ObterListaDependenteViewModelPorCliente((Cliente)usuario)));
                }
                else
                {
                    return(RedirectToAction("Main", "Home"));
                }
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
Пример #11
0
        public Usuario Cadastrar(CadastroRequest form)
        {
            var usuario = Repository.GetOneByCriteria(x => x.Login == form.Login);

            if (usuario != null)
            {
                return(null);
            }


            Usuario usuarioNovo = UsuarioFactory.Criar(
                form.Login, form.Senha, form.Tipo, form.DataNascimento, form.Email, form.Nome);

            switch (form.Tipo)
            {
            case EUsuarioTipo.EMPRESA:
                var empresa = EmpresaFactory.Criar(form.Documento, usuarioNovo);
                EmpresaService.Savar(empresa);
                break;

            case EUsuarioTipo.CANDIDATO:
                var candidato = CandidatoFactory.Criar(form.Documento, usuarioNovo);
                CandidatoService.Savar(candidato);
                break;

            case EUsuarioTipo.ADMINISTRADOR:
                //TODO: not implemented
                break;
            }

            return(usuarioNovo);
        }
Пример #12
0
        public async Task <IServerStatus> AdicionarCliente(ClienteModel clienteModel)
        {
            clienteModel.Id = Guid.NewGuid();

            var result = await _serviceIdentidade.EnviarIdentidade(new UsuarioRegistro(clienteModel.Id, clienteModel.Nome,
                                                                                       clienteModel.CPF, clienteModel.TipoCliente, clienteModel.Email, clienteModel.Senha));

            var montarUsuario = UsuarioFactory.CriarUsuario(clienteModel);
            var userResult    = await _serviceUsuario.AdicionarUsuario(montarUsuario);

            if (userResult.Status == 1)
            {
                return(await Task.FromResult(userResult));
            }

            var cliente = new Cliente(clienteModel.ProdutoPreferido, clienteModel.CPF, new RG(clienteModel.RgNumero,
                                                                                              clienteModel.RgOrgaoEmissor, clienteModel.RgPaisEmissor, clienteModel.RgEmissao),
                                      (int)(TipoCliente)Enum.Parse(typeof(TipoCliente), clienteModel.TipoCliente), new Endereco(clienteModel.Logradouro, clienteModel.Complemento,
                                                                                                                                clienteModel.Numero, clienteModel.Cep, clienteModel.Bairro, clienteModel.Cidade, clienteModel.Estado));

            cliente.Id = clienteModel.Id;

            _repositoryCliente.AdicionarCliente(cliente);
            return(await Task.FromResult(new ServerStatus()
            {
                Mensagem = "Cliente cadastrado com sucesso!", Status = 0
            }));
        }
Пример #13
0
        private void btnGuardar_Click_1(object sender, EventArgs e)
        {
            if (!mskCedula.MaskFull)
            {
                MessageBox.Show(null, "Por favor! escriba un numero de cedula!", "Atencion", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                mskCedula.Focus();
                return;
            }
            Usuario miUsuario = new UsuarioFactory().crearUsuario(mskCedula.Text, txtNombre.Text, txtPrimerApellido.Text,
                                                                  txtSegundoApellido.Text, dateTimeFechaNacimiento.Value, (Genero)cmbGenero.SelectedItem,
                                                                  mskTelefono.Text, txtCorreo.Text, (CentroEducativo)cmbCentroEducativo.SelectedItem, (Seccion)cmbSeccion.SelectedItem, (TipoUsuario)cmbTipoUsuario.SelectedItem);

            try
            {
                MessageBox.Show(null, new UsuarioLogica().insertarUsuario(miUsuario), "Atencion", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception a)
            {
                LogHelper.WriteDebugLog("error agregando usuario " + a.Message);
                MessageBox.Show(null, "Error al guardar! " + a, "Atencion", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            finally
            {
                refrescar();
                desahiblitar();
            }
        }
Пример #14
0
        public void SetupTest()
        {
            usuarioRepositorio = new UsuarioMockRepositorio();
            usuarioFactory     = new UsuarioFactory(new LoginJaExisteSpecification(usuarioRepositorio), new LoginValidoSpecification(), new SenhaValidaSpecification());
            funcionarioFactory = new FuncionarioFactory();

            usuarioRepositorio.save(usuarioFactory.criarUsuario("João", "joaozinho", "123456"));
        }
Пример #15
0
        /// <summary>
        /// Formulário de alteração
        /// </summary>
        /// <param name="user">The user.</param>
        /// <returns></returns>
        public ActionResult Alterar(int id)
        {
            var model = usuarioDAO.GetById(id);

            var modelView = UsuarioFactory.BuildModelView(model);

            ViewBag.Role = new SelectList(roleDAO.List(), "Id", "Description", model.Role);
            return(View(modelView));
        }
Пример #16
0
        private async void creditoOnlineClicked(object sender, EventArgs e)
        {
            if (Pagamento == null)
            {
                await DisplayAlert("Erro", "Nenhum pagamento informado!", "Fechar");

                return;
            }
            UserDialogs.Instance.ShowLoading("Carregando...");
            try
            {
                Pagamento.Tipo = TipoPagamentoEnum.CreditoOnline;

                var regraUsuario = UsuarioFactory.create();
                var usuario      = regraUsuario.pegarAtual();

                var regraCartao = CartaoFactory.create();
                var cartoes     = await regraCartao.listar(usuario.Id);

                if (cartoes != null && cartoes.Count() > 0)
                {
                    var cartaoListaPage = new CartaoListaPage()
                    {
                        Title     = "Meus Cartões",
                        Pagamento = Pagamento,
                        Cartoes   = cartoes
                    };
                    cartaoListaPage.AoEfetuarPagamento += (s2, pagamento) => {
                        AoEfetuarPagamento?.Invoke(sender, pagamento);
                    };
                    await Navigation.PushAsync(cartaoListaPage);
                }
                else
                {
                    var cartaoPage = new CartaoPage
                    {
                        Title      = "Cartão de Crédito",
                        UsaCredito = true,
                        UsaDebito  = false,
                        Pagamento  = Pagamento
                    };
                    cartaoPage.AoEfetuarPagamento += (s2, pagamento) =>
                    {
                        AoEfetuarPagamento?.Invoke(sender, pagamento);
                    };
                    await Navigation.PushAsync(cartaoPage);
                }
                UserDialogs.Instance.HideLoading();
            }
            catch (Exception erro)
            {
                UserDialogs.Instance.HideLoading();
                //UserDialogs.Instance.Alert(erro.Message, "Erro", "Fechar");
                await DisplayAlert("Erro", erro.Message, "Entendi");
            }
        }
Пример #17
0
        public void CadastrarUsuario(string email, string senha)
        {
            var usuarioFactory = new UsuarioFactory();

            var usuario = usuarioFactory.Rebuild(new Usuario {
                Email = new Email(email), Senha = _criptografiaService.GetMD5Hash(senha)
            });

            _usuarioService.Cadastrar(usuario);
        }
Пример #18
0
        private void inicializarComponente()
        {
            _SenhaAntiga = new Entry
            {
                Placeholder       = "Senha antiga",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Fill,
                IsPassword        = true
            };
            _NovaSenha = new Entry
            {
                Placeholder       = "Nova senha",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Fill,
                IsPassword        = true
            };
            _ConfirmaNovaSenha = new Entry
            {
                Placeholder       = "Repita a nova senha",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Fill,
                IsPassword        = true
            };
            _ResetaSenha = new Button()
            {
                Margin            = new Thickness(0, 10, 0, 0),
                Text              = "RESETAR MINHA SENHA",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Fill,
                Style             = Estilo.Current[Estilo.BTN_PRINCIPAL]
            };
            _ResetaSenha.Clicked += async(sender, e) =>
            {
                if (validaResete())
                {
                    UserDialogs.Instance.ShowLoading("Aguarde...");
                    if (await UsuarioFactory.create().resetarSenha(new UsuarioNovaSenhaInfo {
                        Email = _Email, Senha = _NovaSenha.Text, SenhaAntiga = _SenhaAntiga.Text
                    }))
                    {
                        UserDialogs.Instance.HideLoading();
                        //await UserDialogs.Instance.AlertAsync("Sua senha foi resetada", "Sucesso !", "Ok");
                        await DisplayAlert("Sucesso", "Sua senha foi resetada", "Fechar");

                        await Navigation.PopToRootAsync();
                    }
                    else
                    {
                        UserDialogs.Instance.HideLoading();
                        //UserDialogs.Instance.Alert("Ocorreu uma falha ao resetar a senha. Tente novamente mais tarde.", "Falha", "Ok");
                        await DisplayAlert("Erro", "Ocorreu uma falha ao resetar a senha. Tente novamente mais tarde.", "Entendi");
                    }
                }
            };
        }
Пример #19
0
        private void inicializarComponente()
        {
            _Email = new Entry
            {
                Placeholder       = "Preencha o seu email.",
                Keyboard          = Keyboard.Email,
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Fill
            };
            _RecuperarSenha = new Button()
            {
                Margin            = new Thickness(0, 10, 0, 0),
                Text              = "ENVIAR SENHA PARA O EMAIL",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Fill,
                Style             = Estilo.Current[Estilo.BTN_PRINCIPAL]
            };
            _RecuperarSenha.Clicked += async(sender, e) =>
            {
                if (validaProximo())
                {
                    UserDialogs.Instance.ShowLoading("Aguarde...");
                    if (await UsuarioFactory.create().recuperarSenha(new UsuarioNovaSenhaInfo {
                        Email = _Email.Text
                    }))
                    {
                        UserDialogs.Instance.HideLoading();
                        //await UserDialogs.Instance.AlertAsync("A senha foi enviada para o seu email", "Sucesso !", "Ok");
                        await DisplayAlert("Sucesso", "A senha foi enviada para o seu email", "Entendi");

                        await Navigation.PopToRootAsync();
                    }
                    else
                    {
                        UserDialogs.Instance.HideLoading();
                        //UserDialogs.Instance.Alert("Ocorreu uma falha ao enviar a senha. Verifique se o email informado está correto.", "Falha", "Ok");
                        await DisplayAlert("Erro", "Ocorreu uma falha ao enviar a senha. Verifique se o email informado está correto.", "Entendi");
                    }
                }
            };
            _ResetarSenha = new Button()
            {
                Margin            = new Thickness(0, 10, 0, 0),
                Text              = "ALTERAR A SENHA",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.Fill,
                Style             = Estilo.Current[Estilo.BTN_PADRAO]
            };
            _ResetarSenha.Clicked += (sender, e) => {
                if (validaProximo())
                {
                    Navigation.PushAsync(new ResetaSenhaPage(_Email.Text));
                }
            };
        }
Пример #20
0
        private async void boletoClicked(object sender, EventArgs e)
        {
            if (Pagamento == null)
            {
                await DisplayAlert("Erro", "Nenhum pagamento informado!", "Fechar");

                return;
            }
            Pagamento.Tipo = TipoPagamentoEnum.Boleto;

            if (Pagamento.TemEndereco)
            {
                gerarBoleto(Pagamento);
            }
            else
            {
                var regraUsuario = UsuarioFactory.create();
                var usuario      = regraUsuario.pegarAtual();
                if (usuario.Enderecos.Count == 1)
                {
                    preencherEndereco(Pagamento, usuario.Enderecos[0]);
                    gerarBoleto(Pagamento);
                }
                else if (usuario.Enderecos.Count > 0)
                {
                    var enderecoListaPage = EnderecoUtils.gerarEnderecoLista((endereco) =>
                    {
                        preencherEndereco(Pagamento, endereco);
                        gerarBoleto(Pagamento);
                    });
                    var enderecos = new List <EnderecoInfo>();
                    foreach (var endereco in usuario.Enderecos)
                    {
                        enderecos.Add(endereco);
                    }
                    enderecoListaPage.Enderecos = enderecos;
                    enderecoListaPage.Title     = "Endereço de Cobrança";
                    await Navigation.PushAsync(enderecoListaPage);
                }
                else
                {
                    var cepPage = EnderecoUtils.gerarBuscaPorCep((endereco) =>
                    {
                        usuario.Enderecos.Add(UsuarioEnderecoInfo.clonar(endereco));
                        var regraLogin = UsuarioFactory.create();
                        regraLogin.gravarAtual(usuario);

                        preencherEndereco(Pagamento, endereco);
                        gerarBoleto(Pagamento);
                    });
                    await Navigation.PushAsync(cepPage);
                }
            }
        }
Пример #21
0
        public static EnderecoListaPage gerarEnderecoLista(Action <EnderecoInfo> aoSelecionar)
        {
            var enderecoListaPage = new EnderecoListaPage
            {
                Title = "Endereços"
            };

            enderecoListaPage.AoAtualizar += async(sender, enderecos) => {
                UserDialogs.Instance.ShowLoading("Carregando...");
                try
                {
                    var regraUsuario = UsuarioFactory.create();
                    var usuario      = regraUsuario.pegarAtual();
                    usuario.Enderecos.Clear();
                    foreach (var endereco in enderecos)
                    {
                        usuario.Enderecos.Add(UsuarioEnderecoInfo.clonar(endereco));
                    }
                    int idUsuario = usuario.Id;
                    if (idUsuario > 0)
                    {
                        await regraUsuario.alterar(usuario);
                    }
                    else
                    {
                        idUsuario = await regraUsuario.inserir(usuario);
                    }
                    var usuarioRemoto = await regraUsuario.pegar(idUsuario);

                    regraUsuario.gravarAtual(usuarioRemoto);

                    var usuarioEnderecos = new List <EnderecoInfo>();
                    foreach (var endereco in usuarioRemoto.Enderecos)
                    {
                        usuarioEnderecos.Add(endereco);
                    }
                    ((EnderecoListaPage)sender).Enderecos = usuarioEnderecos;

                    UserDialogs.Instance.HideLoading();
                }
                catch (Exception erro)
                {
                    UserDialogs.Instance.HideLoading();
                    UserDialogs.Instance.Alert(erro.Message, "Erro", "Fechar");
                }
            };
            if (aoSelecionar != null)
            {
                enderecoListaPage.AoSelecionar += (sender, endereco) => {
                    aoSelecionar(endereco);
                };
            }
            return(enderecoListaPage);
        }
Пример #22
0
        protected async override Task atualizandoDado()
        {
            await base.atualizandoDado();

            var regraUsuario = UsuarioFactory.create();
            var usuario      = regraUsuario.pegarAtual();

            var regraPedido = PedidoFactory.create();

            _avaliacaoPage.Pedidos = await regraPedido.listarAvaliacao(0, usuario.Id);
        }
Пример #23
0
 protected override async void OnAppearing()
 {
     base.OnAppearing();
     if (_Inicio)
     {
         _Inicio = false;
         UserDialogs.Instance.ShowLoading("carregando...");
         _EnderecoList.ItemsSource = UsuarioFactory.create().pegarAtual().Enderecos;
         UserDialogs.Instance.HideLoading();
     }
 }
Пример #24
0
        public async Task <CommandResult> Handle(ExcluirUsuarioCommand request, CancellationToken cancellationToken)
        {
            var usuario = UsuarioFactory.Create(request);

            _usuarioRepository.Excluir(usuario);

            _usuarioRepository.SaveChanges();

            var resultado = _managerResult.Success("Usuário excluído com sucesso.");

            return(await Task.FromResult(resultado));
        }
Пример #25
0
        public void SetupTest()
        {
            usuarioRepositorio = new UsuarioMockRepositorio();
            usuarioFactory     = new UsuarioFactory(new LoginJaExisteSpecification(usuarioRepositorio), new LoginValidoSpecification(), new SenhaValidaSpecification());
            LoginJaExisteSpecification loginJaExiste = new LoginJaExisteSpecification(usuarioRepositorio);

            usuarioFactory.LoginEmUsoSpecification = loginJaExiste;
            loginService = new LoginService(usuarioRepositorio, usuarioFactory, SessaoLogin.getSessao());

            usuarioRepositorio.save(usuarioFactory.criarUsuario("João", "joaozinho", "123456"));
            usuarioRepositorio.save(usuarioFactory.criarUsuario("Maria", "maria", "123456"));
        }
        public UsuarioDTO UpdateUsuario(UsuarioDTO usuarioDTO)
        {
            try
            {
                if (usuarioDTO == null)
                {
                    throw new ArgumentNullException("usuarioDTO");
                }

                var persistido = _usuarioRepository.Get(usuarioDTO.Id);
                if (persistido == null)
                {
                    throw new Exception("Usuario não encontrado.");
                }

                var corrente = UsuarioFactory.CreateUsuario(
                    persistido.NomeUsuario,
                    usuarioDTO.Email,
                    persistido.Senha,
                    usuarioDTO.Nome,
                    usuarioDTO.Cpf,
                    usuarioDTO.Endereco,
                    usuarioDTO.Complemento,
                    usuarioDTO.Numero,
                    usuarioDTO.Bairro,
                    usuarioDTO.Cidade,
                    usuarioDTO.Estado,
                    usuarioDTO.Cep,
                    usuarioDTO.Telefone,
                    usuarioDTO.Celular,
                    usuarioDTO.Sexo,
                    usuarioDTO.Ativo,
                    usuarioDTO.TipoUsuario,
                    usuarioDTO.ClienteId);

                corrente.Id = persistido.Id;
                bool permissaoAlterada = persistido.Ativo != corrente.Ativo;

                AlterarUsuario(persistido, corrente);

                if (permissaoAlterada)
                {
                    AlterarPermissaoPasta(corrente);
                }

                var adapter = TypeAdapterFactory.CreateAdapter();
                return(adapter.Adapt <Usuario, UsuarioDTO>(corrente));
            }
            catch (Exception ex)
            {
                throw ManipuladorDeExcecao.TrateExcecao(ex);
            }
        }
Пример #27
0
        public void DeveDeletarComportamentoAnimal()
        {
            var idUsuario                    = Guid.NewGuid();
            var usuario                      = UsuarioFactory.CriarUmUsuarioValido(idUsuario);
            var usuarioViewModel             = UsuarioViewModelFactory.CriarUmUsuarioValido(idUsuario);
            var animalComportamentoViewModel = AnimalComportamentoViewModelFactory.CriarUmAnimalComportamentoViewModel(usuarioViewModel);

            animalComportamentoAppService.DeleteComportamentoAnimal(animalComportamentoViewModel.IdAnimal);

            _animalComportamentoService.Received().DeleteComportamentoAnimal(animalComportamentoViewModel.IdAnimal);
            _uow.Received().BeginTransaction();
        }
Пример #28
0
        private void _avaliarClicked(object sender, EventArgs e)
        {
            var regraUsuario = UsuarioFactory.create();
            var usuario      = regraUsuario.pegarAtual();

            var descricao = "";
            var frete     = this.Frete;

            if (frete.IdUsuario == usuario.Id)
            {
                descricao = "Como você avalia o motorista?";
            }
            else if (frete.IdMotorista == usuario.Id)
            {
                descricao = "Como você avalia o cliente?";
            }
            var avaliePage = new AvaliePage
            {
                Descricao = descricao
            };

            avaliePage.AoAvaliar += async(s1, nota) =>
            {
                UserDialogs.Instance.ShowLoading("carregando...");
                try
                {
                    var regraFrete = FreteFactory.create();
                    frete = await regraFrete.pegar(this.Frete.Id);

                    if (frete.IdUsuario == usuario.Id)
                    {
                        frete.NotaMotorista = nota;
                    }
                    else if (frete.IdMotorista == usuario.Id)
                    {
                        frete.NotaFrete = nota;
                    }
                    await regraFrete.alterar(frete);

                    UserDialogs.Instance.HideLoading();
                    await Navigation.PopAsync();

                    AoAtualizarTela?.Invoke(this, frete);
                }
                catch (Exception erro)
                {
                    UserDialogs.Instance.HideLoading();
                    await UserDialogs.Instance.AlertAsync(erro.Message, "Erro", "Entendi");
                }
            };
            Navigation.PushAsync(avaliePage);
        }
Пример #29
0
        private async void enviarPagamento()
        {
            if (!validarCampo())
            {
                return;
            }
            UserDialogs.Instance.ShowLoading("Enviando...");
            try
            {
                var regraPagamento = PagamentoFactory.create();
                var regraCartao    = CartaoFactory.create();
                var regraUsuario   = UsuarioFactory.create();

                var usuario = regraUsuario.pegarAtual();

                Pagamento.Bandeira      = regraPagamento.pegarBandeiraPorNumeroCartao(_NumeroCartaoEntry.Text);
                Pagamento.DataExpiracao = regraCartao.pegarDataExpiracao((string)_ValidadeCartaoPicker.SelectedItem);
                Pagamento.IdUsuario     = usuario.Id;
                Pagamento.NomeCartao    = _NomeEntry.Text;
                Pagamento.NumeroCartao  = _NumeroCartaoEntry.TextOnlyNumber;
                Pagamento.Tipo          = _TipoSelecionado;
                Pagamento.CVV           = _CVCartaoEntry.Text;

                var retorno = await regraPagamento.pagar(Pagamento);

                if (retorno.Situacao == SituacaoPagamentoEnum.Pago || retorno.Situacao == SituacaoPagamentoEnum.AguardandoPagamento)
                {
                    var pagamento = await regraPagamento.pegar(retorno.IdPagamento);

                    if (retorno.Situacao == SituacaoPagamentoEnum.Pago)
                    {
                        var mensagem = "Foram debitados R$ {0} do seu cartão de crédito.";
                        var rootPage = (RootPage)App.Current.MainPage;
                        CrossLocalNotifications.Current.Show(rootPage.NomeApp, string.Format(mensagem, pagamento.ValorTotalStr));
                    }
                    UserDialogs.Instance.HideLoading();
                    AoEfetuarPagamento?.Invoke(this, pagamento);
                }
                else
                {
                    UserDialogs.Instance.HideLoading();
                    await DisplayAlert("Erro", retorno.Mensagem, "Entendi");
                }
            }
            catch (Exception erro)
            {
                UserDialogs.Instance.HideLoading();
                //UserDialogs.Instance.Alert(erro.Message, "Erro", "Fechar");
                await DisplayAlert("Erro", erro.Message, "Entendi");
            }
        }
        public async Task ObterPorId_DeveRetornarUsuarioQuandoForEncontradoNoBanco()
        {
            var usuario = UsuarioFactory.GerarUsuario();
            await _context.Usuarios.AddAsync(usuario);

            await _context.SaveChangesAsync();

            var query        = new ObterUsuarioPorIdQuery(usuario.Id);
            var queryHandler = new UsuarioQueryHandler(_usuarioRepository);

            var usuarioBanco = await queryHandler.Handle(query, CancellationToken.None);

            usuarioBanco.Should().BeEquivalentTo(usuario);
        }