From d8cd1c3fef8a05ec83dbe041df693eea802fa803 Mon Sep 17 00:00:00 2001 From: John BOTELLA Date: Fri, 28 Sep 2018 09:03:37 +0200 Subject: [PATCH] Fix total retained warranty --- htdocs/compta/facture/card.php | 15 +++++++++++++-- htdocs/compta/facture/list.php | 2 +- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/htdocs/compta/facture/card.php b/htdocs/compta/facture/card.php index 4974bcb4a39..2bf7be26b3f 100644 --- a/htdocs/compta/facture/card.php +++ b/htdocs/compta/facture/card.php @@ -4566,9 +4566,20 @@ else if ($id > 0 || ! empty($ref)) // Retained warranty : usualy use on construction industry if(!empty($object->situation_final) && !empty($object->retained_warranty) && $displayWarranty){ + // Billed - retained warranty - $retainedWarranty = $object->total_ttc * $object->retained_warranty / 100; - $billedWithRetainedWarranty = $object->total_ttc - $retainedWarranty ; + if($object->type == Facture::TYPE_SITUATION) + { + $retainedWarranty = $total_global_ttc * $object->retained_warranty / 100; + $billedWithRetainedWarranty = $total_global_ttc - $retainedWarranty ; + } + else + { + // Because one day retained warranty could be used on standard invoices + $retainedWarranty = $object->total_ttc * $object->retained_warranty / 100; + $billedWithRetainedWarranty = $object->total_ttc - $retainedWarranty ; + } + print '' . $langs->trans("ToPayOn", dol_print_date($object->date_lim_reglement, 'day')) . ' :' . price($billedWithRetainedWarranty) . ' '; // retained warranty diff --git a/htdocs/compta/facture/list.php b/htdocs/compta/facture/list.php index 389abafbbba..5fdc7dde6a5 100644 --- a/htdocs/compta/facture/list.php +++ b/htdocs/compta/facture/list.php @@ -173,7 +173,7 @@ $arrayfields=array( if($conf->global->INVOICE_USE_SITUATION && $conf->global->INVOICE_USE_SITUATION_RETAINED_WARRANTY) { - $arrayfields['f.retained_warranty'] = array('label'=>$langs->trans("RetainedWarranty"), 'checked'=>0, 'position'=>2000); + $arrayfields['f.retained_warranty'] = array('label'=>$langs->trans("RetainedWarranty"), 'checked'=>0); } // Extra fields