|
|
@ -236,6 +236,10 @@ class SerializacaoXML(Serializacao): |
|
|
etree.SubElement(prod, 'uTrib').text = produto_servico.unidade_tributavel |
|
|
etree.SubElement(prod, 'uTrib').text = produto_servico.unidade_tributavel |
|
|
etree.SubElement(prod, 'qTrib').text = str(produto_servico.quantidade_tributavel) |
|
|
etree.SubElement(prod, 'qTrib').text = str(produto_servico.quantidade_tributavel) |
|
|
etree.SubElement(prod, 'vUnTrib').text = '{:.4f}'.format(produto_servico.valor_unitario_tributavel or 0) |
|
|
etree.SubElement(prod, 'vUnTrib').text = '{:.4f}'.format(produto_servico.valor_unitario_tributavel or 0) |
|
|
|
|
|
|
|
|
|
|
|
if produto_servico.desconto: |
|
|
|
|
|
etree.SubElement(prod, 'vDesc').text = '{:.2f}'.format(produto_servico.desconto) |
|
|
|
|
|
|
|
|
""" Indica se valor do Item (vProd) entra no valor total da NF-e (vProd) |
|
|
""" Indica se valor do Item (vProd) entra no valor total da NF-e (vProd) |
|
|
0=Valor do item (vProd) não compõe o valor total da NF-e |
|
|
0=Valor do item (vProd) não compõe o valor total da NF-e |
|
|
1=Valor do item (vProd) compõe o valor total da NF-e (vProd) (v2.0) |
|
|
1=Valor do item (vProd) compõe o valor total da NF-e (vProd) (v2.0) |
|
|
@ -349,7 +353,7 @@ class SerializacaoXML(Serializacao): |
|
|
elif produto_servico.pis_modalidade == '03': |
|
|
elif produto_servico.pis_modalidade == '03': |
|
|
pis_item = etree.SubElement(pis, 'PISQtde') |
|
|
pis_item = etree.SubElement(pis, 'PISQtde') |
|
|
etree.SubElement(pis_item, 'CST').text = produto_servico.pis_modalidade |
|
|
etree.SubElement(pis_item, 'CST').text = produto_servico.pis_modalidade |
|
|
etree.SubElement(pis_item, 'qBCProd').text = produto_servico.quantidade_comercial |
|
|
|
|
|
|
|
|
etree.SubElement(pis_item, 'qBCProd').text = '{:.4f}'.format(produto_servico.quantidade_comercial) |
|
|
etree.SubElement(pis_item, 'vAliqProd').text = produto_servico.pis_aliquota_percentual |
|
|
etree.SubElement(pis_item, 'vAliqProd').text = produto_servico.pis_aliquota_percentual |
|
|
etree.SubElement(pis_item, 'vPIS').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) |
|
|
etree.SubElement(pis_item, 'vPIS').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) |
|
|
else: |
|
|
else: |
|
|
@ -358,7 +362,7 @@ class SerializacaoXML(Serializacao): |
|
|
etree.SubElement(pis_item, 'vBC').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) |
|
|
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, 'pPIS').text = '{:.2f}'.format(produto_servico.pis_aliquota_percentual or 0) |
|
|
if produto_servico.pis_modalidade is not '99': |
|
|
if produto_servico.pis_modalidade is not '99': |
|
|
etree.SubElement(pis_item, 'qBCProd').text = produto_servico.quantidade_comercial |
|
|
|
|
|
|
|
|
etree.SubElement(pis_item, 'qBCProd').text = '{:.4f}'.format(produto_servico.quantidade_comercial) |
|
|
etree.SubElement(pis_item, 'vAliqProd').text = produto_servico.pis_aliquota_percentual |
|
|
etree.SubElement(pis_item, 'vAliqProd').text = produto_servico.pis_aliquota_percentual |
|
|
etree.SubElement(pis_item, 'vPIS').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) |
|
|
etree.SubElement(pis_item, 'vPIS').text = '{:.2f}'.format(produto_servico.pis_valor_base_calculo or 0) |
|
|
|
|
|
|
|
|
@ -385,9 +389,9 @@ class SerializacaoXML(Serializacao): |
|
|
elif produto_servico.cofins_modalidade == '03': |
|
|
elif produto_servico.cofins_modalidade == '03': |
|
|
cofins_item = etree.SubElement(cofins, 'COFINSQtde') |
|
|
cofins_item = etree.SubElement(cofins, 'COFINSQtde') |
|
|
etree.SubElement(cofins_item, 'CST').text = produto_servico.cofins_modalidade |
|
|
etree.SubElement(cofins_item, 'CST').text = produto_servico.cofins_modalidade |
|
|
etree.SubElement(cofins_item, 'qBCProd').text = produto_servico.quantidade_comercial |
|
|
|
|
|
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, 'qBCProd').text = '{:.4f}'.format(produto_servico.quantidade_comercial) |
|
|
|
|
|
etree.SubElement(cofins_item, 'vAliqProd').text = '{:.4f}'.format(produto_servico.cofins_aliquota_percentual) |
|
|
|
|
|
etree.SubElement(cofins_item, 'vCOFINS').text = '{:.2f}'.format(produto_servico.cofins_valor) |
|
|
else: |
|
|
else: |
|
|
cofins_item = etree.SubElement(cofins, 'COFINSOutr') |
|
|
cofins_item = etree.SubElement(cofins, 'COFINSOutr') |
|
|
etree.SubElement(cofins_item, 'CST').text = produto_servico.cofins_modalidade |
|
|
etree.SubElement(cofins_item, 'CST').text = produto_servico.cofins_modalidade |
|
|
|