Selaa lähdekoodia

Clean option for replenishment on real stock.

Laurent Destailleur 4 vuotta sitten
vanhempi
commit
a98d025f5a
3 muutettua tiedostoa jossa 44 lisäystä ja 56 poistoa
  1. 5 3
      htdocs/admin/stock.php
  2. 3 2
      htdocs/langs/en_US/stocks.lang
  3. 36 51
      htdocs/product/stock/replenish.php

+ 5 - 3
htdocs/admin/stock.php

@@ -483,13 +483,15 @@ if ($virtualdiffersfromphysical)
 	print '</tr>'."\n";
 
 	print '<tr class="oddeven">';
-	print '<td>'.$langs->trans("UseVirtualStockByDefault").'</td>';
+	print '<td>';
+	print $form->textwithpicto($langs->trans("UseRealStockByDefault"), $langs->trans("ReplenishmentCalculation"));
+	print '</td>';
 	print '<td class="right">';
 	if ($conf->use_javascript_ajax) {
-		print ajax_constantonoff('STOCK_USE_VIRTUAL_STOCK');
+		print ajax_constantonoff('STOCK_USE_REAL_STOCK_BY_DEFAULT_FOR_REPLENISHMENT');
 	} else {
 		$arrval = array('0' => $langs->trans("No"), '1' => $langs->trans("Yes"));
-		print $form->selectarray("STOCK_USE_VIRTUAL_STOCK", $arrval, $conf->global->STOCK_USE_VIRTUAL_STOCK);
+		print $form->selectarray("STOCK_USE_REAL_STOCK_BY_DEFAULT_FOR_REPLENISHMENT", $arrval, $conf->global->STOCK_USE_REAL_STOCK_BY_DEFAULT_FOR_REPLENISHMENT);
 	}
 	print "</td>\n";
 	print "</tr>\n";

+ 3 - 2
htdocs/langs/en_US/stocks.lang

@@ -122,8 +122,9 @@ DesiredStockDesc=This stock amount will be the value used to fill the stock by r
 StockToBuy=To order
 Replenishment=Replenishment
 ReplenishmentOrders=Replenishment orders
-VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical + current orders) may differ
-UseVirtualStockByDefault=Use virtual stock by default, instead of physical stock, for replenishment feature
+VirtualDiffersFromPhysical=According to increase/decrease stock options, physical stock and virtual stock (physical stock + open orders) may differ
+UseRealStockByDefault=Use real stock, instead of virtual stock, for replenishment feature
+ReplenishmentCalculation=Amount to order will be (desired quantity - real stock) instead of (desired quantity - virtual stock) 
 UseVirtualStock=Use virtual stock
 UsePhysicalStock=Use physical stock
 CurentSelectionMode=Current selection mode

+ 36 - 51
htdocs/product/stock/replenish.php

@@ -80,7 +80,6 @@ if (!$sortorder) {
 	$sortorder = 'ASC';
 }
 
-// Define virtualdiffersfromphysical
 $virtualdiffersfromphysical = 0;
 if (!empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT)
 	|| !empty($conf->global->STOCK_CALCULATE_ON_SUPPLIER_DISPATCH_ORDER)
@@ -92,7 +91,11 @@ if (!empty($conf->global->STOCK_CALCULATE_ON_SHIPMENT)
 	$virtualdiffersfromphysical = 1; // According to increase/decrease stock options, virtual and physical stock may differs.
 }
 
-$usevirtualstock = !empty($conf->global->STOCK_USE_VIRTUAL_STOCK);
+if ($virtualdiffersfromphysical) {
+	$usevirtualstock = empty($conf->global->STOCK_USE_REAL_STOCK_BY_DEFAULT_FOR_REPLENISHMENT) ? 1 : 0;
+} else {
+	$usevirtualstock = 0;
+}
 if ($mode == 'physical') $usevirtualstock = 0;
 if ($mode == 'virtual') $usevirtualstock = 1;
 
@@ -526,22 +529,23 @@ print load_fiche_titre($langs->trans('Replenishment'), '', 'stock');
 
 print dol_get_fiche_head($head, 'replenish', '', -1, '');
 
-print '<span class="opacitymedium">'.$langs->trans("ReplenishmentStatusDesc").'</span><br>'."\n";
+print '<span class="opacitymedium">'.$langs->trans("ReplenishmentStatusDesc").'</span>'."\n";
 if (empty($fk_warhouse) && !empty($conf->global->STOCK_ALLOW_ADD_LIMIT_STOCK_BY_WAREHOUSE)) {
 	print '<span class="opacitymedium">'.$langs->trans("ReplenishmentStatusDescPerWarehouse").'</span>'."<br>\n";
 }
+print '<br>';
 if ($usevirtualstock == 1)
 {
 	print $langs->trans("CurentSelectionMode").': ';
-	print $langs->trans("CurentlyUsingVirtualStock");
-	print ' (<a href="'.$_SERVER["PHP_SELF"].'?mode=physical&fk_supplier='.$fk_supplier.'&fk_entrepot='.$fk_entrepot.'">'.$langs->trans("UsePhysicalStock").'</a>)';
+	print '<span class="a-mesure">'.$langs->trans("UseVirtualStock").'</span>';
+	print ' <a class="a-mesure-disabled" href="'.$_SERVER["PHP_SELF"].'?mode=physical&fk_supplier='.$fk_supplier.'&fk_entrepot='.$fk_entrepot.'">'.$langs->trans("UsePhysicalStock").'</a>';
 	print '<br>';
 }
 if ($usevirtualstock == 0)
 {
 	print $langs->trans("CurentSelectionMode").': ';
-	print $langs->trans("CurentlyUsingPhysicalStock");
-	print ' (<a href="'.$_SERVER["PHP_SELF"].'?mode=virtual&fk_supplier='.$fk_supplier.'&fk_entrepot='.$fk_entrepot.'">'.$langs->trans("UseVirtualStock").'</a>)';
+	print '<a class="a-mesure-disabled" href="'.$_SERVER["PHP_SELF"].'?mode=virtual&fk_supplier='.$fk_supplier.'&fk_entrepot='.$fk_entrepot.'">'.$langs->trans("UseVirtualStock").'</a>';
+	print ' <span class="a-mesure">'.$langs->trans("UsePhysicalStock").'</span>';
 	print '<br>';
 }
 print '<br>'."\n";
