private async void CadastroClicked(object sender, EventArgs e) { var usuario = Usuario; var regraUsuario = UsuarioFactory.create(); /* * var antt = usuario.Preferencias.Where(x => x.Chave == "ANTT").FirstOrDefault(); * if (!String.IsNullOrEmpty(_ANTTEntry.Text)) { * if (antt != null) { * antt.Valor = _ANTTEntry.Text; * } * else { * usuario.Preferencias.Add(new UsuarioPreferenciaInfo { * Chave = "ANTT", * Valor = _ANTTEntry.Text * }); * } * } */ if (Gravar) { UserDialogs.Instance.ShowLoading("Enviando..."); } try { if (String.IsNullOrEmpty(_CNHEntry.Text)) { await DisplayAlert("Aviso", "Preencha a CNH", "Fechar"); return; } /* * var regraUsuario = UsuarioFactory.create(); * _usuario.Preferencias.Add(new UsuarioPreferenciaInfo * { * Chave = "ANTT", * Valor = _ANTTEntry.Text * }); */ TipoVeiculoInfo tipo = (TipoVeiculoInfo)_TipoVeiculoEntry.Value; TipoCarroceriaInfo carroceria = (TipoCarroceriaInfo)_CarroceriaEntry.Value; var motorista = new MotoristaInfo { Id = _usuario.Id, IdTipo = tipo.Id, Placa = _PlacaEntry.Text, Veiculo = _VeiculoEntry.Text, ANTT = _ANTTEntry.Text, Situacao = MotoristaSituacaoEnum.Ativo }; if (carroceria != null) { motorista.IdCarroceria = carroceria.Id; } if (Gravar) { await regraUsuario.alterar(_usuario); var regraMotorista = MotoristaFactory.create(); var motorista = new MotoristaInfo { Id = _usuario.Id, Usuario = _usuario, IdTipo = tipo.Id, CNH = _CNHEntry.Text, Placa = _PlacaEntry.Text, ANTT = _ANTTEntry.Text, Situacao = MotoristaSituacaoEnum.Ativo, }; if (carroceria != null) { motorista.IdCarroceria = carroceria.Id; } if (motorista.Id > 0) { await regraMotorista.alterar(motorista); } else { motorista.Id = await regraMotorista.inserir(motorista); } motorista = await regraMotorista.pegar(motorista.Id); /* * var motoristaAtual = await regraMotorista.pegar(_usuario.Id); * if (motoristaAtual != null) * { * await regraMotorista.alterar(motorista); * } * else * { * await regraMotorista.inserir(motorista); * } */ //var usuarioCadastrado = await regraUsuario.pegar(_usuario.Id); //motorista = await regraMotorista.pegar(_usuario.Id); var regraUsuario = UsuarioFactory.create(); regraUsuario.gravarAtual(motorista.Usuario); regraMotorista.gravarAtual(motorista); UserDialogs.Instance.HideLoading(); AoCompletar?.Invoke(this, motoristaCadastrado); } else { //UserDialogs.Instance.HideLoading(); AoCompletar?.Invoke(this, motorista); } } catch (Exception erro) { if (Gravar) { UserDialogs.Instance.HideLoading(); } await UserDialogs.Instance.AlertAsync(erro.Message, "Erro", "Entendi"); } }
private void inicializarComponente() { _nomeEmpresaEntry = new Entry { Placeholder = "Nome da Empresa", VerticalOptions = LayoutOptions.Start, HorizontalOptions = LayoutOptions.Fill }; _enderecoForm = new EnderecoListaForm { VerticalOptions = LayoutOptions.Start, HorizontalOptions = LayoutOptions.Fill }; _CadastroButton = new Button() { Text = "CADASTRAR", HorizontalOptions = LayoutOptions.Fill, VerticalOptions = LayoutOptions.Start, Style = Estilo.Current[Estilo.BTN_SUCESSO] }; _CadastroButton.Clicked += async(sender, e) => { var regraUsuario = UsuarioFactory.create(); _usuario.Preferencias.Add(new UsuarioPreferenciaInfo { Chave = "NOME_EMPRESA", Valor = _nomeEmpresaEntry.Text }); _usuario.Enderecos = new List <UsuarioEnderecoInfo>(); foreach (var endereco in _enderecoForm.Enderecos) { _usuario.Enderecos.Add(UsuarioEnderecoInfo.clonar(endereco)); } UserDialogs.Instance.ShowLoading("Enviando..."); try { if (_usuario.Id > 0) { await regraUsuario.alterar(_usuario); } else { _usuario.Id = await regraUsuario.inserir(_usuario); } var usuarioCadastrado = await regraUsuario.pegar(_usuario.Id); regraUsuario.gravarAtual(usuarioCadastrado); UserDialogs.Instance.HideLoading(); if (usuarioCadastrado != null) { regraUsuario.gravarAtual(usuarioCadastrado); AoCompletar?.Invoke(this, _usuario); } else { string mensagem = string.Format("Nenhum usuário encontrado com o ID {0}.", _usuario.Id); await DisplayAlert("Aviso", mensagem, "Fechar"); } } catch (Exception erro) { UserDialogs.Instance.HideLoading(); await UserDialogs.Instance.AlertAsync(erro.Message, "Erro", "Entendi"); } }; }