Пример #1
0
        /// <summary>
        /// Realiza as confirmações para salvar um cliente em banco e chama o metodo responsavel para salvar
        /// </summary>
        /// <param name="messageBoxOff">Define se as messagebox devem ser exibidas</param>
        public void SalvarComando(bool messageBoxOff = false)
        {
            ModeloViewModel modeloViewModel = new ModeloViewModel();

            foreach (Venda venda in ClienteSelecionado.Compras)
            {
                venda.Modelo = null;
            }
            if (ClienteSelecionado.GetType() == typeof(PessoaFisica))
            {
                PessoaFisica pessoaFisica = new PessoaFisica();
                pessoaFisica = (PessoaFisica)ClienteSelecionado;
                if (pessoaFisica.Cpf == null)
                {
                    pessoaFisica.Cpf = CpfCnpjBusca;
                }
                if (!pessoaFisica.HasErrors)
                {
                    var compras = from c in pessoaFisica.Compras
                                  where c.IdVenda == 0
                                  select c;
                    List <Venda> listacompras = compras.ToList();
                    if (!messageBoxOff)
                    {
                        var id = pessoaContexto.Salvar(pessoaFisica);
                        if (id > 0)
                        {
                            MessageBox.Show("O cliente ID: " + id + " foi salvo com sucesso.",
                                            ("Cliente salvo!"), MessageBoxButton.OK, MessageBoxImage.Asterisk);
                            if (listacompras.Count > 0)
                            {
                                MessageBox.Show("Foram registradas: " + listacompras.Count + " vendas.",
                                                ("Vendas registradas!"), MessageBoxButton.OK, MessageBoxImage.Asterisk);
                            }
                        }
                        else
                        {
                            MessageBox.Show("Ocorreu um erro ao tentar salvar o cliente.",
                                            "Não foi possivel salvar o cliente!", MessageBoxButton.OK, MessageBoxImage.Error);
                        }
                    }
                    else
                    {
                        pessoaContexto.Salvar(pessoaFisica);
                    }
                }
                else
                {
                    MessageBox.Show("Verifique se todos os campos foram preenchidos corretamente.",
                                    "Não foi possivel salvar o cliente!", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            else
            {
                PessoaJuridica pessoaJuridica = new PessoaJuridica();
                pessoaJuridica = (PessoaJuridica)ClienteSelecionado;
                if (pessoaJuridica.Cnpj == null)
                {
                    pessoaJuridica.Cnpj = CpfCnpjBusca;
                }
                if (!pessoaJuridica.HasErrors)
                {
                    var compras = from c in pessoaJuridica.Compras
                                  where c.IdVenda == 0
                                  select c;
                    List <Venda> listacompras = compras.ToList();
                    if (!messageBoxOff)
                    {
                        var id = pessoaContexto.Salvar(pessoaJuridica);
                        if (id > 0)
                        {
                            MessageBox.Show("O cliente ID: " + id + " foi salvo com sucesso.",
                                            ("Cliente salvo!"), MessageBoxButton.OK, MessageBoxImage.Asterisk);
                            if (listacompras.Count > 0)
                            {
                                MessageBox.Show("Foram registradas: " + listacompras.Count + " vendas.",
                                                ("Vendas registradas!"), MessageBoxButton.OK, MessageBoxImage.Asterisk);
                            }
                        }
                        else
                        {
                            MessageBox.Show("Ocorreu um erro ao tentar salvar o cliente.",
                                            "Não foi possivel salvar o cliente!", MessageBoxButton.OK, MessageBoxImage.Error);
                        }
                    }
                    else
                    {
                        pessoaContexto.Salvar(pessoaJuridica);
                    }
                }
                else
                {
                    MessageBox.Show("Verifique se todos os campos foram preenchidos corretamente.",
                                    "Não foi possivel salvar o cliente!", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }