Skip to content

Commit 48c7aad

Browse files
authored
Adicionando valor de desconto e valor cobrado. (#39)
1 parent e93caee commit 48c7aad

3 files changed

Lines changed: 45 additions & 2 deletions

File tree

pyboleto/data.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,8 @@ def __init__(self, **kwargs):
169169
self._sacado = None
170170
self._valor = None
171171
self._valor_documento = None
172+
self._valor_desconto = None
173+
self._valor_cobrado = None
172174
self.label_cedente = 'Agência/Código beneficiário'
173175

174176
@property
@@ -331,6 +333,31 @@ def _set_valor_documento(self, val):
331333
else:
332334
self._valor_documento = Decimal(str(val))
333335
valor_documento = property(_get_valor_documento, _set_valor_documento)
336+
337+
338+
def _get_valor_desconto(self):
339+
if self._valor_desconto is not None:
340+
return "%.2f" % self._valor_desconto
341+
342+
def _set_valor_desconto(self, val):
343+
if type(val) is Decimal:
344+
self._valor_desconto = val
345+
else:
346+
self._valor_desconto = Decimal(str(val))
347+
valor_desconto = property(_get_valor_desconto, _set_valor_desconto)
348+
349+
350+
def _get_valor_cobrado(self):
351+
if self._valor_cobrado is not None:
352+
return "%.2f" % self._valor_cobrado
353+
354+
def _set_valor_cobrado(self, val):
355+
if type(val) is Decimal:
356+
self._valor_cobrado = val
357+
else:
358+
self._valor_cobrado = Decimal(str(val))
359+
valor_cobrado = property(_get_valor_cobrado, _set_valor_cobrado)
360+
334361
"""Valor do Documento convertido para :class:`Decimal`.
335362
336363
De preferência para passar um valor em :class:`Decimal`, se não for passado

pyboleto/pdf.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -596,11 +596,27 @@ def _drawReciboCaixa(self, boleto_dados, x, y):
596596
valor_documento = self._formataValorParaExibir(
597597
boleto_dados.valor_documento
598598
)
599+
valor_desconto = self._formataValorParaExibir(
600+
boleto_dados.valor_desconto
601+
)
602+
valor_cobrado = self._formataValorParaExibir(
603+
boleto_dados.valor_cobrado
604+
)
599605
self.pdf_canvas.drawRightString(
600606
self.width - 2 * self.space,
601607
y + self.space,
602608
valor_documento
603609
)
610+
self.pdf_canvas.drawRightString(
611+
self.width - 2 * self.space,
612+
y + self.space - 18,
613+
valor_desconto
614+
)
615+
self.pdf_canvas.drawRightString(
616+
self.width - 2 * self.space,
617+
y + self.space - 90,
618+
valor_cobrado
619+
)
604620
self.pdf_canvas.setFont('Helvetica', self.font_size_title)
605621

606622
# Linha horizontal com primeiro campo Data documento

pyboleto/templates/recibo_caixa.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@
7979
<div class="instrucoes-content">${instrucoes}</div>
8080
</td>
8181
<td>
82-
<div class="rotulo">(-) Descontos/Abatimentos</div>
82+
<div class="rotulo">(-) Descontos/Abatimentos</div> ${valor_desconto}
8383
</td>
8484
</tr>
8585
<tr>
@@ -99,7 +99,7 @@
9999
</tr>
100100
<tr>
101101
<td class="linha-grossa">
102-
<div class="rotulo">(=) Valor cobrado</div>
102+
<div class="rotulo">(=) Valor cobrado</div> ${valor_cobrado}
103103
</td>
104104
</tr>
105105
</tbody>

0 commit comments

Comments
 (0)