//Função de apertar tecla no grid private void gridSapato_PreviewKeyDown(object sender, KeyEventArgs e) { //Verifica se foi apertado delete if (e.Key == Key.Delete) { //Menssagem de confirmação if (MessageBox.Show("Deseja apagar o sapato " + SapatoSelecionado.Nome + "?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { //Habilita deletar da grid gridSapato.CanUserDeleteRows = true; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Busca o sapato no contexto pelo ID Sapato ToDelete = ctx.sapatos.Find(SapatoSelecionado.ID); //Marca como deleted ctx.Entry(ToDelete).State = System.Data.Entity.EntityState.Deleted; //Salva as alterações ctx.SaveChanges(); } else { //Desabilita o usuário deletar linhas gridSapato.CanUserDeleteRows = false; } } }
//Ação de apertar tecla no grid private void dataGridVenda_PreviewKeyDown(object sender, KeyEventArgs e) { //Verifica se foi apertado o delete if (e.Key == Key.Delete) { //Menssagem de confirmação if (MessageBox.Show("Deseja apagar a venda de " + VendaSelecionada.Quantidade + " itens do tipo " + VendaSelecionada.Modelo + "?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { //Habilita deletar as linhas dataGridVenda.CanUserDeleteRows = true; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Busca o dado no contexto pelo ID Venda ToDelete = ctx.vendas.Find(VendaSelecionada.ID); //Marca como deletado ctx.Entry(ToDelete).State = System.Data.Entity.EntityState.Deleted; //Salva alterações ctx.SaveChanges(); } else { //Impede de deletar os dados do grid dataGridVenda.CanUserDeleteRows = false; } } }
//Ação de clicar no botão salvar private void SaveButton_Click(object sender, RoutedEventArgs e) { //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Verifica se todos os campos estão preenchidos if (TamanhoTemp == null || TamanhoTemp.Tamanho == null) { MessageBox.Show("Preencha todos os campos", "Aviso", MessageBoxButton.OK); } else { //Verifica se o sapato é nulo if (SapatoSelecionado != null && SapatoSelecionado.ID > 0) { //Busca no banco um tamanho igual ao informado e que pertença ao sapato informado var tamanho = ctx.tamanhosSapatos.Where(t => t.SapatoId == SapatoSelecionado.ID).Where(t => t.Tamanho == TamanhoTemp.Tamanho).Select(t => t).ToList(); //Verifica se retornou resultados if (tamanho.Count() == 0) { //Instancia novo tamanho de sapato TamanhoSelecionado = new TamanhoSapato(); //Atribui valores TamanhoSelecionado.SapatoId = SapatoSelecionado.ID; TamanhoSelecionado.Tamanho = TamanhoTemp.Tamanho; TamanhoSelecionado.Quantidade = QuantidadeInfo; TamanhoSelecionado.Sapato = SapatoSelecionado; //Adciona ao contexto ctx.Entry(SapatoSelecionado).State = System.Data.Entity.EntityState.Unchanged; ctx.tamanhosSapatos.Add(TamanhoSelecionado); } else { //Busca no contexto um tamanho pelo ID TamanhoSapato ToSave = ctx.tamanhosSapatos.Find(tamanho[0].ID); //Altera a quantidade ToSave.Quantidade = ToSave.Quantidade + QuantidadeInfo; } //Salva alterações ctx.SaveChanges(); //Instancia nova janela de sapatos WindowSapato window = new WindowSapato(); //Menssagem de sucesso MessageBox.Show("Tamanho cadastrado com sucesso", "Sucesso", MessageBoxButton.OK); //Mostra a janela de sapatos window.Show(); //Fecha essa janela this.Close(); } } }
//Ação de apertar tecla no grid private void GridPessoaJuridica_PreviewKeyDown(object sender, KeyEventArgs e) { //Verifica se é a tecla delete if (e.Key == Key.Delete) { //Menssagem de confirmação if (MessageBox.Show("Deseja apagar a pessoa " + PessoaJuridicaSelecionada.Nome + "?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { //Habilita deletar linhas gridPessoaJuridica.CanUserDeleteRows = true; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Busca a pessoa no contexto pelo ID PessoaJuridica ToDelete = ctx.pessoasJuridicas.Find(PessoaJuridicaSelecionada.ID); //Marca como deletada ctx.Entry(ToDelete).State = System.Data.Entity.EntityState.Deleted; //Salva alterações ctx.SaveChanges(); } else { //Impede o usuário de deletar linhas gridPessoaJuridica.CanUserDeleteRows = false; } } }
//Ação ao apertar tecla no grid private void GridPessoaFisica_KeyDown(object sender, KeyEventArgs e) { //Verifica se foi pressionado o delete if (e.Key == Key.Delete) { //Menssagem de confirmação if (MessageBox.Show("Deseja apagar a pessoa " + PessoaFisicaSelecionada.Nome + "?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { //Habilita deletar linhas gridPessoaFisica.CanUserDeleteRows = true; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Instancia uma variavel vinda do contexto, procurando pelo ID PessoaFisica ToDelete = ctx.pessoasFisicas.Find(PessoaFisicaSelecionada.ID); //Marca o dado como deletado ctx.Entry(ToDelete).State = System.Data.Entity.EntityState.Deleted; //Executa alterações ctx.SaveChanges(); } else { //Impossibilita o usuário de deletar as linhas gridPessoaFisica.CanUserDeleteRows = false; } } }
//Construtor public WindowTamanhoSapato() { InitializeComponent(); this.DataContext = this; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); }
//Construtor public WindowVenda() { InitializeComponent(); this.DataContext = this; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Pega lista de pessoas fisicas this.PessoasFisicas = ctx.pessoasFisicas.ToList(); //Pega lista de pessoas juridicas this.PessoasJuridicas = ctx.pessoasJuridicas.ToList(); //Pega lista de sapatos this.Sapatos = ctx.sapatos.ToList(); //Percorre a lista de pessoas fisicas foreach (PessoaFisica pessoa in PessoasFisicas) { //Instancia nova pessoa PessoaToTransfer = new Pessoa(); //Atribui dados PessoaToTransfer.ID = pessoa.ID; PessoaToTransfer.Nome = pessoa.Nome; //Adciona a lista de pessoas Pessoas.Add(PessoaToTransfer); } //Percorre a lista de pessoas juridicas foreach (PessoaJuridica pessoa in PessoasJuridicas) { //Instancia nova pessoa PessoaToTransfer = new Pessoa(); //Atribui dados PessoaToTransfer.ID = pessoa.ID; PessoaToTransfer.Nome = pessoa.Nome; //Adciona a lista de pessoas Pessoas.Add(PessoaToTransfer); } //Percorre a lista de sapatos foreach (Sapato sapato in Sapatos) { //Instancia uma nova lista sapato.Tamanhos = new List <TamanhoSapato>(); //Adciona os tamanhos pertencentes a esse sapato a lista sapato.Tamanhos = ctx.tamanhosSapatos.Where(t => t.SapatoId == sapato.ID).Select(t => t).ToList(); } }
//Construtor public WindowPessoaJuridica() { InitializeComponent(); this.DataContext = this; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Pega uma lista de pessoas juridicas this.PessoasJuridicas = ctx.pessoasJuridicas.ToList(); }
//Construtor public WindowPessoaFisica() { InitializeComponent(); //Seta a data de nascimento atual this.PessoaFisicaSelecionada.DataNascimento = DateTime.Now; this.DataContext = this; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Pega lista de Pessoas Fisicas this.PessoasFisicas = ctx.pessoasFisicas.ToList(); }
private void exportarVendaPorPJ_Click(object sender, RoutedEventArgs e) { //Verifica se tem algum sapato delecionado if (PessoaJuridicaSelecionada.ID == 0) { //Menssagem de aviso MessageBox.Show("Selecione uma pessoa para gerar o relatório", "Aviso", MessageBoxButton.OK); } else { //Instancia a classe de exportação e o contexto DataExporter exportador = new DataExporter(); ModelSapatos ctx = new ModelSapatos(); //Instancia um explorador de arquivos Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog(); //Filtro do dialogo dlg.Filter = "Excel (.xlsx)|*.xlsx"; //Define atributos para o arquivo dlg.FileName = "Relatório de vendas do cliente " + PessoaJuridicaSelecionada.Nome; // Nome padrão dlg.DefaultExt = ".xlsx"; // Extensão do arquivo //Pega o resultado, se o usuário apertou cancel ou deu continuidade Nullable <bool> result = dlg.ShowDialog(); //Se o usuário selecionou um local ele execulta o metodo if (result == true) { //Busca lista de vendas var vendas = ctx.vendas.Where(t => t.pessoaId == PessoaJuridicaSelecionada.ID).Select(t => t).ToList(); //Chama o metodo para gerar a lista if (exportador.CriarPlanilhaVendaPorPJ(vendas, PessoaJuridicaSelecionada, dlg.FileName) == true) { //Mostra mensagem MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK); } else { //Mostra mensagem MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK); } } } }
//Construtor public WindowEstoque() { InitializeComponent(); this.DataContext = this; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Recee uma lista de sapatos this.Sapatos = ctx.sapatos.ToList(); //Percorre a lista de sapatos foreach (Sapato sapato in Sapatos) { //Pega todos os tamanhos de sapatos relacionados a esse sapato sapato.Tamanhos = ctx.tamanhosSapatos.Where(t => t.SapatoId == sapato.ID).Select(t => t).ToList(); QuantidadeTotal = 0; //Verifica se tem tamanhos cadastrados if (sapato.Tamanhos != null) { //Percorre essa lista de tamanhos foreach (TamanhoSapato tam in sapato.Tamanhos) { //Soma a quantidade total QuantidadeTotal = QuantidadeTotal + tam.Quantidade; } } //Instancia a variavel deestoque this.estoque = new Estoque(); //Seta valores this.estoque.Modelo = sapato.Nome; this.estoque.Cadarco = sapato.Cadarco; this.estoque.Material = sapato.Material; this.estoque.Cor = sapato.Cor; this.estoque.Preco = sapato.Preco; this.estoque.QuantidadeTotal = QuantidadeTotal; //Adciona a lista this.EstoqueCompleto.Add(this.estoque); } }
//Ação do botão de salvar private void SaveButton_Click(object sender, RoutedEventArgs e) { //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Verifica se esta criando ou editando if (ModoCriar) { //Adciona a pessoa preenchida ctx.pessoasJuridicas.Add(PessoaJuridicaSelecionada); //Salva alterações ctx.SaveChanges(); //Menssagem de sucesso MessageBox.Show("Pessoa adcionada com sucesso", "Sucesso", MessageBoxButton.OK); //Fecha a janela this.Close(); } else { //Verifica se a pessoa é nula if (PessoaJuridicaSelecionada != null && PessoaJuridicaSelecionada.ID > 0) { //Pega a pessoa do contexto pelo ID PessoaJuridica ToSave = ctx.pessoasJuridicas.Find(PessoaJuridicaSelecionada.ID); //Atribui valores ToSave.Nome = PessoaJuridicaSelecionada.Nome; ToSave.RazaoSocial = PessoaJuridicaSelecionada.RazaoSocial; ToSave.CNPJ = PessoaJuridicaSelecionada.CNPJ; ToSave.Endereco = PessoaJuridicaSelecionada.Endereco; //Salva as alterações ctx.SaveChanges(); //Menssagem de sucesso MessageBox.Show("Dados editados com sucesso", "Sucesso", MessageBoxButton.OK); //Fecha a janela this.Close(); } } }
//Ação do botão de salvar private void SaveButton_Click(object sender, RoutedEventArgs e) { //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Busca na lista de tamanhos do sapato, o tamanho selecionado var tamanhoToSelect = VendaSelecionada.sapato.Tamanhos.Where(t => t == TamanhoSelecionado).Select(t => t).ToList(); //Verifica se tem a quantidade em estoque if (tamanhoToSelect[0].Quantidade < VendaSelecionada.Quantidade) { //Menssagem de erro MessageBox.Show("Quantidade insuficiente desse item, temos " + tamanhoToSelect[0].Quantidade + " no estoque!", "Aviso", MessageBoxButton.OK); } else { //Seta valores VendaSelecionada.sapatoId = VendaSelecionada.sapato.ID; VendaSelecionada.Modelo = VendaSelecionada.sapato.Nome; VendaSelecionada.PrecoUnitario = VendaSelecionada.sapato.Preco; VendaSelecionada.PrecoFinal = VendaSelecionada.sapato.Preco * VendaSelecionada.Quantidade; VendaSelecionada.sapato = null; VendaSelecionada.pessoaId = VendaSelecionada.cliente.ID; VendaSelecionada.cliente = null; VendaSelecionada.Tamanho = tamanhoToSelect[0].Tamanho; //Instancia tamanho selecinado buscando ele do banco TamanhoSapato ToEdit = ctx.tamanhosSapatos.Find(tamanhoToSelect[0].ID); //Retira a quantidade vendida ToEdit.Quantidade = ToEdit.Quantidade - VendaSelecionada.Quantidade; //Adciona a venda a lista ctx.vendas.Add(VendaSelecionada); //Salva alterações ctx.SaveChanges(); //Menssagem de erro MessageBox.Show("Venda realizada com sucesso", "Sucesso", MessageBoxButton.OK); //Fecha a janela this.Close(); } }
//Construtor public WindowVendaList() { InitializeComponent(); this.DataContext = this; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Pega uma lista de vendas this.Vendas = ctx.vendas.ToList(); foreach (Venda venda in Vendas) { venda.cliente = ctx.pessoas.Find(venda.pessoaId); venda.sapato = ctx.sapatos.Find(venda.sapatoId); } }
//Click do botão de salvar private void SaveButton_Click(object sender, RoutedEventArgs e) { //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Verifica se esta criando ou editando if (ModoCriar) { //Adciona a lista ctx.pessoasFisicas.Add(PessoaFisicaSelecionada); //Salva alterações ctx.SaveChanges(); //Mostra mensagem MessageBox.Show("Pessoa adcionada com sucesso", "Sucesso", MessageBoxButton.OK); //Fecha a tela this.Close(); } else { //Verifica se esta nulo o objeto if (PessoaFisicaSelecionada != null && PessoaFisicaSelecionada.ID > 0) { //Instancia uma variavel vinda do contexto, procurando pelo ID PessoaFisica ToSave = ctx.pessoasFisicas.Find(PessoaFisicaSelecionada.ID); //Seta valores ToSave.Nome = PessoaFisicaSelecionada.Nome; ToSave.CPF = PessoaFisicaSelecionada.CPF; ToSave.DataNascimento = PessoaFisicaSelecionada.DataNascimento; //Salva alterações ctx.SaveChanges(); //Mostra menssagem MessageBox.Show("Dados editados com sucesso", "Sucesso", MessageBoxButton.OK); //Fecha janela this.Close(); } } }
//Construtor public WindowSapato() { InitializeComponent(); this.DataContext = this; //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Pega uma lista dos sapatos this.Sapatos = ctx.sapatos.ToList(); //Percorre a lista de sapatos foreach (Sapato sapato in Sapatos) { //Instancia uma nova lista sapato.Tamanhos = new List <TamanhoSapato>(); //Adciona os tamanhos pertencentes a esse sapato a lista sapato.Tamanhos = ctx.tamanhosSapatos.Where(t => t.SapatoId == sapato.ID).Select(t => t).ToList(); } }
//Ação do botão de salvar private void SaveButton_Click(object sender, RoutedEventArgs e) { //Variavel de contexto ModelSapatos ctx = new ModelSapatos(); //Verifica se esta criando ou editando if (ModoCriar) { //Codifica itmapImage em Array de binario JpegBitmapEncoder encoder = new JpegBitmapEncoder(); encoder.Frames.Add(BitmapFrame.Create(imagemSelecionada)); using (MemoryStream ms = new MemoryStream()) { encoder.Save(ms); SapatoSelecionado.Imagem = ms.ToArray(); } //Adciona o sapato a lista ctx.sapatos.Add(SapatoSelecionado); //Salva alterações ctx.SaveChanges(); //Menssagem MessageBox.Show("Sapato adcionado com sucesso", "Sucesso", MessageBoxButton.OK); //Fecha a tela this.Close(); } else { //Verifica se o sapato esta nulo if (SapatoSelecionado != null && SapatoSelecionado.ID > 0) { //Busca o sapato no contexto pelo id Sapato ToSave = ctx.sapatos.Find(SapatoSelecionado.ID); //Atribui valores ToSave.Nome = SapatoSelecionado.Nome; ToSave.Preco = SapatoSelecionado.Preco; ToSave.Material = SapatoSelecionado.Material; if (imagemSelecionada == null) { ToSave.Imagem = SapatoSelecionado.Imagem; } else { //Codifica itmapImage em Array de binario JpegBitmapEncoder encoder = new JpegBitmapEncoder(); encoder.Frames.Add(BitmapFrame.Create(imagemSelecionada)); using (MemoryStream ms = new MemoryStream()) { encoder.Save(ms); SapatoSelecionado.Imagem = ms.ToArray(); } } ToSave.Imagem = SapatoSelecionado.Imagem; ToSave.Cadarco = SapatoSelecionado.Cadarco; ToSave.Cor = SapatoSelecionado.Cor; //Salva alterações ctx.SaveChanges(); //Menssagem MessageBox.Show("Dados editados com sucesso", "Sucesso", MessageBoxButton.OK); //Fecha tela this.Close(); } } }
//Função de exportar dados private void Exportar_Click(object sender, RoutedEventArgs e) { //Instancia a classe de exportação e o contexto DataExporter exportador = new DataExporter(); ModelSapatos ctx = new ModelSapatos(); //Instancia um explorador de arquivos Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog(); //Filtro do dialogo dlg.Filter = "Excel (.xlsx)|*.xlsx"; //Verifica qual botão foi clicado para pedir a exportação if (sender == exportarPF) { //Define atributos para o arquivo dlg.FileName = "Relatório de pessoas físicas"; // Nome padrão dlg.DefaultExt = ".xlsx"; // Extensão do arquivo //Pega o resultado, se o usuário apertou cancel ou deu continuidade Nullable <bool> result = dlg.ShowDialog(); //Se o usuário selecionou um local ele execulta o metodo if (result == true) { //Chama o metodo para gerar a lista if (exportador.CriarPlanilhaPF(ctx.pessoasFisicas.ToList(), dlg.FileName) == true) { //Mostra mensagem MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK); } else { //Mostra mensagem MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK); } } } else if (sender == exportarPJ) { //Define atributos para o arquivo dlg.FileName = "Relatório de pessoas jurídicas"; // Nome padrão dlg.DefaultExt = ".xlsx"; // Extensão do arquivo //Pega o resultado, se o usuário apertou cancel ou deu continuidade Nullable <bool> result = dlg.ShowDialog(); //Se o usuário selecionou um local ele execulta o metodo if (result == true) { //Chama o metodo para gerar a lista if (exportador.CriarPlanilhaPJ(ctx.pessoasJuridicas.ToList(), dlg.FileName) == true) { //Mostra mensagem MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK); } else { //Mostra mensagem MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK); } } } else if (sender == exportarSapato) { //Define atributos para o arquivo dlg.FileName = "Relatório de sapatos"; // Nome padrão dlg.DefaultExt = ".xlsx"; // Extensão do arquivo //Pega o resultado, se o usuário apertou cancel ou deu continuidade Nullable <bool> result = dlg.ShowDialog(); //Se o usuário selecionou um local ele execulta o metodo if (result == true) { //Chama o metodo para gerar a lista if (exportador.CriarPlanilhaSapato(ctx.sapatos.ToList(), dlg.FileName) == true) { //Mostra mensagem MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK); } else { //Mostra mensagem MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK); } } } else if (sender == exportarEstoque) { //Define atributos para o arquivo dlg.FileName = "Relatório de estoque"; // Nome padrão dlg.DefaultExt = ".xlsx"; // Extensão do arquivo //Pega o resultado, se o usuário apertou cancel ou deu continuidade Nullable <bool> result = dlg.ShowDialog(); //Se o usuário selecionou um local ele execulta o metodo if (result == true) { //Chama o metodo para gerar a lista if (exportador.CriarPlanilhaEstoque(ctx.sapatos.ToList(), dlg.FileName) == true) { //Mostra mensagem MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK); } else { //Mostra mensagem MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK); } } } else if (sender == exportarVenda) { //Define atributos para o arquivo dlg.FileName = "Relatório de venda"; // Nome padrão dlg.DefaultExt = ".xlsx"; // Extensão do arquivo //Pega o resultado, se o usuário apertou cancel ou deu continuidade Nullable <bool> result = dlg.ShowDialog(); //Se o usuário selecionou um local ele execulta o metodo if (result == true) { //Chama o metodo para gerar a lista if (exportador.CriarPlanilhaVendas(ctx.vendas.ToList(), dlg.FileName) == true) { //Mostra mensagem MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK); } else { //Mostra mensagem MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK); } } } }