diff --git a/pynfe/processamento/serializacao.py b/pynfe/processamento/serializacao.py index eeb004a..fdf13db 100644 --- a/pynfe/processamento/serializacao.py +++ b/pynfe/processamento/serializacao.py @@ -342,24 +342,24 @@ class SerializacaoXML(Serializacao): elif produto_servico.pis_modalidade == '01' or produto_servico.pis_modalidade == '02': pis_item = etree.SubElement(pis, 'PISAliq') etree.SubElement(pis_item, 'CST').text = produto_servico.pis_modalidade - etree.SubElement(pis_item, 'vBC').text = produto_servico.pis_valor_base_calculo - etree.SubElement(pis_item, 'pPIS').text = produto_servico.pis_aliquota_percentual - etree.SubElement(pis_item, 'vPIS').text = produto_servico.pis_valor + etree.SubElement(pis_item, 'vBC').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) + etree.SubElement(pis_item, 'pPIS').text = '{:.2f}'.format(produto_servico.pis_aliquota_percentual or 0) + etree.SubElement(pis_item, 'vPIS').text = '{:.2f}'.format(produto_servico.pis_valor or 0) elif produto_servico.pis_modalidade == '03': pis_item = etree.SubElement(pis, 'PISQtde') etree.SubElement(pis_item, 'CST').text = produto_servico.pis_modalidade etree.SubElement(pis_item, 'qBCProd').text = produto_servico.quantidade_comercial etree.SubElement(pis_item, 'vAliqProd').text = produto_servico.pis_aliquota_percentual - etree.SubElement(pis_item, 'vPIS').text = produto_servico.pis_valor_base_calculo + etree.SubElement(pis_item, 'vPIS').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) else: pis_item = etree.SubElement(pis, 'PISOutr') etree.SubElement(pis_item, 'CST').text = produto_servico.pis_modalidade - etree.SubElement(pis_item, 'vBC').text = produto_servico.pis_valor_base_calculo - etree.SubElement(pis_item, 'pPIS').text = produto_servico.pis_aliquota_percentual + etree.SubElement(pis_item, 'vBC').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) + etree.SubElement(pis_item, 'pPIS').text = '{:.2f}'.format(produto_servico.pis_aliquota_percentual or 0) if produto_servico.pis_modalidade is not '99': etree.SubElement(pis_item, 'qBCProd').text = produto_servico.quantidade_comercial etree.SubElement(pis_item, 'vAliqProd').text = produto_servico.pis_aliquota_percentual - etree.SubElement(pis_item, 'vPIS').text = produto_servico.pis_valor_base_calculo + etree.SubElement(pis_item, 'vPIS').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) ## PISST # pis_item = etree.SubElement(pis, 'PISST') @@ -378,9 +378,9 @@ class SerializacaoXML(Serializacao): elif produto_servico.cofins_modalidade == '01' or produto_servico.cofins_modalidade == '02': cofins_item = etree.SubElement(cofins, 'COFINSAliq') etree.SubElement(cofins_item, 'CST').text = produto_servico.cofins_modalidade - etree.SubElement(cofins_item, 'vBC').text = produto_servico.cofins_valor_base_calculo - etree.SubElement(cofins_item, 'pCOFINS').text = produto_servico.cofins_aliquota_percentual - etree.SubElement(cofins_item, 'vCOFINS').text = produto_servico.cofins_valor + etree.SubElement(cofins_item, 'vBC').text = '{:.2f}'.format(produto_servico.cofins_valor_base_calculo or 0) + etree.SubElement(cofins_item, 'pCOFINS').text = '{:.2f}'.format(produto_servico.cofins_aliquota_percentual or 0) + etree.SubElement(cofins_item, 'vCOFINS').text = '{:.2f}'.format(produto_servico.cofins_valor) elif produto_servico.cofins_modalidade == '03': cofins_item = etree.SubElement(cofins, 'COFINSQtde') etree.SubElement(cofins_item, 'CST').text = produto_servico.cofins_modalidade @@ -390,11 +390,11 @@ class SerializacaoXML(Serializacao): else: cofins_item = etree.SubElement(cofins, 'COFINSOutr') etree.SubElement(cofins_item, 'CST').text = produto_servico.cofins_modalidade - etree.SubElement(cofins_item, 'vBC').text = produto_servico.cofins_valor_base_calculo - etree.SubElement(cofins_item, 'pCOFINS').text = produto_servico.cofins_aliquota_percentual + etree.SubElement(cofins_item, 'vBC').text = '{:.2f}'.format(produto_servico.cofins_valor_base_calculo or 0) + etree.SubElement(cofins_item, 'pCOFINS').text = '{:.2f}'.format(produto_servico.cofins_aliquota_percentual or 0) if produto_servico.cofins_modalidade is not '99': - etree.SubElement(cofins_item, 'vAliqProd').text = produto_servico.cofins_aliquota_percentual - etree.SubElement(cofins_item, 'vCOFINS').text = produto_servico.cofins_valor + etree.SubElement(cofins_item, 'vAliqProd').text = '{:.2f}'.format(produto_servico.cofins_aliquota_percentual or 0) + etree.SubElement(cofins_item, 'vCOFINS').text = '{:.2f}'.format(produto_servico.cofins_valor or 0) ## COFINSST # cofins_item = etree.SubElement(cofins, 'COFINSOutr')