Skip to content
Extraits de code Groupes Projets
Valider 9ddafe65 rédigé par jordan's avatar jordan
Parcourir les fichiers

[update] check if cotiz invoice and invoice_line exists before create in create_contribution

parent 681727c6
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -69,6 +69,13 @@ class ScopCotisation(models.AbstractModel): ...@@ -69,6 +69,13 @@ class ScopCotisation(models.AbstractModel):
liasse=None, amount=0): liasse=None, amount=0):
Invoice = self.env['account.invoice'] Invoice = self.env['account.invoice']
InvoiceLine = self.env['account.invoice.line'] InvoiceLine = self.env['account.invoice.line']
exisiting_invoice = Invoice.search([
('partner_id', '=', partner.id),
('year', '=', self.year),
('type_contribution_id', '=', type_contribution)
])
if not exisiting_invoice:
member_invoice = Invoice.create({ member_invoice = Invoice.create({
'partner_id': partner.id, 'partner_id': partner.id,
'liasse_fiscale_id': liasse.id, 'liasse_fiscale_id': liasse.id,
...@@ -83,8 +90,15 @@ class ScopCotisation(models.AbstractModel): ...@@ -83,8 +90,15 @@ class ScopCotisation(models.AbstractModel):
'payment_mode_id': partner.customer_payment_mode_id.id, 'payment_mode_id': partner.customer_payment_mode_id.id,
'date_invoice': self.date_cotisation, 'date_invoice': self.date_cotisation,
}) })
else:
member_invoice = exisiting_invoice
# Création de la ligne CG Scop # Création de la ligne CG Scop
exisiting_invoice_line_ids = InvoiceLine.search([
('invoice_id', '=', member_invoice.id),
('product_id', '=', product.id)
])
if not exisiting_invoice_line_ids:
InvoiceLine.create({ InvoiceLine.create({
'invoice_id': member_invoice.id, 'invoice_id': member_invoice.id,
'product_id': product.id, 'product_id': product.id,
...@@ -93,6 +107,10 @@ class ScopCotisation(models.AbstractModel): ...@@ -93,6 +107,10 @@ class ScopCotisation(models.AbstractModel):
'name': product.name, 'name': product.name,
'price_unit': amount 'price_unit': amount
}) })
else:
exisiting_invoice_line_ids[0].write({
'price_unit': amount
})
return member_invoice return member_invoice
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter