public override bool VenderItem(SituacaoTributaria cargaTributaria, TipoProduto tipoProduto, decimal quantidade, decimal precoUnitario, TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorDescontoAcressimo, int codigoItem, string unidadeMedida, string descricaoItem, decimal tributacao) { string aliquota; if (tributacao == 0 && cargaTributaria == SituacaoTributaria.Tributado) { aliquota = "I"; } else { aliquota = PrefixoImposto(cargaTributaria, tipoProduto) + FormataPercentual(tributacao); } if (cargaTributaria == SituacaoTributaria.SubstituicaoTributaria || cargaTributaria == SituacaoTributaria.Isento || cargaTributaria == SituacaoTributaria.NaoTributado) { aliquota = PrefixoImposto(cargaTributaria, tipoProduto); } Declaracoes.iRetorno = Declaracoes.iCFVender_ECF_Daruma( aliquota, AjustarCasasDecimais(FormataNumero(quantidade).ToString(), 3), AjustarCasasDecimais(FormataNumero(precoUnitario).ToString(), 2), AjustarCasasDecimais(TipoDescontoAcressimoToString(tipoDescontoAcressimo).ToString(), 2), AjustarCasasDecimais(FormataNumero(valorDescontoAcressimo).ToString(), 2), codigoItem.ToString(CultureInfo.InvariantCulture), unidadeMedida, descricaoItem ); return(TrataRetorno(Declaracoes.iRetorno)); }
public override bool TotalizarCupomFiscal(TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorDescontoAcressimo) { Declaracoes.iRetorno = Declaracoes.iCFTotalizarCupom_ECF_Daruma( TipoDescontoAcressimoToString(tipoDescontoAcressimo), AjustarCasasDecimais(FormataNumero(valorDescontoAcressimo).ToString(), 2) ); return(TrataRetorno(Declaracoes.iRetorno)); }
public override bool LancarAcressimoUltimoItem(TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorAcressimo) { Declaracoes.iRetorno = Declaracoes.iCFLancarAcrescimoUltimoItem_ECF_Daruma( TipoDescontoAcressimoToString(tipoDescontoAcressimo), AjustarCasasDecimais(FormataNumero(valorAcressimo).ToString(), 2) ); return(TrataRetorno(Declaracoes.iRetorno)); }
/// <summary> /// Este método acrescenta um item vendido no Cupom Fiscal. /// </summary><param name="cargaTributaria">A alíquota do item pode ser informada /// através da posição dela cadastrada com o comando ou valor da alíquota pode ser informado /// diretamente </param><param name="quantidade">Quantidade do Item</param> /// <param name="precoUnitario">Preço Unitário do Item.</param> /// <param name="tipoDescontoAcressimo">SubGrupo de Acréscimo ou Desconto no Item.</param> /// <param name="valorDescontoAcressimo">Valor do desconto ou acréscimo ou Valor da porcentagem.</param> /// <param name="codigoItem">Código do Item.</param> /// <param name="unidadeMedida">Unidade de medida.</param> /// <param name="descricaoItem">Descrição do Item.</param> /// <param name="tributacao">Valor dos tributos sobre o item.</param> /// <param name="tipoProduto">Parametro que identifica se o item é um produto, mercadoria ou serviço.</param> public abstract bool VenderItem(SituacaoTributaria cargaTributaria, TipoProduto tipoProduto, decimal quantidade, decimal precoUnitario, TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorDescontoAcressimo, int codigoItem, string unidadeMedida, string descricaoItem, decimal tributacao);
public override bool LancarAcressimoItem(int numeroItem, TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorAcressimo) { Declaracoes.iRetorno = Declaracoes.iCFLancarAcrescimoItem_ECF_Daruma( numeroItem.ToString(CultureInfo.InvariantCulture), TipoDescontoAcressimoToString(tipoDescontoAcressimo), AjustarCasasDecimais(FormataNumero(valorAcressimo).ToString(), 2) ); return(TrataRetorno(Declaracoes.iRetorno)); }
public override bool LancarDescontoUltimoItem(TipoDescontoAcressimo tipoDesconto, decimal valorDesconto) { try { MessageBox.Show(MensagemNaoSuportada); } catch (Bematech.BematechException ex) { ExibeMensagem("Erro ao lançar desconto.\n" + ex.Message); return(false); } return(true); }
public override bool IniciaFechamentoCupom(TipoDescontoAcressimo tipoDescAcresc, decimal desconto, decimal acrescimo) { bool ret = true; if (desconto > acrescimo) { ret = TotalizarCupomFiscal(TipoDescontoAcressimo.DescontoValor, desconto - acrescimo); } else { ret = TotalizarCupomFiscal(TipoDescontoAcressimo.AcressimoValor, acrescimo - desconto); } return(ret); }
public override bool LancarAcressimoItem(int numeroItem, TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorAcressimo) { try { Impressora.Cupom.DescontarItem( numeroItem, TipoDescontoAcressimoToAcrescimoDesconto(tipoDescontoAcressimo), valorAcressimo); } catch (Bematech.BematechException ex) { ExibeMensagem("Erro ao lançar acrescimo em item.\n" + ex.Message); return(false); } return(true); }
public override bool IniciaFechamentoCupom(TipoDescontoAcressimo tipoDescAcresc, decimal desconto, decimal acrescimo) { try { Impressora.Cupom.IniciarFechamento( TipoDescontoAcressimoToAcrescimoDesconto(tipoDescAcresc), acrescimo, desconto ); } catch (BematechException ex) { MessageBox.Show("Erro ao iniciar fechamento do cupom.\n" + ex.Message); return(false); } return(true); }
public String TipoDescontoAcressimoToString(TipoDescontoAcressimo tipoDescontoAcressimo) { switch (tipoDescontoAcressimo) { case TipoDescontoAcressimo.AcressimoPercentual: return("A%"); case TipoDescontoAcressimo.AcressimoValor: return("A$"); case TipoDescontoAcressimo.DescontoPercentual: return("D%"); case TipoDescontoAcressimo.DescontoValor: return("D$"); } return(""); }
private TipoAcrescimoDesconto TipoDescontoAcressimoToAcrescimoDesconto(TipoDescontoAcressimo tipo) { switch (tipo) { case TipoDescontoAcressimo.AcressimoPercentual: return(TipoAcrescimoDesconto.Percentual); case TipoDescontoAcressimo.AcressimoValor: return(TipoAcrescimoDesconto.Valor); case TipoDescontoAcressimo.DescontoPercentual: return(TipoAcrescimoDesconto.Percentual); case TipoDescontoAcressimo.DescontoValor: return(TipoAcrescimoDesconto.Valor); } return(TipoAcrescimoDesconto.Valor); }
public override bool TotalizarCupomFiscal(TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorDescontoAcressimo) { MessageBox.Show(MensagemNaoSuportada); return(false); }
public override bool IniciaFechamentoCupom(TipoDescontoAcressimo tipoDescAcresc, decimal desconto, decimal acrescimo) { return(true); }
public override bool LancarAcressimoUltimoItem(TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorAcressimo) { MessageBox.Show(MensagemNaoSuportada); return(false); }
public abstract bool IniciaFechamentoCupom(TipoDescontoAcressimo tipoDescAcresc, decimal desconto, decimal acrescimo);
/// <summary> /// Este método permite aplicar acréscimo no item do cupom fiscal antes da totalização. /// </summary><param name="numeroItem">Número do Item</param><param name="tipoDescontoAcressimo">SubGrupo Acréscimo</param><param name="valorAcressimo">Valor do acréscimo ou Valor da porcentagem.</param> public abstract bool LancarAcressimoItem(int numeroItem, TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorAcressimo);
/// <summary> /// Este método totaliza o cupom fiscal, realizando a soma dos itens vendidos e /// aplicando acréscimo ou desconto estabelecido. /// </summary><param name="tipoDescontoAcressimo">SubGrupo Acréscimo ou Desconto</param><param name="valorDescontoAcressimo">Valor do acréscimo ou valor da porcentagem.</param> public abstract bool TotalizarCupomFiscal(TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorDescontoAcressimo);
public override bool VenderItem(SituacaoTributaria cargaTributaria, TipoProduto tipoProduto, decimal quantidade, decimal precoUnitario, TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorDescontoAcressimo, int codigoItem, string unidadeMedida, string descricaoItem, decimal tributacao) { try { string aliquota; if (tributacao == 0 && cargaTributaria == SituacaoTributaria.Tributado) { aliquota = "I"; } else { aliquota = PrefixoImposto(cargaTributaria, tipoProduto) + FormataPercentual(tributacao); } if (cargaTributaria == SituacaoTributaria.SubstituicaoTributaria || cargaTributaria == SituacaoTributaria.Isento || cargaTributaria == SituacaoTributaria.NaoTributado) { aliquota = PrefixoImposto(cargaTributaria, tipoProduto); } var item = new Item() { Aliquota = aliquota, Codigo = codigoItem.ToString(CultureInfo.InvariantCulture), Quantidade = quantidade, Descricao = descricaoItem, TipoQuantidade = TipoQuantidade.Fracionaria, CasasDecimais = ContaCasasDecimais(quantidade), ValorUnitario = precoUnitario }; var validacao = ""; var error = item.Validar(); foreach (ParametroInvalido invalido in error) { validacao += invalido.Descricao + Environment.NewLine; } if (!validacao.Equals("")) { MessageBox.Show("Erros encontrados.\n" + validacao); } Impressora.Cupom.AumentarDescricaoItem(item.Descricao); Impressora.Cupom.Vender(item); //Impressora.Cupom.Vender(codigoItem.ToString(CultureInfo.InvariantCulture), // descricaoItem, // aliquota, // TipoQuantidade.Fracionaria, // quantidade, // ContaCasasDecimais(quantidade), // precoUnitario, // TipoDescontoAcressimoToAcrescimoDesconto(tipoDescontoAcressimo), // SubGrupo de desconto. // valorDescontoAcressimo); // Valor desconto return(true); } catch (Bematech.BematechException ex) { ExibeMensagem("Erro ao vender item.\n" + ex.Message); CancelarCupom(); throw; return(false); } }
public override bool LancarAcressimoUltimoItem(TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorAcressimo) { return(true); }
public override bool LancarDescontoItem(int numeroItem, TipoDescontoAcressimo tipoDesconto, decimal valorDesconto) { return(true); }
public override bool TotalizarCupomFiscal(TipoDescontoAcressimo tipoDescontoAcressimo, decimal valorDescontoAcressimo) { return(true); }
/// <summary> /// Este método permite aplicar desconto no último item do cupom fiscal /// </summary><param name="tipoDesconto">SubGrupo Desconto</param><param name="valorDesconto">Valor do Desconto ou Valor da porcentagem.</param> public abstract bool LancarDescontoUltimoItem(TipoDescontoAcressimo tipoDesconto, decimal valorDesconto);