public async Task Verifica() { #region Variáveis / Controllers Cliente cliente = new Cliente(); LoginModel login; Motorista motorista = new Motorista(); DataService data = new DataService(); LoginController control = new LoginController(); ClienteController controlCliente = new ClienteController(); MotoristaController motoristaController = new MotoristaController(); string email = etEmail.Text; string senha = etSenha.Text; string cpf; int idCliente = 0; #endregion #region Mensagens de retorno string ok = "Campos OK"; string notEmail = "Digite o e-mail!"; string notSenha = "Digite a senha!"; string vazios = "Campos vazios!"; string invalidos = "Usuário e/ou senha incorretos"; string emailInvalido = "E-mail inválido!"; string acessando = "Aguarde ..."; #endregion if (email != null && senha != null) { if (!ValidaCampos.IsEmail(email)) // VALIDANDO E-MAIL { lblEntrando.IsVisible = false; lblAlerta.IsVisible = true; lblAlerta.Text = ""; lblAlerta.Text = emailInvalido; } else { #region Verifica login // Lista completa var lista = await loginController.GetList(); var lista_ = lista.Where(l => l.IdStatus == 4).ToList(); // Id: 4 - Ativo var filtro = lista_.FirstOrDefault(l => l.Email == email); // Pesquisa e-mail if (filtro == null) // email inválido { await DisplayAlert("E-mail inválido", "Verifique o e-mail digitado.", "OK"); } else if (filtro.Senha != senha) { await DisplayAlert("Senha inválido", "Verifique a senha digitada.", "OK"); } else if (filtro.Senha == senha) { // Aguarde ... lblEntrando.IsVisible = true; lblEntrando.Text = acessando; // Envi ao objeto Login login = await loginController.GetLogin_(filtro); cpf = login.Ccpf; cliente = await controlCliente.GetCpf(cpf); if (cliente.IdTipoUsuario == 3) { motorista = await motoristaController.GetMotoristaCliente(cliente.IdCliente); Session.Instance.motorista = motorista; } #region Captura dos dados do usuário Session.Instance.IdCliente = cliente.IdCliente; Session.Instance.IdTipoUsuario = cliente.IdTipoUsuario; Session.Instance.Email = cliente.Cemail; Session.Instance.Senha = cliente.Csenha; Session.Instance.Cnome = cliente.Cnome; Session.Instance.Crg = cliente.Crg; Session.Instance.Ccpf = cliente.Ccpf; Session.Instance.Csexo = cliente.Csexo; Session.Instance.CdataNascto = cliente.CdataNascto; Session.Instance.Ccelular = cliente.Ccelular; Session.Instance.Ccelular2 = cliente.Ccelular2; Session.Instance.Cendereco = cliente.Cendereco; Session.Instance.Cnumero = cliente.Cnumero; Session.Instance.Ccomplemento = cliente.Ccomplemento; Session.Instance.Cbairro = cliente.Cbairro; Session.Instance.Ccidade = cliente.Ccidade; Session.Instance.Ccep = cliente.Ccep; Session.Instance.Cuf = cliente.Cuf; Session.Instance.IdStatus = cliente.IdStatus; Session.Instance.IdMotorista = motorista.IdMotorista; Session.Instance.MnumeroCnh = motorista.MnumeroCnh; Session.Instance.McategoriaCnh = motorista.McategoriaCnh; Session.Instance.MvalidadeCnh = motorista.MvalidadeCnh; Session.Instance.cliente = cliente; #endregion await Navigation.PushModalAsync(new Views.LgHome()); } #endregion } } if (email != null && senha == null) { await DisplayAlert("Senha", notSenha, "OK"); } if (email == null && senha != null) { await DisplayAlert("Email", notEmail, "OK"); } if (email == null && senha == null) { await DisplayAlert("Vazios", vazios, "OK"); } }
private async Task VerificaCamposAsync(int id) { #region Mensagens de retorno string vazio = "Campo vazio"; string nulo = "Preencha o campo: "; string finalizado = "Cadastro finalizado com sucesso!"; string emails = "Os e-mails não coincidem!"; string senhas = "As senhas não coincidem!"; string dadosInsuf = "Dados insuficientes no campo: "; string caracter = "': este campos não aceita caracteres especiais."; string caracterInv = "Caracteres inválidos"; string senhaCurta = "A senha deve ter mais de 6 caracteres!"; string atualizado = "Cadastro atualizado com sucesso!"; #endregion Cliente cliente; #region Variáveis #region Others /* String categoria = etClienteCategoriaCnh.Items[etClienteCategoriaCnh.SelectedIndex]; * String uf = etClienteUf.Items[etClienteUf.SelectedIndex]; * String conta = etClienteTipoConta.Items[etClienteTipoConta.SelectedIndex];*/ #endregion #region Dados Pessoais string nome = etClienteNome.Text; string rg = etClienteRg.Text; string cpf = etClienteCpf.Text; string sexo = etClienteSexo.Items[etClienteSexo.SelectedIndex]; string dataNascto = etClienteDataNascto.Text; string celular = etClienteCelular.Text; string celular2 = etClienteCelular02.Text; int IdTipoUsuario = 2; int IdStatus = 4; int idCliente = 1; #endregion #region Endereço string endereco = etClienteEndereco.Text; string numero = etClienteNumero.Text; string complemento = etClienteComplemento.Text; string bairro = etClienteBairro.Text; string cidade = etClienteCidade.Text; string cep = etClienteCep.Text; string uf = etClienteUf.Text; #endregion #region Dados bancários string numeroCartao = etClienteNumeroCartao.Text; int idBandeira = 1; string bandeira = etClienteBandeira.Text; string dataValidade = etClienteValidadeCartao.Text; string nomeImpresso = etClienteNomeImpresso.Text; int codSeguranca = Convert.ToInt32(etClienteCodSeguranca.Text); DateTime dataCadastro = DateTime.Now; #endregion #region Email e senha string email = etClienteEmail.Text; string confemail = etClienteConfEmail.Text; string senha = etClienteSenha.Text; string confsenha = etClienteConfSenha.Text; #endregion #endregion try { #region Valida - Dados Pessoais if (etClienteNome.IsVisible) { #region Campos if (string.IsNullOrEmpty(nome)) // NOME { await DisplayAlert(vazio, nulo + lblClienteNome.Text, "OK"); } else if (nome.Length < 6) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteNome.Text, "OK"); } else if (string.IsNullOrEmpty(rg)) // RG { await DisplayAlert(vazio, nulo + lblClienteRg.Text, "OK"); } else if (rg.Length < 9) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteRg.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(rg)) { await DisplayAlert(caracterInv, "'" + lblClienteRg.Text + caracter, "OK"); } else if (string.IsNullOrEmpty(cpf)) // CPF { await DisplayAlert(vazio, nulo + lblClienteCpf.Text, "OK"); } else if (cpf.Length < 11) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteCpf.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(cpf)) { await DisplayAlert(caracterInv, "'" + lblClienteCpf.Text + caracter, "OK"); } else if (string.IsNullOrEmpty(sexo)) // SEXO { await DisplayAlert(vazio, nulo + lblClienteSexo.Text, "OK"); } else if (string.IsNullOrEmpty(dataNascto)) // DATA DE NASCIMENTO { await DisplayAlert(vazio, nulo + lblClienteDataNascto.Text, "OK"); } else if (dataNascto.Length < 8) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteDataNascto.Text, "OK"); } else if (string.IsNullOrEmpty(celular)) // CELULAR { await DisplayAlert(vazio, nulo + lblClienteCelular.Text, "OK"); } else if (celular.Length < 9) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteCelular.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(celular)) { await DisplayAlert(caracterInv, "'" + lblClienteCelular.Text + caracter, "OK"); } else if (string.IsNullOrEmpty(celular2)) // CELULAR 02 { await DisplayAlert(vazio, nulo + lblClienteCelular02.Text, "OK"); } else if (celular2.Length < 9) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteCelular02.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(celular2)) { await DisplayAlert(caracterInv, "'" + lblClienteCelular02.Text + caracter, "OK"); } #endregion #region Verifica o CPF /* var verificar = await control.GetCpf(cpf); * * string verificaCpf = verificar.Ccpf.ToString(); * * if (verificaCpf != null) * { * lblAlerta.IsVisible = true; * lblAlerta.Text = ""; * lblAlerta.Text = "CPF já cadastrado!"; * } * else * { */ #endregion DadosPessoaisNotVisible(); if (verificaOperacao == 1) { btnEndereco.IsEnabled = true; } btnAvancar.IsVisible = false; btnAvancar2.IsVisible = true; if (verificaOperacao == 1) // INSERT { btnVoltar.IsVisible = true; } else // UPDATE { stBtnVoltar.IsVisible = true; } lblAlerta.IsVisible = false; EnderecoVisible(); } #endregion #region Valida - Endereço else if (etClienteEndereco.IsVisible) { #region Campos if (string.IsNullOrEmpty(endereco)) // ENDEREÇO { await DisplayAlert(vazio, nulo + lblClienteEndereco.Text, "OK"); } else if (endereco.Length < 5) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteEndereco.Text, "OK"); } else if (string.IsNullOrEmpty(numero)) // NUMERO { await DisplayAlert(vazio, nulo + lblClienteNumero.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(numero)) { await DisplayAlert(caracterInv, "'" + lblClienteNumero.Text + caracter, "OK"); } else if (string.IsNullOrEmpty(complemento)) // COMPLEMENTO { await DisplayAlert(vazio, nulo + lblClienteCompl.Text, "OK"); } else if (string.IsNullOrEmpty(bairro)) // BAIRRO { await DisplayAlert(vazio, nulo + lblClienteBairro.Text, "OK"); } else if (bairro.Length < 5) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteBairro.Text, "OK"); } else if (string.IsNullOrEmpty(cidade)) // CIDADE { await DisplayAlert(vazio, nulo + lblClienteCidade.Text, "OK"); } else if (cidade.Length < 6) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteCidade.Text, "OK"); } else if (string.IsNullOrEmpty(cep)) // CEP { await DisplayAlert(vazio, nulo + lblClienteCep.Text, "OK"); } else if (cep.Length < 8) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteCep.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(cep)) { await DisplayAlert(caracterInv, "'" + lblClienteCep.Text + caracter, "OK"); } else if (string.IsNullOrEmpty(uf)) // UF { await DisplayAlert(vazio, nulo + lblClienteUf.Text, "OK"); } else if (uf.Length < 2) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteUf.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(uf)) { await DisplayAlert(caracterInv, "'" + lblClienteUf.Text + caracter, "OK"); } #endregion else { EnderecoNotVisible(); if (verificaOperacao != 2) // insert { btnDadosBancarios.IsEnabled = true; DadosBancariosVisible(); } else // update { btnAvancar2.IsVisible = false; btnSalvar.IsVisible = true; EmailSenhaVisible(); } lblAlerta.IsVisible = false; } } #endregion #region Valida - Dados bancários else if (btnDadosBancarios.IsEnabled && etClienteNumeroCartao.IsVisible) { if (string.IsNullOrEmpty(numeroCartao)) // NUMERO CARTAO { await DisplayAlert(vazio, nulo + lblClienteNumeroCartao.Text, "OK"); } else if (numeroCartao.Length < 15) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteNumeroCartao.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(numeroCartao)) { await DisplayAlert(caracterInv, "'" + lblClienteNumeroCartao.Text + caracter, "OK"); } else if (string.IsNullOrEmpty(dataValidade)) // DATA VALIDADE CARTAO { await DisplayAlert(vazio, nulo + lblClienteValidadeCartao.Text, "OK"); } else if (dataValidade.Length < 6) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteValidadeCartao.Text, "OK"); } else if (string.IsNullOrEmpty(codSeguranca.ToString())) // CODIGO SEGURANÇA { await DisplayAlert(vazio, nulo + lblClienteCodSeguranca.Text, "OK"); } else if (codSeguranca.ToString().Length < 3) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteCodSeguranca.Text, "OK"); } else if (ValidaCampos.CaracterEspecial(codSeguranca.ToString())) { await DisplayAlert(caracterInv, "'" + lblClienteCodSeguranca.Text + caracter, "OK"); } else if (string.IsNullOrEmpty(nomeImpresso)) // NOME IMPRESSO { await DisplayAlert(vazio, nulo + lblClienteNomeImpresso.Text, "OK"); } else if (nomeImpresso.Length < 6) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteNomeImpresso.Text, "OK"); } else if (string.IsNullOrEmpty(bandeira)) // BANDEIRA { await DisplayAlert(vazio, nulo + lblClienteBandeira.Text, "OK"); } else if (bandeira.Length < 4) { await DisplayAlert("Dados insuficientes", dadosInsuf + lblClienteBandeira.Text, "OK"); } else { DadosBancariosNotVisible(); btnAvancar2.IsVisible = false; btnFinalizar.IsVisible = true; lblAlerta.IsVisible = false; EmailSenhaVisible(); } } #endregion else if (etClienteEmail.IsVisible) { #region Valida - Email e senha if (string.IsNullOrEmpty(email)) // EMAIL { await DisplayAlert(vazio, nulo + lblClienteEmail.Text, "OK"); } else if (string.IsNullOrEmpty(senha)) // SENHA { await DisplayAlert(vazio, nulo + lblClienteSenha.Text, "OK"); } else if (senha.Length < 6) // SENHA { await DisplayAlert("Dados insuficientes", senhaCurta, "OK"); } else if (!ValidaCampos.IsEmail(email)) // VALIDANDO E-MAIL { await DisplayAlert(caracterInv, "E-mail inválido!", "OK"); } #endregion #region Insert else if (verificaOperacao == 1) { if (string.IsNullOrEmpty(confemail)) // CONFIRMAÇÃO DE EMAIL { await DisplayAlert(vazio, nulo + lblClienteConfEmail.Text, "OK"); } else if (!email.Equals(confemail)) // COMPARA E-MAIL { await DisplayAlert("Emails", emails, "OK"); } else if (string.IsNullOrEmpty(confsenha)) // CONFIRMAÇÃO DE SENHA { await DisplayAlert(vazio, nulo + lblClienteConfSenha.Text, "OK"); } else if (!senha.Equals(confsenha)) // COMPARA SENHA { await DisplayAlert("Senhas", senhas, "OK"); } else { //------------------------------------------------------------------------- // Salvando ... #region Cliente() cliente = new Cliente (nome, rg, cpf, sexo, dataNascto, celular, celular2, endereco, numero, complemento, bairro, cidade, cep, uf, email, senha, IdTipoUsuario, IdStatus ); #endregion etClienteSexo.SelectedItem = "F"; #region INSERT if (id == 1) { await control.PostAsync(cliente); // Insert -Tab. Cliente // Captura o IdCliente gerado no banco Cliente clien = await control.GetCpf(cpf); #region CartaoCredito() CartaoCredito cartao = new CartaoCredito() { IdCliente = clien.IdCliente, Ccpf = cpf, CNumeroCartao = numeroCartao, IdBandeira = idBandeira, CDataValidade = dataValidade, CCodigoSeg = codSeguranca, CDataCadastro = DateTime.Now, IdStatus = 4, CDataInativacao = null, CUltimaAtualizacao = null, BandeiraDescricao = bandeira, NomeImpresso = nomeImpresso }; #endregion await controlCartao.PostCartaoAsync(cartao); // Insert - Tab. Cartao btnFinalizar.IsVisible = false; btnVoltar.IsVisible = false; lblAlerta.IsVisible = false; await DisplayAlert("Sucesso!", "Cadastro realizado com sucesso!", "OK"); EmailSenhaNotVisible(); // Direciona para a tela de login await Navigation.PushModalAsync(new Views.Login()); //btnLogar.IsVisible = true; } #endregion } } #endregion else { //------------------------------------------------------------------------- // Salvando ... #region Cliente() cliente = new Cliente (nome, rg, cpf, sexo, dataNascto, celular, celular2, endereco, numero, complemento, bairro, cidade, cep, uf, email, senha, IdTipoUsuario, IdStatus ); #endregion #region UPDATE if (id == 2) { await control.UpdateCliente(cliente, idCli); await DisplayAlert("Sucesso!", "Cadastro realizado com sucesso!", "OK"); // Confirma a atualização EmailSenhaNotVisible(); btnSalvar.IsVisible = false; await Navigation.PushModalAsync(new Views.LgMinhaContaa()); // Direciona para 'Minha Conta' } #endregion //------------------------------------------------------------------------- } } } catch (Exception ex) { if (ex.Source != null) { //await DisplayAlert("Erro", ex.ToString(), "OK"); await DisplayAlert("Erro", ex.ToString(), "OK"); Console.WriteLine("Exception source: {0}", ex.Source); // Caso não seja possível realizar o processo de cadastro total (de todas as classes), // é excluído o que já foi cadastrado. #region Exclui registros cadastrados caso não tenha sido possível inserir os dados em todas as classes envolvidas Cliente clien = await control.GetCpf(cpf); // Pega o ID do cliente gerado ---- //int idCliente = clien.IdCliente; if (control.GetCpf(cpf) != null) { await control.DeleteCliente(idCliente); } #endregion } throw; } }