private void BtNovoItem_Click(object sender, EventArgs e) { LimpaCamposItem(true); buscaItem.Focus(); itemSelecionado = null; btInserirItem.Text = "Inserir"; }
private void DgvItens_CurrentCellChanged(object sender, EventArgs e) { if (dgvItens.SelectedRows.Count > 0) { int selectedRowIndex = dgvItens.SelectedCells[0].RowIndex; DataGridViewRow selectedRow = dgvItens.Rows[selectedRowIndex]; itemSelecionado = itens.Find(i => i.Item.ItemID == Convert.ToInt32(selectedRow.Cells[0].Value)); btInserirItem.Text = "Alterar"; PreencheCamposItem(itemSelecionado); btExcluirItem.Enabled = true; } }
private void ExcluirItem() { if (itemSelecionado != null) { itens.RemoveAll(i => i.Item.ItemID == itemSelecionado.Item.ItemID); dgvItens.Rows.Clear(); dgvItens.Refresh(); LimpaCamposItem(false); PreencheGridItens(); CalculaTotalDocumento(); itemSelecionado = null; btExcluirItem.Enabled = false; Editando(true); } }
private void LimpaCamposItem(bool focus) { buscaItem.Limpa(); dbQuantidade.Valor = 0.00m; dbValorUnitItem.Valor = 0.00m; dbValorTotItem.Valor = 0.00m; dbDescontoItemPorc.Valor = 0.00m; dbDescontoItem.Valor = 0.00m; itemSelecionado = null; btExcluirItem.Enabled = false; btInserirItem.Text = "Inserir"; if (focus) { buscaItem.Focus(); } }
public NotaFiscalPropria GerarNotaFiscal(Orcamento orcamento) { NotaFiscalPropria notafiscal = new NotaFiscalPropria(); notafiscal.NotaFiscalPropriaID = notaFiscalDAO.BuscaProxCodigoDisponivel(); notafiscal.Pessoa = orcamento.Pessoa; notafiscal.DataEmissao = DateTime.Now; notafiscal.DataEntradaSaida = DateTime.Now; notafiscal.ValorTotalItens = orcamento.ValorTotalItens; notafiscal.ValorTotalDocumento = orcamento.ValorTotalOrcamento; notafiscal.DescontoTotalItens = orcamento.DescontoTotalItens; notafiscal.DescontoDocumento = orcamento.DescontoOrcamento; foreach (OrcamentoItem oi in orcamento.OrcamentoItem) { NotaFiscalPropriaItem nfi = new NotaFiscalPropriaItem(); nfi.Item = oi.Item; nfi.NotaFiscal = notafiscal; nfi.Quantidade = oi.Quantidade; nfi.ValorUnitario = oi.ValorUnitario; nfi.ValorTotal = oi.ValorTotal; nfi.DescontoPorc = oi.DescontoPorc; nfi.Desconto = oi.Desconto; notafiscal.NotaFiscalPropriaItem.Add(nfi); } int resultado = notaFiscalDAO.SalvaOuAtualiza(notafiscal); if (resultado == 1) { notaFiscalDAO.MovimentaEstoque(notafiscal); } if (resultado == 2) { notaFiscalDAO.LimpaRegistrosEstoque(notafiscal); notaFiscalDAO.MovimentaEstoque(notafiscal); } if (resultado > 0) { resultado = orcamentoDAO.VincularNotaAoOrcamento(orcamento, notafiscal); } return(resultado > 0 ? notafiscal : null); }
private void InserirItem() { if (buscaItem.item == null) { MessageBox.Show("Item não encontrado no banco de dados", "Item não encontrado", MessageBoxButtons.OK, MessageBoxIcon.Warning); buscaItem.Focus(); return; } NotaFiscalPropriaItem item = null; if (itemSelecionado == null) { item = new NotaFiscalPropriaItem(); item.Item = buscaItem.item; item.Quantidade = dbQuantidade.Valor; item.ValorUnitario = dbValorUnitItem.Valor; item.ValorTotal = dbValorTotItem.Valor; item.DescontoPorc = dbDescontoItemPorc.Valor; item.Desconto = dbDescontoItem.Valor; itens.Add(item); btNovoItem.PerformClick(); } else { item = itemSelecionado; item.Quantidade = dbQuantidade.Valor; item.ValorUnitario = dbValorUnitItem.Valor; item.ValorTotal = dbValorTotItem.Valor; item.DescontoPorc = dbDescontoItemPorc.Valor; item.Desconto = dbDescontoItem.Valor; itens[itens.FindIndex(i => i.Item.ItemID == item.Item.ItemID)] = item; } CalculaTotalDocumento(); btExcluirItem.Enabled = false; LimpaCamposItem(true); PreencheGridItens(); }
private void PreencheCamposItem(NotaFiscalPropriaItem item) { if (item != null) { ignoracheckevent = true; buscaItem.PreencheCampos(item.Item); dbValorUnitItem.Valor = item.Item.ValorUnitario; dbQuantidade.Valor = item.Quantidade; dbValorTotItem.Valor = item.ValorTotal; dbDescontoItemPorc.Valor = item.DescontoPorc; dbDescontoItem.Valor = item.Desconto; ignoracheckevent = false; } else { MessageBox.Show("Item não encontrado no banco de dados", "Item não encontrado", MessageBoxButtons.OK, MessageBoxIcon.Warning); buscaItem.Focus(); } }
private void BuscaItem() { if (buscaItem.item == null) { return; } var item = new NotaFiscalPropriaItem(); var dr = dgvItens.Rows.Cast <DataGridViewRow>().Where(r => (int)r.Cells[0].Value == buscaItem.item.ItemID).FirstOrDefault(); if (dr == null) { item.Item = buscaItem.item; btInserirItem.Text = "Inserir"; btExcluirItem.Enabled = false; } else { item = itens.Find(i => i.Item.ItemID == buscaItem.item.ItemID); btInserirItem.Text = "Alterar"; btExcluirItem.Enabled = true; } PreencheCamposItem(item); }
//public void LimpaRegistrosCaixaSaida(NotaFiscalPropria nota) //{ // using (MySQLConn sql = new MySQLConn(Configuracao.Conecta)) // { // sql.addParam("@documento", nota.NotaFiscalPropriaID.ToString()); // sql.Query = @"DELETE FROM caixa_lancamento_sai // WHERE idnotafiscal = @documento"; // sql.deleteQuery(); // sql.Query = @"DELETE FROM caixa_lancamento // WHERE documento = @documento"; // sql.deleteQuery(); // } //} //public int MovimentaCaixaEntradaDeDinheiro(NotaFiscalPropria nota) //{ // int retorno = 0; // using (MySQLConn sql = new MySQLConn(Configuracao.Conecta)) // { // sql.beginTransaction(); // sql.Query = @"INSERT INTO caixa_lancamento // (data, valor, tipomovimento, tipodocumento, lancamento, documento, idcaixa, idcaixa_plano_contas) // VALUES // (@data, @valor, @tipomovimento, @tipodocumento, @lancamento, @documento, @idcaixa, @idcaixa_plano_contas)"; // sql.addParam("@data", nota.DataEntradaSaida); // sql.addParam("@valor", nota.ValorTotalDocumento); // sql.addParam("@tipomovimento", 0); // sql.addParam("@tipodocumento", 2); // sql.addParam("@lancamento", 1); // sql.addParam("@documento", nota.NotaFiscalPropriaID); // //sql.addParam("@idcaixa", nota.Caixa.CaixaID); // //sql.addParam("@idcaixa_plano_contas", nota.PlanoDeConta.PlanoContaID); // retorno = sql.insertQuery(); // if (retorno > 0) // { // sql.Query = "SELECT LAST_INSERT_ID() AS idcaixalancamento;"; // var data = sql.selectQueryForSingleRecord(); // int idcaixalancamento = Convert.ToInt32(data["idcaixalancamento"]); // sql.Query = @"DELETE FROM caixa_lancamento_sai // WHERE idnotafiscal = @idnotafiscal // AND idcaixa_lancamento = @idcaixa_lancamento"; // sql.clearParams(); // sql.addParam("@idcaixa_lancamento", idcaixalancamento); // sql.addParam("@idnotafiscal", nota.NotaFiscalPropriaID); // sql.deleteQuery(); // sql.Query = @"INSERT INTO caixa_lancamento_sai (idcaixa_lancamento, idnotafiscal) // VALUES // (@idcaixa_lancamento, @idnotafiscal)"; // sql.clearParams(); // sql.addParam("@idcaixa_lancamento", idcaixalancamento); // sql.addParam("@idnotafiscal", nota.NotaFiscalPropriaID); // sql.insertQuery(); // } // sql.Commit(); // } // return retorno; //} private NotaFiscalPropria LeDadosReader(List <Dictionary <string, object> > data) { if (data.Count == 0) { return(null); } var notaFiscalItens = new List <NotaFiscalPropriaItem>(); var notaFiscalPropria = new NotaFiscalPropria(); notaFiscalPropria.NotaFiscalPropriaID = Convert.ToInt32(data[0]["idnotafiscal"]); notaFiscalPropria.Descricao = (string)data[0]["descricao"]; notaFiscalPropria.DataEmissao = (DateTime)data[0]["data_emissao"]; notaFiscalPropria.DataEntradaSaida = (DateTime)data[0]["data_entradasaida"]; notaFiscalPropria.ValorTotalItens = (decimal)data[0]["valor_total_itens"]; notaFiscalPropria.ValorTotalDocumento = (decimal)data[0]["valor_documento"]; notaFiscalPropria.DescontoTotalItens = (decimal)data[0]["desconto_total_itens"]; notaFiscalPropria.DescontoDocumento = (decimal)data[0]["desconto_documento"]; var contareceber = new ContaReceber(); contareceber.ContaReceberID = Convert.ToInt32(data[0]["idconta_receber"]); notaFiscalPropria.ContaReceber = contareceber; var pessoa = new Pessoa(); pessoa.PessoaID = Convert.ToInt32(data[0]["idpessoa"]); var vendedor = new Pessoa(); vendedor.PessoaID = Convert.ToInt32(data[0]["idpessoa_vendedor"]); notaFiscalPropria.Pessoa = pessoa; notaFiscalPropria.Vendedor = vendedor; foreach (var d in data) { var item = new Item(); item.ItemID = Convert.ToInt32(d["iditem"]); item.CodigoInterno = (string)d["codigointerno"]; item.Descricao = (string)d["descitem"]; item.DescCompra = (string)d["denominacaocompra"]; item.TipoItem = (string)d["tipo"]; item.Referencia = (string)d["referencia"]; item.ValorEntrada = (decimal)d["valorentrada"]; item.ValorUnitario = (decimal)d["valorsaida"]; item.Estoquenecessario = (decimal)d["estoquenecessario"]; item.Quantidade = (decimal)d["quantidade"]; item.Custo = (decimal)d["custo"]; var nfi = new NotaFiscalPropriaItem(); nfi.Quantidade = (decimal)d["quantidadenfhi"]; nfi.ValorUnitario = (decimal)d["valor_unitario"]; nfi.ValorTotal = (decimal)d["valor_total"]; nfi.DescontoPorc = (decimal)d["desconto_porc"]; nfi.Desconto = (decimal)d["desconto"]; nfi.Item = item; notaFiscalItens.Add(nfi); } notaFiscalPropria.NotaFiscalPropriaItem = notaFiscalItens; return(notaFiscalPropria); }
public IEnumerable <NotaFiscalPropria> BuscaParaRelatorio(fmRltNotasSaida.Filtros f) { var notaFiscalProprias = new List <NotaFiscalPropria>(); var wherePessoa = f.usaFiltroClientes ? " AND nf.idpessoa BETWEEN @idpessoa_inicial AND @idpessoa_final" : ""; var whereCidade = f.usaFiltroCidades ? " AND p.idcidade BETWEEN @idcidade_inicial AND @idcidade_final" : ""; var whereDataEmissao = f.usaFiltroDataEmissao ? " AND nf.data_emissao BETWEEN @data_emissao_inicial AND @data_emissao_final" : ""; var whereDataSaida = f.usaFiltroDataSaida ? " AND nf.data_entradasaida BETWEEN @data_saida_inicial AND @data_saida_final" : ""; var whereValor = f.usaFiltroValor ? " AND nf.valor_documento BETWEEN @valor_inicial AND @valor_final" : ""; using (MySQLConn sql = new MySQLConn(Configuracao.Conecta)) { sql.Query = $@"SELECT nf.idnotafiscal AS nf_idnotafiscal, nf.data_emissao AS nf_data_emissao, nf.data_entradasaida AS nf_entradasaida, nf.tiponf AS nf_tiponf, nf.valor_total_itens AS nf_valor_total_itens, nf.valor_documento AS nf_valor_documento, nf.desconto_total_itens AS nf_desconto_total_itens, nf.desconto_documento AS nf_desconto_documento, p.idpessoa AS p_idpessoa, p.nome AS p_nome, p.fantasia AS p_fantasia, p.tipo_pessoa, p.atuacao, p.situacao, p.rua AS p_rua, p.numero AS p_numero, p.bairro AS p_bairro, p.complemento AS p_complemento, p.cpf AS p_cpf, p.cnpj AS p_cnpj, p.endereco AS p_endereco, p.telefone AS p_telefone, p.email AS p_email, p.cep AS p_cep c.idcidade AS c_idcidade, c.nome AS c_nome, sbp.idsubgrupopessoa AS sbp_idsubgrupopessoa, sbp.nome AS sbp_nome, gp.idgrupopessoa AS gp_idgrupopessoa, gp.nome AS gp_nome, nfhi.quantidade AS nfhi_quantidade, nfhi.valor_unitario AS nfhi_valorunitario, nfhi.valor_total AS nfhi_valortotal, nfhi.desconto_porc AS nfhi_descontoporc, nfhi.desconto AS nfhi_desconto, i.iditem AS i_iditem, i.descitem AS i_desc, i.denominacaocompra AS i_desccompra, i.tipo AS i_tipo, i.referencia AS i_referencia, i.valorentrada AS i_valorentrada, i.valorsaida AS i_valorsaida, i.estoquenecessario AS i_estoquenecessario, i.quantidade AS i_quantidade, uni.idunimedida AS uni_idunimedida, uni.sigla AS uni_sigla, uni.descricao AS uni_descricao, sbi.idsubgrupoitem AS sbi_idsubgrupoitem, sbi.codigo AS sbi_codigo, sbi.nome AS sbi_nome, gi.idgrupoitem AS gi_idgrupoitem, gi.nome AS gi_nome FROM notafiscal nf LEFT JOIN pessoa p ON nf.idpessoa = p.idpessoa LEFT JOIN cidade c ON p.idcidade = c.idcidade LEFT JOIN subgrupopessoa sbp ON sbp.idsubgrupopessoa = p.idsubgrupopessoa LEFT JOIN grupopessoa gp ON gp.idgrupopessoa = sbp.idgrupopessoa LEFT JOIN notafiscal_has_item nfhi ON nfhi.idnotafiscal = nf.idnotafiscal LEFT JOIN item i ON nfhi.iditem = i.iditem LEFT JOIN unimedida uni ON i.idunimedida = uni.idunimedida LEFT JOIN subgrupoitem sbi ON i.idsubgrupoitem = sbi.idsubgrupoitem LEFT JOIN grupoitem gi ON sbi.idgrupoitem = gi.idgrupoitem WHERE 1 = 1 {wherePessoa} {whereCidade} {whereDataEmissao} {whereDataSaida} {whereValor} ORDER BY nf.idnotafiscal"; if (f.usaFiltroClientes) { sql.addParam("@idpessoa_inicial", f.pessoaInicial.PessoaID); sql.addParam("@idpessoa_final", f.pessoaFinal.PessoaID); } if (f.usaFiltroCidades) { sql.addParam("@idcidade_inicial", f.cidadeInicial.CidadeID); sql.addParam("@idcidade_final", f.cidadeFinal.CidadeID); } if (f.usaFiltroDataEmissao) { sql.addParam("@data_emissao_inicial", f.dataEmissaoInicial); sql.addParam("@data_emissao_final", f.dataEmissaoFinal); } if (f.usaFiltroDataSaida) { sql.addParam("@data_saida_inicial", f.dataSaidaInicial); sql.addParam("@data_saida_final", f.dataSaidaFinal); } if (f.usaFiltroValor) { sql.addParam("@valor_inicial", f.valorInicial); sql.addParam("@valor_final", f.valorFinal); } var data = sql.selectQuery(); var i = 0; NotaFiscalPropria notaFiscalPropria = null; foreach (var d in data) { var grupoItem = new GrupoItem(); grupoItem.GrupoItemID = Convert.ToInt32(d["gi_idgrupoitem"]); grupoItem.Nome = (string)d["gi_nome"]; var subGrupoItem = new SubGrupoItem(); subGrupoItem.SubGrupoItemID = Convert.ToInt32(d["sbi_idsubgrupoitem"]); subGrupoItem.Nome = (string)d["sbi_nome"]; subGrupoItem.Codigo = Convert.ToInt32(d["sbi_codigo"]); subGrupoItem.GrupoItem = grupoItem; var uniMedida = new Unimedida(); uniMedida.UnimedidaID = Convert.ToInt32(d["uni_idunimedida"]); uniMedida.Sigla = (string)d["uni_sigla"]; uniMedida.Descricao = (string)d["uni_descricao"]; var item = new Item(); item.ItemID = Convert.ToInt32(d["i_iditem"]); item.Descricao = (string)d["i_desc"]; item.DescCompra = (string)d["i_desccompra"]; item.TipoItem = (string)d["i_tipo"]; item.Referencia = (string)d["i_referencia"]; item.ValorEntrada = (decimal)d["i_valorentrada"]; item.ValorUnitario = (decimal)d["i_valorsaida"]; item.Estoquenecessario = (decimal)d["i_estoquenecessario"]; item.Unimedida = uniMedida; item.SubGrupoItem = subGrupoItem; item.Quantidade = (decimal)d["i_quantidade"]; var nfi = new NotaFiscalPropriaItem(); nfi.NotaFiscal = notaFiscalPropria; nfi.Item = item; nfi.Quantidade = (decimal)d["nfhi_quantidade"]; nfi.ValorUnitario = (decimal)d["nfhi_valorunitario"]; nfi.ValorTotal = (decimal)d["nfhi_valortotal"]; nfi.DescontoPorc = (decimal)d["nfhi_descontoporc"]; nfi.Desconto = (decimal)d["nfhi_desconto"]; if (Convert.ToInt32(d["nf_idnotafiscal"]) != i) { notaFiscalProprias.Add(notaFiscalPropria); i = Convert.ToInt32(d["nf_idnotafiscal"]); var grupoPessoa = new GrupoPessoa(); grupoPessoa.GrupoPessoaID = Convert.ToInt32(d["gp_idgrupopessoa"]); grupoPessoa.Nome = (string)d["gp_nome"]; var subGrupoPessoa = new SubGrupoPessoa(); subGrupoPessoa.SubGrupoPessoaID = Convert.ToInt32(d["sbp_idsubgrupopessoa"]); subGrupoPessoa.Nome = (string)d["sbp_nome"]; subGrupoPessoa.GrupoPessoa = grupoPessoa; var cidade = new Cidade(); cidade.CidadeID = Convert.ToInt32(d["c_idcidade"]); cidade.Nome = (string)d["c_nome"]; var pessoa = new Pessoa(); pessoa.PessoaID = Convert.ToInt32(d["p_idpessoa"]); pessoa.Nome = (string)d["p_nome"]; pessoa.Fantasia = (string)d["p_fantasia"]; pessoa.TipoPessoa = (string)d["tipo_pessoa"]; pessoa.Atuacao = (string)d["atuacao"]; pessoa.Situacao = (string)d["situacao"]; pessoa.Rua = (string)d["p_rua"]; pessoa.Numero = (string)d["p_numero"]; pessoa.Bairro = (string)d["p_bairro"]; pessoa.Cep = (string)d["p_cep"]; pessoa.Complemento = (string)d["p_complemento"]; pessoa.Cidade = cidade; if (pessoa.TipoPessoa == "J") { pessoa.CpfCnpj = (string)d["p_cnpj"]; } else { pessoa.CpfCnpj = (string)d["p_cpf"]; } pessoa.Telefone = (string)d["p_endereco"]; pessoa.Email = (string)d["p_telefone"]; pessoa.SubGrupoPessoa = subGrupoPessoa; notaFiscalPropria = new NotaFiscalPropria(); notaFiscalPropria.NotaFiscalPropriaID = Convert.ToInt32(d["nf_idnotafiscal"]); notaFiscalPropria.DataEmissao = (DateTime)d["nf_data_emissao"]; notaFiscalPropria.DataEntradaSaida = (DateTime)d["nf_entradasaida"]; notaFiscalPropria.TipoNf = (string)d["nf_tiponf"]; notaFiscalPropria.ValorTotalItens = (decimal)d["nf_valor_total_itens"]; notaFiscalPropria.ValorTotalDocumento = (decimal)d["nf_valor_documento"]; notaFiscalPropria.DescontoTotalItens = (decimal)d["nf_desconto_total_itens"]; notaFiscalPropria.DescontoDocumento = (decimal)d["nf_desconto_documento"]; notaFiscalPropria.Pessoa = pessoa; } notaFiscalPropria.NotaFiscalPropriaItem.Add(nfi); } notaFiscalProprias.Add(notaFiscalPropria); } notaFiscalProprias.RemoveAt(0); return(notaFiscalProprias); }