@@ -591,54 +595,33 @@ print '<input type="hidden" name="mode" value="'.$mode.'">';
 
 
 if ($search_ref || $search_label || $sall || $salert || $draftorder || GETPOST('search', 'alpha')) {
-	$filters = '&search_ref='.$search_ref.'&search_label='.$search_label;
-	$filters .= '&sall='.$sall;
-	$filters .= '&salert='.$salert;
-	$filters .= '&draftorder='.$draftorder;
-	$filters .= '&mode='.$mode;
-	$filters .= '&fk_supplier='.$fk_supplier;
-	$filters .= '&fk_entrepot='.$fk_entrepot;
-	print_barre_liste(
-		$texte,
-		$page,
-		'replenish.php',
-		$filters,
-		$sortfield,
-		$sortorder,
-		'',
-		$num
-	);
+	$filters = '&search_ref='.urlencode($search_ref).'&search_label='.urlencode($search_label);
+	$filters .= '&sall='.urlencode($sall);
+	$filters .= '&salert='.urlencode($salert);
+	$filters .= '&draftorder='.urlencode($draftorder);
+	$filters .= '&mode='.urlencode($mode);
+	$filters .= '&fk_supplier='.urlencode($fk_supplier);
+	$filters .= '&fk_entrepot='.urlencode($fk_entrepot);
 } else {
-	$filters = '&search_ref='.$search_ref.'&search_label='.$search_label;
-	$filters .= '&fourn_id='.$fourn_id;
-	$filters .= (isset($type) ? '&type='.$type : '');
-	$filters .= '&='.$salert;
-	$filters .= '&draftorder='.$draftorder;
-	$filters .= '&mode='.$mode;
-	$filters .= '&fk_supplier='.$fk_supplier;
-	$filters .= '&fk_entrepot='.$fk_entrepot;
-	print_barre_liste(
-		$texte,
-		$page,
-		'replenish.php',
-		$filters,
-		$sortfield,
-		$sortorder,
-		'',
-		$num
-	);
+	$filters = '&search_ref='.urlencode($search_ref).'&search_label='.urlencode($search_label);
+	$filters .= '&fourn_id='.urlencode($fourn_id);
+	$filters .= (isset($type) ? '&type='.urlencode($type) : '');
+	$filters .= '&='.urlencode($salert);
+	$filters .= '&draftorder='.urlencode($draftorder);
+	$filters .= '&mode='.urlencode($mode);
+	$filters .= '&fk_supplier='.urlencode($fk_supplier);
+	$filters .= '&fk_entrepot='.urlencode($fk_entrepot);
 }
-
 if ($limit > 0 && $limit != $conf->liste_limit) {
 	$filters .= '&limit='.urlencode($limit);
 }
 
-$param = (isset($type) ? '&type='.$type : '');
-$param .= '&fourn_id='.$fourn_id.'&search_label='.$search_label.'&includeproductswithoutdesiredqty='.$includeproductswithoutdesiredqty.'&salert='.$salert.'&draftorder='.$draftorder;
-$param .= '&search_ref='.$search_ref;
-$param .= '&mode='.$mode;
-$param .= '&fk_supplier='.$fk_supplier;
-$param .= '&fk_entrepot='.$fk_entrepot;
+$param = (isset($type) ? '&type='.urlencode($type) : '');
+$param .= '&fourn_id='.urlencode($fourn_id).'&search_label='.urlencode($search_label).'&includeproductswithoutdesiredqty='.urlencode($includeproductswithoutdesiredqty).'&salert='.urlencode($salert).'&draftorder='.urlencode($draftorder);
+$param .= '&search_ref='.urlencode($search_ref);
+$param .= '&mode='.urlencode($mode);
+$param .= '&fk_supplier='.urlencode($fk_supplier);
+$param .= '&fk_entrepot='.urlencode($fk_entrepot);
 
 $stocklabel = $langs->trans('Stock');
 $stocklabelbis = $langs->trans('Stock');
@@ -651,6 +634,8 @@ if (!empty($conf->global->STOCK_ALLOW_ADD_LIMIT_STOCK_BY_WAREHOUSE) && $fk_entre
 }
 $texte = $langs->trans('Replenishment');
 
+print '<br>';
+
 print '<div class="div-table-responsive">'; // You can use div-table-responsive-no-min if you dont need reserved height for your table
 
 if (!empty($conf->global->REPLENISH_ALLOW_VARIABLESIZELIST)) {
@@ -664,7 +649,7 @@ if (!empty($conf->global->REPLENISH_ALLOW_VARIABLESIZELIST)) {
 		'',
 		$num,
 		$nbtotalofrecords,
-		'object_stock.png',
+		'',
 		0,
 		'',
 		'',
@@ -681,7 +666,7 @@ if (!empty($conf->global->REPLENISH_ALLOW_VARIABLESIZELIST)) {
 		'',
 		$num,
 		$nbtotalofrecords,
-		'object_stock.png'
+		''
 	);
 }