update inventory 19 11
This commit is contained in:
parent
694ce9be17
commit
5b1028611a
@ -50,13 +50,17 @@ if (!defined('NOBROWSERNOTIF')) {
|
|||||||
define('NOBROWSERNOTIF', '1');
|
define('NOBROWSERNOTIF', '1');
|
||||||
}
|
}
|
||||||
require '../../../main.inc.php';
|
require '../../../main.inc.php';
|
||||||
//require_once DOL_DOCUMENT_ROOT.'/product/inventory/class/inventory.class.php';
|
//include_once DOL_DOCUMENT_ROOT.'/product/inventory/class/inventory.class.php';
|
||||||
|
$object = new Inventory($db);
|
||||||
|
|
||||||
|
|
||||||
$action = GETPOST("action", "alpha");
|
$action = GETPOST("action", "alpha");
|
||||||
$barcode = GETPOST("barcode", "aZ09");
|
$barcode = GETPOST("barcode", "aZ09");
|
||||||
$product = GETPOST("product");
|
$product = GETPOST("product");
|
||||||
$response = "";
|
$response = "";
|
||||||
$fk_entrepot = GETPOST("fk_entrepot", "int");
|
$fk_entrepot = GETPOST("fk_entrepot", "int");
|
||||||
|
$warehousefound = 0;
|
||||||
|
$warehouseid = 0;
|
||||||
if ($action == "existbarcode" && !empty($barcode)) {
|
if ($action == "existbarcode" && !empty($barcode)) {
|
||||||
$sql = "SELECT ps.fk_entrepot, ps.fk_product, p.barcode";
|
$sql = "SELECT ps.fk_entrepot, ps.fk_product, p.barcode";
|
||||||
$sql .= " FROM ".MAIN_DB_PREFIX."product_stock as ps JOIN ".MAIN_DB_PREFIX."product as p ON ps.fk_product = p.rowid";
|
$sql .= " FROM ".MAIN_DB_PREFIX."product_stock as ps JOIN ".MAIN_DB_PREFIX."product as p ON ps.fk_product = p.rowid";
|
||||||
@ -71,10 +75,19 @@ if ($action == "existbarcode" && !empty($barcode)) {
|
|||||||
$object = $db->fetch_object($resql);
|
$object = $db->fetch_object($resql);
|
||||||
if ($barcode == $object->barcode) {
|
if ($barcode == $object->barcode) {
|
||||||
if (!empty($object->fk_entrepot) && $product["Warehouse"] == $object->fk_entrepot) {
|
if (!empty($object->fk_entrepot) && $product["Warehouse"] == $object->fk_entrepot) {
|
||||||
//si warehouse !=$object->fk_entrepot erreur
|
$warehousefound++;
|
||||||
|
$warehouseid = $object->fk_entrepot;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if ($warehousefound < 1) {
|
||||||
|
$response = array('status'=>'error','errorcode'=>'NotFound','message'=>'No warehouse found for barcode'.$barcode);
|
||||||
|
} elseif ($warehousefound > 1) {
|
||||||
|
$response = array('status'=>'error','errorcode'=>'TooManyWarehouse','message'=>'Too many warehouse found');
|
||||||
|
} else {
|
||||||
|
$response = array('status'=>'success','message'=>'Warehouse found','warehouse'=>$warehouseid);
|
||||||
|
}
|
||||||
|
$response = json_encode($response);
|
||||||
} else {
|
} else {
|
||||||
$response = "No results found for barcode";
|
$response = "No results found for barcode";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -588,7 +588,7 @@ if ($object->id > 0) {
|
|||||||
alert("'.$langs->trans("ErrorWrongBarcodemode").' \""+barcodemode+"\"");
|
alert("'.$langs->trans("ErrorWrongBarcodemode").' \""+barcodemode+"\"");
|
||||||
throw"'.$langs->trans('ErrorWrongBarcodemode').' \""+barcodemode+"\"";
|
throw"'.$langs->trans('ErrorWrongBarcodemode').' \""+barcodemode+"\"";
|
||||||
}
|
}
|
||||||
)}
|
});
|
||||||
tabproduct.forEach(product => {
|
tabproduct.forEach(product => {
|
||||||
if(product.Qty!=0){
|
if(product.Qty!=0){
|
||||||
console.log("We change #"+product.Id+"_input to match input in scanner box");
|
console.log("We change #"+product.Id+"_input to match input in scanner box");
|
||||||
@ -605,12 +605,17 @@ if ($object->id > 0) {
|
|||||||
$.ajax({ url: \''.DOL_URL_ROOT.'/product/inventory/ajax/searchfrombarcode.php\',
|
$.ajax({ url: \''.DOL_URL_ROOT.'/product/inventory/ajax/searchfrombarcode.php\',
|
||||||
data: { "action":"existbarcode",'.(!empty($object->fk_warehouse)?'"fk_entrepot":'.$object->fk_warehouse.',':'').'"barcode":element,"product":product},
|
data: { "action":"existbarcode",'.(!empty($object->fk_warehouse)?'"fk_entrepot":'.$object->fk_warehouse.',':'').'"barcode":element,"product":product},
|
||||||
type: \'POST\',
|
type: \'POST\',
|
||||||
|
async: false,
|
||||||
success: function(response) {
|
success: function(response) {
|
||||||
console.log("test+1");
|
response = JSON.parse(response);
|
||||||
//gerer erreur si entrepot different
|
if(response.status == "success"){
|
||||||
|
console.log(response.message);
|
||||||
|
}else{
|
||||||
|
console.error(response.message);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
error : function(output) {
|
error : function(output) {
|
||||||
console.error("Error on Fetch of KM articles");
|
console.error("Error on barcodeserialforproduct function");
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
console.log("Product "+(index+=1)+": "+element);
|
console.log("Product "+(index+=1)+": "+element);
|
||||||
@ -623,20 +628,13 @@ if ($object->id > 0) {
|
|||||||
if(testonproduct == element){
|
if(testonproduct == element){
|
||||||
if(selectaddorreplace == "add"){
|
if(selectaddorreplace == "add"){
|
||||||
productqty = parseInt(product.Qty,10)
|
productqty = parseInt(product.Qty,10)
|
||||||
product.Qty = productqty + (1*barcodeproductqty)
|
product.Qty = productqty + barcodeproductqty
|
||||||
}else if(selectaddorreplace == "replace"){
|
}else if(selectaddorreplace == "replace"){
|
||||||
product.Qty = (1*barcodeproductqty)
|
product.Qty = barcodeproductqty
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
BarCodeDoesNotExist+=1;
|
BarCodeDoesNotExist+=1;
|
||||||
}
|
}
|
||||||
if(autodetect == false){
|
|
||||||
if(BarCodeDoesNotExist >= tabproduct.length && mode == "barcode"){
|
|
||||||
alert("'.$langs->trans('ProductBarcodeDoesNotExist').': "+element);
|
|
||||||
}else if(BarCodeDoesNotExist >= tabproduct.length && mode == "lotserial"){
|
|
||||||
alert("'.$langs->trans('ProductBatchDoesNotExist').': "+element);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
';
|
';
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user