From 63af8594ab68c63a08f30ff55042213aadb8662e Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Tue, 28 Jan 2020 21:22:25 +0100 Subject: [PATCH 1/5] Wait search finished before add product with enter --- htdocs/takepos/takepos.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/htdocs/takepos/takepos.php b/htdocs/takepos/takepos.php index ed9374cd41f..0c594bc3f13 100644 --- a/htdocs/takepos/takepos.php +++ b/htdocs/takepos/takepos.php @@ -440,7 +440,7 @@ function New() { function Search2() { console.log("Search2 Call ajax search to replace products"); - if(window.event.keyCode == 13) ClickProduct(0); + if(window.event.keyCode == 13) var key=13; pageproducts=0; jQuery(".wrapper2 .catwatermark").hide(); $.getJSON('/takepos/ajax/ajax.php?action=search&term='+$('#search').val(), function(data) { @@ -459,7 +459,9 @@ function Search2() { $("#prodiv"+i).data("rowid", data[i]['rowid']); $("#prodiv"+i).data("iscat", 0); } - }); + }).always(function() { + if(key==13) ClickProduct(0); + }); } function Edit(number) { From 0beb78a9782dec37a64070c80903889eb2870b3e Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Tue, 28 Jan 2020 22:14:13 +0100 Subject: [PATCH 2/5] Min. sell price when updateprice --- htdocs/takepos/invoice.php | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/htdocs/takepos/invoice.php b/htdocs/takepos/invoice.php index 4570af44a03..7ae5e621369 100644 --- a/htdocs/takepos/invoice.php +++ b/htdocs/takepos/invoice.php @@ -392,10 +392,24 @@ if ($action == "updateprice") { foreach ($invoice->lines as $line) { - if ($line->id == $idline) { $result = $invoice->updateline($line->id, $line->desc, $number, $line->qty, $line->remise_percent, $line->date_start, $line->date_end, $line->tva_tx, $line->localtax1_tx, $line->localtax2_tx, 'TTC', $line->info_bits, $line->product_type, $line->fk_parent_line, 0, $line->fk_fournprice, $line->pa_ht, $line->label, $line->special_code, $line->array_options, $line->situation_percent, $line->fk_unit); + if ($line->id == $idline) + { + $prod = new Product($db); + $prod->fetch($line->fk_product); + $customer = new Societe($db); + $customer->fetch($invoice->socid); + $datapriceofproduct = $prod->getSellPrice($mysoc, $customer, 0); + $price_min = $datapriceofproduct['price_min']; + $usercanproductignorepricemin = ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS)); + $pu_ht = price2num($number / (1 + ($line->tva_tx / 100)), 'MU'); + //Check min price + if ($usercanproductignorepricemin && (!empty($price_min) && (price2num($pu_ht) * (1 - price2num($line->remise_percent) / 100) < price2num($price_min)))) + { + echo $langs->trans("CantBeLessThanMinPrice"); + } + else $result = $invoice->updateline($line->id, $line->desc, $number, $line->qty, $line->remise_percent, $line->date_start, $line->date_end, $line->tva_tx, $line->localtax1_tx, $line->localtax2_tx, 'TTC', $line->info_bits, $line->product_type, $line->fk_parent_line, 0, $line->fk_fournprice, $line->pa_ht, $line->label, $line->special_code, $line->array_options, $line->situation_percent, $line->fk_unit); } } - $invoice->fetch($placeid); } From 691514be2419ce6ab39d903557a96733439a9821 Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Tue, 28 Jan 2020 22:18:23 +0100 Subject: [PATCH 3/5] Min. sell price updateprice --- htdocs/takepos/invoice.php | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/htdocs/takepos/invoice.php b/htdocs/takepos/invoice.php index 4570af44a03..7ae5e621369 100644 --- a/htdocs/takepos/invoice.php +++ b/htdocs/takepos/invoice.php @@ -392,10 +392,24 @@ if ($action == "updateprice") { foreach ($invoice->lines as $line) { - if ($line->id == $idline) { $result = $invoice->updateline($line->id, $line->desc, $number, $line->qty, $line->remise_percent, $line->date_start, $line->date_end, $line->tva_tx, $line->localtax1_tx, $line->localtax2_tx, 'TTC', $line->info_bits, $line->product_type, $line->fk_parent_line, 0, $line->fk_fournprice, $line->pa_ht, $line->label, $line->special_code, $line->array_options, $line->situation_percent, $line->fk_unit); + if ($line->id == $idline) + { + $prod = new Product($db); + $prod->fetch($line->fk_product); + $customer = new Societe($db); + $customer->fetch($invoice->socid); + $datapriceofproduct = $prod->getSellPrice($mysoc, $customer, 0); + $price_min = $datapriceofproduct['price_min']; + $usercanproductignorepricemin = ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS)); + $pu_ht = price2num($number / (1 + ($line->tva_tx / 100)), 'MU'); + //Check min price + if ($usercanproductignorepricemin && (!empty($price_min) && (price2num($pu_ht) * (1 - price2num($line->remise_percent) / 100) < price2num($price_min)))) + { + echo $langs->trans("CantBeLessThanMinPrice"); + } + else $result = $invoice->updateline($line->id, $line->desc, $number, $line->qty, $line->remise_percent, $line->date_start, $line->date_end, $line->tva_tx, $line->localtax1_tx, $line->localtax2_tx, 'TTC', $line->info_bits, $line->product_type, $line->fk_parent_line, 0, $line->fk_fournprice, $line->pa_ht, $line->label, $line->special_code, $line->array_options, $line->situation_percent, $line->fk_unit); } } - $invoice->fetch($placeid); } From 13ee716b782231d07abcdeb12bda1be406b72234 Mon Sep 17 00:00:00 2001 From: andreubisquerra Date: Tue, 28 Jan 2020 22:21:19 +0100 Subject: [PATCH 4/5] Min. sell price updatereduction --- htdocs/takepos/invoice.php | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/htdocs/takepos/invoice.php b/htdocs/takepos/invoice.php index 7ae5e621369..77c59b090ca 100644 --- a/htdocs/takepos/invoice.php +++ b/htdocs/takepos/invoice.php @@ -417,11 +417,25 @@ if ($action == "updatereduction") { foreach ($invoice->lines as $line) { - if ($line->id == $idline) { $result = $invoice->updateline($line->id, $line->desc, $line->subprice, $line->qty, $number, $line->date_start, $line->date_end, $line->tva_tx, $line->localtax1_tx, $line->localtax2_tx, 'HT', $line->info_bits, $line->product_type, $line->fk_parent_line, 0, $line->fk_fournprice, $line->pa_ht, $line->label, $line->special_code, $line->array_options, $line->situation_percent, $line->fk_unit); - } + if ($line->id == $idline) + { + $prod = new Product($db); + $prod->fetch($line->fk_product); + $customer = new Societe($db); + $customer->fetch($invoice->socid); + $datapriceofproduct = $prod->getSellPrice($mysoc, $customer, 0); + $price_min = $datapriceofproduct['price_min']; + $usercanproductignorepricemin = ((!empty($conf->global->MAIN_USE_ADVANCED_PERMS) && empty($user->rights->produit->ignore_price_min_advance)) || empty($conf->global->MAIN_USE_ADVANCED_PERMS)); + $pu_ht = price2num($line->multicurrency_subprice / (1 + ($line->tva_tx / 100)), 'MU'); + //Check min price + if ($usercanproductignorepricemin && (!empty($price_min) && (price2num($line->multicurrency_subprice) * (1 - price2num($number) / 100) < price2num($price_min)))) + { + echo $langs->trans("CantBeLessThanMinPrice"); + } + else $result = $invoice->updateline($line->id, $line->desc, $line->multicurrency_subprice, $line->qty, $number, $line->date_start, $line->date_end, $line->tva_tx, $line->localtax1_tx, $line->localtax2_tx, 'HT', $line->info_bits, $line->product_type, $line->fk_parent_line, 0, $line->fk_fournprice, $line->pa_ht, $line->label, $line->special_code, $line->array_options, $line->situation_percent, $line->fk_unit); + } } - - $invoice->fetch($placeid); + $invoice->fetch($placeid); } if ($action == "order" and $placeid != 0) From 862da5b646419b807c6a148afb9552240e9a87a4 Mon Sep 17 00:00:00 2001 From: oscim Date: Wed, 29 Jan 2020 08:08:15 +0100 Subject: [PATCH 5/5] Update result.php fix error for display detail of account 6xxx. this account is < 0, but is not null --- htdocs/compta/resultat/result.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/compta/resultat/result.php b/htdocs/compta/resultat/result.php index 6e91ef53e2b..97b04158e34 100644 --- a/htdocs/compta/resultat/result.php +++ b/htdocs/compta/resultat/result.php @@ -505,7 +505,7 @@ elseif ($modecompta=="BOOKKEEPING") $resultNP = $totPerAccount[$cpt['account_number']]['NP']; $resultN = $totPerAccount[$cpt['account_number']]['N']; - if ($showaccountdetail == 'all' || $resultN > 0) { + if ($showaccountdetail == 'all' || $resultN != 0) { print ''; print ''; print '';