From f1e4c8077119fb9ced89c5dce71e77dc7b43f5fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20FRANCE?= Date: Sat, 23 Feb 2019 16:39:15 +0100 Subject: [PATCH] Update api_invoices.class.php --- htdocs/compta/facture/class/api_invoices.class.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/htdocs/compta/facture/class/api_invoices.class.php b/htdocs/compta/facture/class/api_invoices.class.php index afecfd33b45..cf3bb133558 100644 --- a/htdocs/compta/facture/class/api_invoices.class.php +++ b/htdocs/compta/facture/class/api_invoices.class.php @@ -587,7 +587,7 @@ class Invoices extends DolibarrApi * * @param int $id Id of invoice * @param array $request_data InvoiceLine data - * + *$this->db->begin(); * @url POST {id}/lines * * @return int @@ -940,8 +940,6 @@ class Invoices extends DolibarrApi throw new RestException(401); } - $this->db->begin(); - $result = $this->invoice->fetch($id); if( ! $result ) { throw new RestException(404, 'Invoice not found'); @@ -958,10 +956,14 @@ class Invoices extends DolibarrApi if (! $this->invoice->paye) // protection against multiple submit { + $this->db->begin(); $this->invoice->fetch_lines(); // Loop on each vat rate $i=0; + $amount_ht = array(); + $amount_tva = array(); + $amount_ttc = array(); foreach($this->invoice->lines as $line) { $amount_ht[$line->tva_tx]+=$line->total_ht; @@ -1009,14 +1011,14 @@ class Invoices extends DolibarrApi } else { - throw new RestException(500, 'Could not set paid'); $this->db->rollback(); + throw new RestException(500, 'Could not set paid'); } } else { - throw new RestException(500, 'Discount creation error'); $this->db->rollback(); + throw new RestException(500, 'Discount creation error'); } }