public void TestAtribuicaoDireita() { const decimal valorEsperado = 10.00M; ValorUnitario valorUnitario = valorEsperado; Assert.Equal(valorEsperado, valorUnitario.Value); }
public bool Validar(out string Alertas) { StringBuilder msg = new StringBuilder(); if (string.IsNullOrEmpty(Nome.Trim())) { msg.Append("É necessário informar o nome do produto."); msg.AppendLine(); } else if (string.IsNullOrEmpty(ValorUnitario.ToString())) { msg.Append("É necessário informar o valor unitário."); msg.AppendLine(); } else if (string.IsNullOrEmpty(Quantidade.ToString())) { msg.Append("É necessário informar a quantidade."); msg.AppendLine(); } else if (Fabricante.ToString() == "Selecione") { msg.Append("É necessário informar o fabricante."); msg.AppendLine(); } else if (Distribuidora.ToString() == "Selecione") { msg.Append("É necessário informar a distribuidora."); msg.AppendLine(); } Alertas = msg.ToString(); return(msg.Length == 0); }
public void TestValorUnitarioValido() { ValorUnitario valorUnitario = new ValorUnitario(0.01M); bool estaValido = valorUnitario.Validar(); Assert.True(estaValido); }
public void TestValorUnitarioInvalido() { ValorUnitario valorUnitario = new ValorUnitario(0.00M); bool estaValido = valorUnitario.Validar(); Assert.False(estaValido); }
public void TestAtribuicaoEsquerda() { const decimal valorInicial = 10M; ValorUnitario valorUnitario = new ValorUnitario(valorInicial); decimal valorCast = valorUnitario; Assert.Equal(valorInicial, valorCast); }
public override string ToString() { return(Produto != null ? Produto.DescricaoProduto + " " + Produto.QuantidadeProduto.ToString("N3") + " x " + Produto.PrecoVenda.ToString("N2") + " = " + Produto.CalculaTotalProduto(Produto.PrecoVenda, Produto.QuantidadeProduto).ToString("N2") : IdProduto + "=>" + Quantidade.ToString("N3") + " x " + ValorUnitario.ToString("N2") + " = " + TotalItem.ToString("N2")); }
public void TestCalculaPrecoPromocional(FormaDePagamento formaDePagamento, decimal valorEsperado) { Quantidade quantidadeVendidaMaiorQuePromocional = 5.52M; ValorUnitario valorUnitario = 20; Quantidade quantidadePromocionalMenorQueComprado = 5.51M; ValorUnitario valorPromocional = 10; var calculadoraPrecoVendaItem = new CalculadoraPrecoVendaItem(); var valorCalculado = calculadoraPrecoVendaItem.Calcular( formaDePagamento, quantidadeVendidaMaiorQuePromocional, valorUnitario, quantidadePromocionalMenorQueComprado, valorPromocional); Assert.Equal(valorEsperado, valorCalculado.Value); }
public void TestQuantidadeGaranteCalculoNormal(FormaDePagamento formaDePagamento) { Quantidade quantidadeVendidaMenorQuePromocional = new Quantidade(5.5M); ValorUnitario valorUnitario = new ValorUnitario(10); Quantidade quantidadePromocionalMaiorQueComprado = new Quantidade(5.51M); ValorUnitario valorPromocional = new ValorUnitario(20M); ValorUnitario valorEsperado = new ValorUnitario(55M); var calculadoraPrecoVendaItem = new CalculadoraPrecoVendaItem(); var valorCalculado = calculadoraPrecoVendaItem.Calcular( formaDePagamento, quantidadeVendidaMenorQuePromocional, valorUnitario, quantidadePromocionalMaiorQueComprado, valorPromocional); Assert.Equal(valorEsperado.Value, valorCalculado.Value); }
public void TestQuantidadePromocionalMenorZeroSempreCalculoNormal() { Quantidade quantidadeVendidaMaiorQuePromocional = 5.52M; ValorUnitario valorUnitario = 10.5M; Quantidade quantidadePromocionalMenorZero = -0.01M; ValorUnitario valorPromocional = -1; ValorUnitario valorEsperado = 57.96M; var formaDePagamento = FormaDePagamento.Dinheiro; var calculadoraPrecoVendaItem = new CalculadoraPrecoVendaItem(); var valorCalculado = calculadoraPrecoVendaItem.Calcular( formaDePagamento, quantidadeVendidaMaiorQuePromocional, valorUnitario, quantidadePromocionalMenorZero, valorPromocional); Assert.Equal(valorEsperado.Value, valorCalculado.Value); }
private void Form1_Load(object sender, EventArgs e) { Quantidade.Hide(); TXTQTDE.Hide(); ValorUnitario.Hide(); TXTVALORUNITARIO.Hide(); Valor.Hide(); TXTVALOR.Hide(); Total.Hide(); TXTTOTAL.Hide(); Descricao.Hide(); TXT_DESC.Hide(); dgDados.Hide(); valorrecebido.Hide(); TXT_VLRR.Hide(); troco.Hide(); TXT_TROCO.Hide(); }
public List <string> Valida(int row) { var errosAtuais = new List <string>(); if (DataEntregaIsValid() == false) { errosAtuais.Add($"A data de entrega do produto não é uma data válida. Erro na Linha: {row}."); } if (DataEntrega <= DateTime.Now) { errosAtuais.Add($"A data de entrega do produto não pode ser menor ou igual que o dia atual. Erro na Linha: {row}."); } if (Nome == null) { errosAtuais.Add($"O nome do produto não pode ser nulo. Erro na Linha: {row}."); } if (Nome.Length > 50) { errosAtuais.Add($"O campo nome deve possuir tamanho máximo de 50 caráteres. Erro na Linha: {row}."); } if (Quantidade <= 0) { errosAtuais.Add($"O campo quantidade tem que ser maior que zero. Erro na Linha: {row}."); } if (int.TryParse(Quantidade.ToString(), out _) == false) { errosAtuais.Add($"A quantidade do produto deve corresponder a um valor inteiro. Erro na Linha: {row}."); } if (double.TryParse(ValorUnitario.ToString(CultureInfo.InvariantCulture), out _) == false) { errosAtuais.Add( $"O valor unitário do produto deve corresponder a um valor flutuante (ex: 10,1 ou 10,0). Erro na Linha: {row}."); } return(errosAtuais); }
public void Insert() { conn.ConnectionString = Properties.Settings.Default.Firebird; string sqlIncluir = "INSERT INTO VENDA_COMANDA_ITEM (ID_VENDA_COMANDA, ID_PRODUTO, QUANTIDADE, VALOR_UNITARIO, VALOR_COMPLEMENTO, TOTAL, QTDE_PAGA, OBSERVACAO, ID_FUNCIONARIO, PRODUTO_CODIGO_BARRA)" + " Values('" + IdVendaComanda + "','" + IdProduto + "','" + Quantidade + "','" + ValorUnitario.ToString("F2", CultureInfo.InvariantCulture) + "','" + ValorComplemento + "','" + Total.ToString("F2", CultureInfo.InvariantCulture) + "','" + QuantidadePaga + "','" + Observacao + "','" + IdFuncionario + "','" + ProdutoCodigoBarra + "')"; FbCommand cmd = new FbCommand(sqlIncluir, conn); conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); }
public ValorUnitario Calcular(FormaDePagamento formaDePagamento, Quantidade quantidade, ValorUnitario valorUnitario, Quantidade?quantidadePromocional = null, ValorUnitario?valorPromocional = null) { return(0); }
private void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.F5) { Quantidade.Show(); TXTQTDE.Show(); TXTQTDE.Text = "1"; ValorUnitario.Show(); TXTVALORUNITARIO.Show(); Valor.Show(); TXTVALOR.Show(); Total.Show(); TXTTOTAL.Show(); PB_foto.Image = Properties.Resources.Passa; TXT_PROD.Text = ""; Descricao.Show(); TXT_DESC.Show(); dgDados.Show(); dgDados.Rows.Clear(); Valortotal = 0; TXT_TROCO.Text = "R$ 0,00"; TXT_VLRR.Text = "R$ 0,00"; TXT_DESC.Text = ""; TXTTOTAL.Text = ""; TXTVALOR.Text = ""; TXTVALORUNITARIO.Text = ""; } if (e.KeyCode == Keys.F6) { if (TXTQTDE.Text == "0") { MessageBox.Show("Aperte F5 para começar a compra!", "Aviso"); } else { if (TXTTOTAL.Text == "") { MessageBox.Show("Passe o produto!", "Aviso"); } else { if (DialogResult.Yes == MessageBox.Show("A compra vai ser paga em dinheiro?", "Pergunta", MessageBoxButtons.YesNo, MessageBoxIcon.Question)) { valorrecebido.Show(); TXT_VLRR.Show(); troco.Show(); TXT_TROCO.Show(); TXT_VLRR.Focus(); TXTQTDE.Enabled = false; TXT_PROD.Enabled = false; } else { //envia bd Conexao comb = new Conexao(); comb.sql = "Insert into tb02_cupom (tb02_valor, tb02_data) values ('" + Valortotal + "', now())"; comb.open(); int lin = comb.Runsql(); comb.close(); //fim envia bd //MessageBox.Show("Compra terminada!", "Aviso"); TXTQTDE.Text = "0"; TXTTOTAL.Text = ""; TXTVALOR.Text = ""; TXTVALORUNITARIO.Text = ""; Valortotal = 0; Quantidade.Hide(); TXTQTDE.Hide(); ValorUnitario.Hide(); TXTVALORUNITARIO.Hide(); Valor.Hide(); TXTVALOR.Hide(); Total.Hide(); TXTTOTAL.Hide(); PB_foto.Image = Properties.Resources.CL1; Descricao.Hide(); TXT_DESC.Hide(); dgDados.Hide(); dgDados.Rows.Clear(); TXT_DESC.Text = ""; //mandar os dados pro bd } } } } if (e.KeyCode == Keys.Escape) { if (TXTQTDE.Text != "0") { MessageBox.Show("Sua compra não foi terminada! Cancele ou finalize-a para sair!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (DialogResult.Yes == MessageBox.Show("Deseja mesmo sair do sistema?", "Aviso", MessageBoxButtons.YesNo, MessageBoxIcon.Question)) { this.Dispose(); } } } if (e.KeyCode == Keys.F7) { if (TXTQTDE.Text == "0") { MessageBox.Show("Aperte F5 para começar a compra!", "Aviso"); } else { if (DialogResult.Yes == MessageBox.Show("Deseja cancelar a compra?", "Aviso", MessageBoxButtons.YesNo, MessageBoxIcon.Question)) { TXTQTDE.Text = "0"; TXTTOTAL.Text = ""; TXTVALOR.Text = ""; TXTVALORUNITARIO.Text = ""; TXT_DESC.Text = ""; TXT_TROCO.Text = "R$ 0,00"; TXT_VLRR.Text = "R$ 0,00"; Quantidade.Hide(); TXTQTDE.Hide(); ValorUnitario.Hide(); TXTVALORUNITARIO.Hide(); Valor.Hide(); TXTVALOR.Hide(); Total.Hide(); TXTTOTAL.Hide(); PB_foto.Image = Properties.Resources.CL1; Descricao.Hide(); TXT_DESC.Hide(); dgDados.Hide(); dgDados.Rows.Clear(); Valortotal = 0; } } } }
private void TXT_VLRR_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { Double vrll = Double.Parse(TXT_VLRR.Text); Double trocoo; trocoo = vrll - Valortotal; System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("pt-BR"); TXT_VLRR.Text = string.Format("{0:C}", Convert.ToDouble(vrll)); TXT_TROCO.Text = string.Format("{0:C}", Convert.ToDouble(trocoo)); if (trocoo >= 0) { //envia bd Conexao comb = new Conexao(); comb.sql = "Insert into tb02_cupom (tb02_valor, tb02_data) values ('" + Valortotal + "', now())"; comb.open(); int lin = comb.Runsql(); comb.close(); //fim envia bd MessageBox.Show("COMPRA TERMINADA. TROCO: " + TXT_TROCO.Text + "", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information); TXTQTDE.Text = "0"; TXTTOTAL.Text = ""; TXTVALOR.Text = ""; TXTVALORUNITARIO.Text = ""; TXT_DESC.Text = ""; Valortotal = 0; Quantidade.Hide(); TXTQTDE.Hide(); ValorUnitario.Hide(); TXTVALORUNITARIO.Hide(); Valor.Hide(); TXTVALOR.Hide(); Total.Hide(); TXTTOTAL.Hide(); PB_foto.Image = Properties.Resources.CL1; Descricao.Hide(); TXT_DESC.Hide(); dgDados.Hide(); dgDados.Rows.Clear(); TXT_DESC.Text = ""; valorrecebido.Hide(); TXT_VLRR.Hide(); troco.Hide(); TXT_TROCO.Hide(); TXT_TROCO.Text = "R$ 0,00"; TXT_VLRR.Text = "R$ 0,00"; TXTQTDE.Enabled = true; TXT_PROD.Enabled = true; this.TXT_PROD.Focus(); } else { MessageBox.Show("O valor recebido é menor que o valor total da compra!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } if (e.KeyCode == Keys.F7) { if (TXTQTDE.Text == "0") { MessageBox.Show("Aperte F5 para começar a compra!", "Aviso"); } else { if (DialogResult.Yes == MessageBox.Show("Deseja cancelar a compra?", "Aviso", MessageBoxButtons.YesNo, MessageBoxIcon.Question)) { TXTQTDE.Text = "0"; TXTTOTAL.Text = ""; TXTVALOR.Text = ""; TXTVALORUNITARIO.Text = ""; TXT_DESC.Text = ""; TXT_TROCO.Text = "R$ 0,00"; TXT_VLRR.Text = "R$ 0,00"; Quantidade.Hide(); TXTQTDE.Hide(); ValorUnitario.Hide(); TXTVALORUNITARIO.Hide(); Valor.Hide(); TXTVALOR.Hide(); Total.Hide(); TXTTOTAL.Hide(); PB_foto.Image = Properties.Resources.CL1; Descricao.Hide(); TXT_DESC.Hide(); dgDados.Hide(); dgDados.Rows.Clear(); Valortotal = 0; } } } }
public void TestCriarValorUnitario() { var valorUnitario = new ValorUnitario(10.01M); Assert.NotNull(valorUnitario); }
public ValorUnitario Calcular(FormaDePagamento formaDePagamento, Quantidade quantidade, ValorUnitario valorUnitario, Quantidade?quantidadePromocional = null, ValorUnitario?valorPromocional = null) { if (DeveUsarPrecoVendaNormal(formaDePagamento, quantidade, quantidadePromocional)) { return(CalculoPrecoNormal(quantidade, valorUnitario)); } return(CalcularPrecoPromocional(quantidade, valorPromocional)); }
private ValorUnitario CalculoPrecoNormal(Quantidade quantidade, ValorUnitario valorUnitario) { return(quantidade * valorUnitario); }
private PlugNotasApi Initialize(Invoice invoice) { var plugNotas = new PlugNotasApi(); var address = invoice.Order.Customer.Adresses.Where(a => a.Type == AddressType.Billing).FirstOrDefault(); plugNotas.IdIntegracao = invoice.Id.ToString(); plugNotas.Presencial = true; plugNotas.ConsumidorFinal = true; plugNotas.Natureza = invoice.OriginOperation; var issuer = new Emitente(); issuer.CpfCnpj = _configuration["IssuerCnpj"]; plugNotas.Emitente = issuer; var receiver = new Destinatario(); receiver.CpfCnpj = invoice.Order.Customer.Cnpj; receiver.RazaoSocial = invoice.Order.Customer.CompanyName; receiver.Email = invoice.Order.Customer.Email; var receiverAddress = new Endereco(); receiverAddress.Logradouro = address.Street; receiverAddress.Numero = address.Number.ToString(); receiverAddress.Bairro = address.Neighborhood; receiverAddress.CodigoCidade = address.CodeCity; receiverAddress.DescricaoCidade = address.City; receiverAddress.Estado = address.State; receiverAddress.Cep = address.ZipCode; receiver.Endereco = receiverAddress; plugNotas.Destinatario = receiver; var itemsPlugNotas = new List <Iten>(); foreach (var item in invoice.InvoiceLines) { var itemPlugNotas = new Iten(); itemPlugNotas.Codigo = item.ItemName; itemPlugNotas.Descricao = item.ItemName; itemPlugNotas.Ncm = item.NcmCode; itemPlugNotas.Cfop = "5101"; var unitaryValue = new ValorUnitario(); unitaryValue.Comercial = (double)item.UnitaryPrice; unitaryValue.Tributavel = (double)item.UnitaryPrice; itemPlugNotas.ValorUnitario = unitaryValue; var quantity = new Quantidade(); quantity.Comercial = item.Quantity; quantity.Tributavel = item.Quantity; itemPlugNotas.Quantidade = quantity; var taxes = new Tributos(); var icms = new Icms(); icms.Origem = item.OriginIcms; icms.Cst = item.CstIcms; var baseCalcIcms = new BaseCalculo(); baseCalcIcms.ModalidadeDeterminacao = item.DeterminationMode; baseCalcIcms.Valor = (double)item.ValueBaseCalcIcms; icms.BaseCalculo = baseCalcIcms; icms.Aliquota = item.AliquotIcms; icms.Valor = (double)item.ValueIcms; taxes.Icms = icms; var pis = new Pis(); pis.Cst = item.CstPis; var baseCalcPis = new BaseCalculo(); baseCalcPis.Valor = (double)item.ValueBaseCalcPis; pis.BaseCalculo = baseCalcPis; pis.Aliquota = item.AliquotPis; pis.Valor = (double)item.ValuePis; taxes.Pis = pis; var cofins = new Cofins(); cofins.Cst = item.CstCofins; var baseCalcCofins = new BaseCalculo(); baseCalcCofins.Valor = (double)item.ValueBaseCalcCofins; cofins.BaseCalculo = baseCalcCofins; cofins.Aliquota = item.AliquotCofins; cofins.Valor = (double)item.ValueCofins; taxes.Cofins = cofins; itemPlugNotas.Tributos = taxes; itemsPlugNotas.Add(itemPlugNotas); } plugNotas.Itens = itemsPlugNotas; var payments = new List <Pagamento>(); var payment = new Pagamento(); payment.AVista = true; payment.Meio = "18"; payments.Add(payment); plugNotas.Pagamentos = payments; return(plugNotas); }