NEW : Add product categories filter on product margin

This commit is contained in:
ATM-Nicolas 2018-01-10 10:24:42 +01:00
parent 301f509611
commit 30c6891b95
2 changed files with 18 additions and 0 deletions

View File

@ -85,3 +85,4 @@ CategorieRecursivHelp=Si activé : quand un élément est ajouté dans une cat
AddProductServiceIntoCategory=Ajouter le produit/service suivant
ShowCategory=Afficher tag/catégorie
ByDefaultInList=Par défaut dans la liste
ChooseCategory=Choisissez les catégories

View File

@ -37,6 +37,7 @@ $id = GETPOST('id', 'int');
$ref = GETPOST('ref', 'alpha');
$action=GETPOST('action','alpha');
$confirm=GETPOST('confirm','alpha');
$TSelectedCats=GETPOST('categories', 'array');
// Security check
$fieldvalue = (! empty($id) ? $id : (! empty($ref) ? $ref : ''));
@ -121,6 +122,16 @@ else {
}
// Categories
$TCats = $form->select_all_categories(0, array(), '', 64, 0, 1);
print '<tr>';
print '<td class="titlefield">'.$langs->trans('ChooseCategory').'</td>';
print '<td class="maxwidthonsmartphone" colspan="4">';
print $form->multiselectarray('categories', $TCats, $TSelectedCats, 0, 0, 'minwidth500');
print '</td>';
print '</tr>';
// Start date
print '<tr>';
print '<td class="titlefield">'.$langs->trans('DateStart').' ('.$langs->trans("DateValidation").')</td>';
@ -177,12 +188,18 @@ $sql.= " FROM ".MAIN_DB_PREFIX."societe as s";
$sql.= ", ".MAIN_DB_PREFIX."facture as f";
$sql.= ", ".MAIN_DB_PREFIX."facturedet as d";
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product as p ON p.rowid = d.fk_product";
if (! empty($TSelectedCats)) {
$sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'categorie_product as cp ON cp.fk_product=p.rowid';
}
$sql.= " WHERE f.fk_soc = s.rowid";
$sql.= ' AND f.entity IN ('.getEntity('facture').')';
$sql.= " AND f.fk_statut > 0";
$sql.= " AND d.fk_facture = f.rowid";
if ($id > 0)
$sql.= " AND d.fk_product =".$id;
if (! empty($TSelectedCats)) {
$sql .= ' AND cp.fk_categorie IN ('.implode(',', $TSelectedCats) . ')';
}
if (!empty($startdate))
$sql.= " AND f.datef >= '".$db->idate($startdate)."'";
if (!empty($enddate))