Compare commits

...

2 Commits

Author SHA1 Message Date
Gregory Trullemans b7b5635e18 Improve billing code 2022-09-20 11:59:43 +02:00
Gregory Trullemans c7a341b76a Update bill title 2022-09-20 09:02:29 +02:00
1 changed files with 15 additions and 15 deletions

View File

@ -504,6 +504,7 @@ class BillPaper(PDFDocument):
self.style = self.styles["BodyText"]
self.add_header(contract)
self.y = Y - 125
self.add_bill_title(contract)
self.add_prestations(contract)
self.add_conclusion(contract)
@ -519,21 +520,19 @@ class BillPaper(PDFDocument):
Returns:
ne retourne rien
"""
# text = "A l'attention de <b>" + contract.client.contact + "</b><br />" + (contract.client.name if contract.client.is_company else "") + "<br />" + contract.client.address + "<br />" + str(contract.client.postal_code) + " " + contract.client.city + "<br /><br />Concernant la/le <b>" + contract.title + "</b>"
text = (("<b>" + contract.client.name + "</b>") if contract.client.is_company else "") + "<br />" + "A l'attention de <b>" + contract.client.contact + "</b><br />" + contract.client.address + "<br />" + str(contract.client.postal_code) + " " + contract.client.city + "<br /><br />Concernant la/le <b>" + contract.title + "</b>"
paragraph = Paragraph(text, self.style)
width, height = paragraph.wrap(6*cm, self.y)
paragraph.drawOn(self.document, 6*cm, self.y - height)
width, height = paragraph.wrap(10*cm, 10*cm)
paragraph.drawOn(self.document, TITLED_X, self.y - height)
self.add_vspace(-height * 1.25)
def __add_section_title(self, title_text):
""" Ajout le titre d'une section """
text = "<b>" + title_text + "</b>"
paragraph = Paragraph(text, self.style)
width, height = paragraph.wrap(6*cm, self.y)
width, height = paragraph.wrap(8*cm, self.y)
paragraph.drawOn(self.document, INDENTED_X, self.y - height)
self.add_vspace(-height)
@ -570,26 +569,27 @@ class BillPaper(PDFDocument):
style = TableStyle(
[
('BACKGROUND', (0,0), (-1,0), '#317BB5'), # première ligne bleue
('TEXTCOLOR', (0,0), (-1,0), '#FFFFFF'),
('ALIGN', (2,0), (-1, 0), 'CENTER'),
('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
('BACKGROUND', (0,-1), (-1,-1), '#317BB5'), # dernière ligne bleue
('ALIGN', (2,1), (-1, -1), 'RIGHT'),
('FONTNAME', (0,-1), (-1,-1), 'Helvetica-Bold'),
('TEXTCOLOR', (0,-1), (-1,-1), '#FFFFFF'),
]
)
table = Table(data, [2.6*cm, 8.2*cm, 2.6*cm, 2.6*cm, 2.6*cm])
table.setStyle(style)
width, height = table.wrapOn(self.document, X, self.y)
self.y = self.y - height - 5
self.add_vspace(-height - 5)
table.drawOn(self.document, X, self.y)
self.add_vspace(-height / 3)
self.add_vspace(COMMON_LINE_HEIGHT)
self.document.setFont("Helvetica", 10)
self.document.drawRightString(INDENTED_X + 445, self.y, "Acompte")
self.document.drawRightString(INDENTED_X + 442, self.y, "Acompte")
self.document.drawRightString(INDENTED_RIGHT_X, self.y, str(contract.advance))
self.add_vspace()
self.document.setFont("Helvetica-Bold", 10)
self.document.drawRightString(INDENTED_X + 445, self.y, "Solde à payer")
self.document.drawRightString(INDENTED_X + 442, self.y, "Solde à payer")
self.amount = total - contract.advance
self.document.drawRightString(INDENTED_RIGHT_X, self.y, str(self.amount))
@ -602,10 +602,10 @@ class BillPaper(PDFDocument):
Returns:
ne retourne rien.
"""
self.add_vspace(DOUBLE_LINE_HEIGHT)
self.document.rect(X, self.y, RIGHT_X - X, BIG_LINE_HEIGHT, fill=0)
self.add_new_line(INDENTED_X, "Merci de bien vouloir payer la somme de ")
space = len("Merci de bien vouloir payer la somme de ")
self.add_vspace(HUGE_LINE_HEIGHT)
text = "Merci de bien vouloir payer la somme de "
self.add_new_line(INDENTED_X, text)
space = len(text)
self.add_string(INDENTED_X + (space * 4.55), str(self.amount), font_decoration="Bold")
space += len(str(self.amount) + " ")
self.add_string(INDENTED_X + (space * 4.55), "€ sur le compte ")
@ -638,7 +638,7 @@ class BillPaper(PDFDocument):
def add_signature(self):
""" Génère la signature. """
self.add_vspace(BIG_LINE_HEIGHT)
self.add_vspace(HUGE_LINE_HEIGHT)
self.document.drawString(
INDENTED_X,
self.y,