示例#1
0
        public static async Task criarUsuario(Action aoCriar)
        {
            var atualPage    = App.Current.MainPage;
            var cadastroPage = UsuarioFormPageFactory.create();

            if (!(cadastroPage is FreteUsuarioFormPage))
            {
                throw new Exception("A página de cadastro precisa ser do tipo FreteUsuarioFormPage.");
            }
            ((FreteUsuarioFormPage)cadastroPage).AoCadastrarMotorista += (s1, m1) => {
                var motoristaPage = CadastroMotoristaPageFactory.create();
                motoristaPage.Usuario      = m1;
                motoristaPage.AoCompletar += (s2, motorista) =>
                {
                    aoCriar?.Invoke();
                };
                ((Page)s1).Navigation.PushAsync(motoristaPage);
            };
            ((FreteUsuarioFormPage)cadastroPage).AoCadastrarEmpresa += (s2, u2) =>
            {
                /*
                 * var empresaPage = new CadastroEmpresaPage(u2);
                 * empresaPage.AoCompletar += (s3, usuario) =>
                 * {
                 *  aoCriar?.Invoke();
                 * };
                 * ((Page)s2).Navigation.PushAsync(empresaPage);
                 */
                aoCriar?.Invoke();
            };
            await atualPage.Navigation.PushAsync(cadastroPage);
        }
示例#2
0
 private void inicializarComponente()
 {
     _CadastroButton = new Button()
     {
         Margin            = new Thickness(0, 10, 0, 0),
         Text              = "CRIAR CONTA",
         VerticalOptions   = LayoutOptions.Start,
         HorizontalOptions = LayoutOptions.Fill,
         Style             = Estilo.Current[Estilo.BTN_PRINCIPAL]
     };
     _CadastroButton.Clicked += (sender, e) => {
         var cadastroPage = UsuarioFormPageFactory.create();
         cadastroPage.Title        = "Cria sua conta";
         cadastroPage.Usuario      = Usuario;
         cadastroPage.Gravar       = true;
         cadastroPage.AoCadastrar += (s2, usuario) =>
         {
             AoSelecionar?.Invoke(this, usuario);
         };
         Navigation.PushAsync(cadastroPage);
     };
     _LoginButton = new Button()
     {
         Margin            = new Thickness(0, 10, 0, 0),
         Text              = "JÁ POSSUO UM CONTA",
         VerticalOptions   = LayoutOptions.Start,
         HorizontalOptions = LayoutOptions.Fill,
         Style             = Estilo.Current[Estilo.BTN_SUCESSO]
     };
     _LoginButton.Clicked += (sender, e) => {
         var loginPage = new LoginPage {
             Title = "Entre com sua conta"
         };
         loginPage.AoLogar += (s2, usuario) => {
             AoSelecionar?.Invoke(this, usuario);
         };
         Navigation.PushAsync(loginPage);
     };
     _SenhaButton = new Button()
     {
         Margin            = new Thickness(0, 10, 0, 0),
         Text              = "ESQUECI/ALTERAR MINHA SENHA",
         VerticalOptions   = LayoutOptions.Start,
         HorizontalOptions = LayoutOptions.Fill,
         Style             = Estilo.Current[Estilo.BTN_PADRAO]
     };
     _SenhaButton.Clicked += (sender, e) => {
         Navigation.PushAsync(new EmailSenhaPage());
     };
 }
示例#3
0
 protected virtual void inicializarComponente()
 {
     _usuarioPage              = UsuarioFormPageFactory.create();
     _usuarioPage.Title        = "Dados";
     _usuarioPage.Gravar       = true;
     _usuarioPage.AoCadastrar += (sender, e) => {
         //UserDialogs.Instance.Alert("Dados alterados com sucesso.", "Aviso", "Fechar");
         _usuarioPage.DisplayAlert("Aviso", "Dados alterados com sucesso.", "Fechar");
     };
     _enderecoListaPage = EnderecoUtils.gerarEnderecoLista(null);
     _cartaoListaPage   = new CartaoListaPage {
         Title = "Meus cartões"
     };
 }
示例#4
0
        public static Page gerarCadastro(Action <UsuarioInfo> aoCadastrar, bool usaRoot = true)
        {
            var regraUsuario        = UsuarioFactory.create();
            var usuario             = regraUsuario.pegarAtual();
            var usuarioCadastroPage = UsuarioFormPageFactory.create();

            usuarioCadastroPage.Title        = "Cadastre-se";
            usuarioCadastroPage.Gravar       = true;
            usuarioCadastroPage.Usuario      = usuario;
            usuarioCadastroPage.AoCadastrar += (sender, e) => {
                aoCadastrar?.Invoke(e);
                //var destaquePage = ProdutoUtils.gerarProdutoListaDestaque();
                //pushAsync(destaquePage, usaRoot);
            };
            return(usuarioCadastroPage);
        }
示例#5
0
        public static Page gerarCarrinho(Action <PedidoInfo> AoSelecionarEndereco)
        {
            var carrinhoPage = new CarrinhoPage
            {
                Title = "Meu carrinho"
            };

            carrinhoPage.AoFinalizar += (s1, produtos) =>
            {
                var regraUsuario = UsuarioFactory.create();
                var usuario      = regraUsuario.pegarAtual();
                if (usuario != null && usuario.Id > 0)
                {
                    if (usuario.Enderecos.Count > 0)
                    {
                        var enderecoListaPage = EnderecoUtils.gerarEnderecoLista((endereco) =>
                        {
                            AoSelecionarEndereco(PedidoUtils.gerar(produtos, endereco));
                        });
                        enderecoListaPage.Title = "Local de entrega";
                        ((Page)s1).Navigation.PushAsync(enderecoListaPage);
                    }
                    else
                    {
                        var cepPage = EnderecoUtils.gerarBuscaPorCep((endereco) =>
                        {
                            usuario.Enderecos.Add(UsuarioEnderecoInfo.clonar(endereco));
                            var regraLogin = UsuarioFactory.create();
                            regraLogin.gravarAtual(usuario);

                            AoSelecionarEndereco(PedidoUtils.gerar(produtos, endereco));
                        });
                        ((Page)s1).Navigation.PushAsync(cepPage);
                    }
                }
                else
                {
                    if (usuario == null)
                    {
                        usuario = new UsuarioInfo();
                    }
                    var usuarioCadastroPage = UsuarioFormPageFactory.create();
                    usuarioCadastroPage.Title        = "Cadastre-se";
                    usuarioCadastroPage.Gravar       = true;
                    usuarioCadastroPage.Usuario      = usuario;
                    usuarioCadastroPage.AoCadastrar += (s2, usuario2) =>
                    {
                        var cepPage = EnderecoUtils.gerarBuscaPorCep((endereco) =>
                        {
                            usuario.Enderecos.Add(UsuarioEnderecoInfo.clonar(endereco));
                            var regraLogin = UsuarioFactory.create();
                            regraLogin.gravarAtual(usuario);

                            AoSelecionarEndereco(PedidoUtils.gerar(produtos, endereco));
                        });
                        ((Page)s2).Navigation.PushAsync(cepPage);
                    };
                    ((Page)s1).Navigation.PushAsync(usuarioCadastroPage);
                }
            };
            return(carrinhoPage);
        }