private static pag GetPagamento(ICMSTot icmsTot, VersaoServico versao) { decimal valorPagto = (icmsTot.vNF / 2).Arredondar(2); if (versao != VersaoServico.Versao400) // difernte de versão 4 retorna isso { return(new pag { tPag = FormaPagamento.fpDinheiro, vPag = valorPagto }); } // igual a versão 4 retorna isso return(new pag { detPag = new List <detPag> { new detPag { tPag = FormaPagamento.fpCreditoLoja, vPag = valorPagto }, new detPag { tPag = FormaPagamento.fpCreditoLoja, vPag = icmsTot.vNF - valorPagto } } }); }
protected virtual List <pag> GetPagamento(ICMSTot icmsTot) { var valorPagto = Valor.Arredondar(icmsTot.vProd / 1, 2); var p = new List <pag> { new pag { tPag = FormaPagamento.fpDinheiro, vPag = valorPagto }, //new pag {tPag = FormaPagamento.fpCartaoDebito, vPag = icmsTot.vProd - valorPagto}, //new pag {tPag = FormaPagamento.fpCartaoDebito, vPag = icmsTot.vProd - valorPagto} }; return(p); }
protected virtual total GetTotal(VersaoServico versao) { var icmsTot = new ICMSTot { vProd = 1, vNF = Decimal.Parse("0,90"), vDesc = Decimal.Parse("0,10"), vTotTrib = Decimal.Parse("0,17") }; if (versao == VersaoServico.ve310) { icmsTot.vICMSDeson = 0; } var t = new total { ICMSTot = icmsTot }; return(t); }
protected total GetTotal() { var icmsTot = new ICMSTot { vProd = decimal.Parse(NFeSelected.ValorTotalProdutos.Value.ToString("N2")), vNF = decimal.Parse(NFeSelected.ValorTotal.Value.ToString("N2")), vDesc = decimal.Parse(NFeSelected.ValorDesconto.Value.ToString("N2")), vTotTrib = decimal.Parse(NFeSelected.ValorIcms.Value.ToString("N2")), vBC = decimal.Parse(NFeSelected.BaseCalculoIcms.Value.ToString("N2")), vICMS = decimal.Parse(NFeSelected.ValorIcms.Value.ToString("N2")), vICMSDeson = 0 }; var t = new total { ICMSTot = icmsTot }; return(t); }
protected total GetTotal() { var icmsTot = new ICMSTot { vProd = decimal.Parse(NFeSelected.VALOR_TOTAL_PRODUTOS.Value.ToString("N2")), vNF = decimal.Parse(NFeSelected.VALOR_TOTAL.Value.ToString("N2")), vDesc = decimal.Parse(NFeSelected.VALOR_DESCONTO.Value.ToString("N2")), vTotTrib = decimal.Parse(NFeSelected.VALOR_ICMS.Value.ToString("N2")), vBC = decimal.Parse(NFeSelected.BASE_CALCULO_ICMS.Value.ToString("N2")), vICMS = decimal.Parse(NFeSelected.VALOR_ICMS.Value.ToString("N2")), vICMSDeson = 0 }; var t = new total { ICMSTot = icmsTot }; return(t); }
protected virtual List <pag> GetPagamento(ICMSTot icmsTot) { var valorPagto = (icmsTot.vNF / 2).Arredondar(2); if (versaoDoServico != VersaoServico.ve400) // difernte de versão 4 retorna isso { var p = new List <pag> { new pag { tPag = FormaPagamento.fpDinheiro, vPag = valorPagto }, new pag { tPag = FormaPagamento.fpCheque, vPag = icmsTot.vNF - valorPagto } }; return(p); } // igual a versão 4 retorna isso var p4 = new List <pag> { //new pag {detPag = new detPag {tPag = FormaPagamento.fpDinheiro, vPag = valorPagto}}, //new pag {detPag = new detPag {tPag = FormaPagamento.fpCheque, vPag = icmsTot.vNF - valorPagto}} new pag { detPag = new List <detPag> { new detPag { tPag = FormaPagamento.fpCreditoLoja, vPag = valorPagto }, new detPag { tPag = FormaPagamento.fpCreditoLoja, vPag = icmsTot.vNF - valorPagto } } } }; return(p4); }
private static cobr GetCobranca(ICMSTot icmsTot) { decimal valorParcela = (icmsTot.vNF / 2).Arredondar(2); cobr c = new cobr { fat = new fat { nFat = "12345678910", vLiq = icmsTot.vNF, vOrig = icmsTot.vNF, vDesc = 0m }, dup = new List <dup> { new dup { nDup = "001", dVenc = DateTime.Now.AddDays(30), vDup = valorParcela }, new dup { nDup = "002", dVenc = DateTime.Now.AddDays(60), vDup = icmsTot.vNF - valorParcela } } }; return(c); }
protected virtual cobr GetCobranca(ICMSTot icmsTot) { var valorParcela = Valor.Arredondar(icmsTot.vProd / 2, 2); var c = new cobr { fat = new fat { nFat = "12345678910", vLiq = icmsTot.vProd }, dup = new List <dup> { new dup { nDup = "12345678", vDup = valorParcela }, new dup { nDup = "987654321", vDup = icmsTot.vProd - valorParcela } } }; return(c); }
protected virtual total GetTotal(VersaoServico versao, List <det> produtos) { var icmsTot = new ICMSTot { vProd = produtos.Sum(p => p.prod.vProd), vNF = produtos.Sum(p => p.prod.vProd) - produtos.Sum(p => p.prod.vDesc ?? 0), vDesc = produtos.Sum(p => p.prod.vDesc ?? 0), vTotTrib = produtos.Sum(p => p.imposto.vTotTrib ?? 0), }; if (versao == VersaoServico.ve310) { icmsTot.vICMSDeson = 0; } foreach (var produto in produtos) { if (produto.imposto.IPI != null && produto.imposto.IPI.TipoIPI.GetType() == typeof(IPITrib)) { icmsTot.vIPI = icmsTot.vIPI + ((IPITrib)produto.imposto.IPI.TipoIPI).vIPI ?? 0; } if (produto.imposto.ICMS.TipoICMS.GetType() == typeof(ICMS00)) { icmsTot.vBC = icmsTot.vBC + ((ICMS00)produto.imposto.ICMS.TipoICMS).vBC; icmsTot.vICMS = icmsTot.vICMS + ((ICMS00)produto.imposto.ICMS.TipoICMS).vICMS; } if (produto.imposto.ICMS.TipoICMS.GetType() == typeof(ICMS20)) { icmsTot.vBC = icmsTot.vBC + ((ICMS20)produto.imposto.ICMS.TipoICMS).vBC; icmsTot.vICMS = icmsTot.vICMS + ((ICMS20)produto.imposto.ICMS.TipoICMS).vICMS; } //Outros Ifs aqui, caso vá usar as classes ICMS00, ICMS10 para totalizar } var t = new total { ICMSTot = icmsTot }; return(t); }
private static total GetTotal(VersaoServico versao, List <det> produtos) { ICMSTot icmsTot = new ICMSTot { vProd = produtos.Sum(p => p.prod.vProd), vDesc = produtos.Sum(p => p.prod.vDesc ?? 0), vTotTrib = produtos.Sum(p => p.imposto.vTotTrib ?? 0), }; if (versao == VersaoServico.Versao310 || versao == VersaoServico.Versao400) { icmsTot.vICMSDeson = 0; } if (versao == VersaoServico.Versao400) { icmsTot.vFCPUFDest = 0; icmsTot.vICMSUFDest = 0; icmsTot.vICMSUFRemet = 0; icmsTot.vFCP = 0; icmsTot.vFCPST = 0; icmsTot.vFCPSTRet = 0; icmsTot.vIPIDevol = 0; } foreach (var produto in produtos) { if (produto.imposto.IPI != null && produto.imposto.IPI.TipoIPI.GetType() == typeof(IPITrib)) { icmsTot.vIPI = icmsTot.vIPI + ((IPITrib)produto.imposto.IPI.TipoIPI).vIPI ?? 0; } if (produto.imposto.ICMS.TipoICMS.GetType() == typeof(ICMS00)) { icmsTot.vBC = icmsTot.vBC + ((ICMS00)produto.imposto.ICMS.TipoICMS).vBC; icmsTot.vICMS = icmsTot.vICMS + ((ICMS00)produto.imposto.ICMS.TipoICMS).vICMS; } if (produto.imposto.ICMS.TipoICMS.GetType() == typeof(ICMS20)) { icmsTot.vBC = icmsTot.vBC + ((ICMS20)produto.imposto.ICMS.TipoICMS).vBC; icmsTot.vICMS = icmsTot.vICMS + ((ICMS20)produto.imposto.ICMS.TipoICMS).vICMS; } //Outros Ifs aqui, caso vá usar as classes ICMS00, ICMS10 para totalizar } //** Regra de validação W16-10 que rege sobre o Total da NF **// icmsTot.vNF = icmsTot.vProd - icmsTot.vDesc - icmsTot.vICMSDeson.GetValueOrDefault() + icmsTot.vST + icmsTot.vFCPST.GetValueOrDefault() + icmsTot.vFrete + icmsTot.vSeg + icmsTot.vOutro + icmsTot.vII + icmsTot.vIPI + icmsTot.vIPIDevol.GetValueOrDefault(); total t = new total { ICMSTot = icmsTot }; return(t); }
public Total(List <DetalhesProdutos> produtos) { ICMSTot = new ICMSTot(from p in produtos where p.Impostos.impostos.Count(x => x is ICMS) > 0 select p); }
protected void SetTotal(ICMSTot tot) { IcmsTot = tot; }