diff --git a/htdocs/product/stock/class/entrepot.class.php b/htdocs/product/stock/class/entrepot.class.php index 4554d82000e..8ff30ceebec 100644 --- a/htdocs/product/stock/class/entrepot.class.php +++ b/htdocs/product/stock/class/entrepot.class.php @@ -28,10 +28,8 @@ require_once(DOL_DOCUMENT_ROOT."/core/class/commonobject.class.php"); /** - * \class Entrepot - * \brief Classe permettant la gestion des entrepots + * Class to manage warehouses */ - class Entrepot extends CommonObject { public $element='label'; @@ -52,11 +50,11 @@ class Entrepot extends CommonObject /** * Constructor * - * @param DoliDB $DB Database handler + * @param DoliDB $db Database handler */ - function Entrepot($DB) + function __construct($db) { - $this->db = $DB; + $this->db = $db; // List of short language codes for status $this->statuts[0] = 'Closed2'; @@ -78,12 +76,14 @@ class Entrepot extends CommonObject return 0; } + $now=dol_now(); + $this->db->begin(); $sql = "INSERT INTO ".MAIN_DB_PREFIX."entrepot (datec, fk_user_author, label)"; - $sql .= " VALUES (".$this->db->idate(mktime()).",".$user->id.",'".$this->db->escape($this->libelle)."')"; + $sql .= " VALUES (".$this->db->idate($now).",".$user->id.",'".$this->db->escape($this->libelle)."')"; - dol_syslog("Entrepot::create sql=".$sql); + dol_syslog(get_class($this)."::create sql=".$sql); $result=$this->db->query($sql); if ($result) { @@ -99,21 +99,21 @@ class Entrepot extends CommonObject } else { - dol_syslog("Entrepot::Create return -3"); + dol_syslog(get_class($this)."::create return -3"); $this->db->rollback(); return -3; } } else { $this->error="Failed to get insert id"; - dol_syslog("Entrepot::Create return -2"); + dol_syslog(get_class($this)."::create return -2"); return -2; } } else { $this->error=$this->db->error(); - dol_syslog("Entrepot::Create Error ".$this->db->error()); + dol_syslog(get_class($this)."::create Error ".$this->db->error()); $this->db->rollback(); return -1; } @@ -153,7 +153,7 @@ class Entrepot extends CommonObject $this->db->begin(); - dol_syslog("Entrepot::update sql=".$sql); + dol_syslog(get_class($this)."::update sql=".$sql); $resql=$this->db->query($sql); if ($resql) { @@ -164,7 +164,7 @@ class Entrepot extends CommonObject { $this->db->rollback(); $this->error=$this->db->lasterror(); - dol_syslog("Entrepot::update ".$this->error, LOG_ERR); + dol_syslog(get_class($this)."::update ".$this->error, LOG_ERR); return -1; } } @@ -196,7 +196,7 @@ class Entrepot extends CommonObject $sql = "DELETE FROM ".MAIN_DB_PREFIX."entrepot"; $sql.= " WHERE rowid = " . $this->id; - dol_syslog("Entrepot::delete sql=".$sql); + dol_syslog(get_class($this)."::delete sql=".$sql); $resql=$this->db->query($sql); if ($resql) { @@ -207,7 +207,7 @@ class Entrepot extends CommonObject { $this->db->rollback(); $this->error=$this->db->lasterror(); - dol_syslog("Entrepot::delete ".$this->error, LOG_ERR); + dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); return -1; } } @@ -215,7 +215,7 @@ class Entrepot extends CommonObject { $this->db->rollback(); $this->error=$this->db->lasterror(); - dol_syslog("Entrepot::delete ".$this->error, LOG_ERR); + dol_syslog(get_class($this)."::delete ".$this->error, LOG_ERR); return -1; } @@ -234,7 +234,7 @@ class Entrepot extends CommonObject $sql .= " FROM ".MAIN_DB_PREFIX."entrepot"; $sql .= " WHERE rowid = ".$id; - dol_syslog("Entrepot::fetch sql=".$sql); + dol_syslog(get_class($this)."::fetch sql=".$sql); $result = $this->db->query($sql); if ($result) { @@ -254,25 +254,13 @@ class Entrepot extends CommonObject $this->town = $obj->town; $this->country_id = $obj->country_id; - if ($this->country_id) - { - $sqlp = "SELECT code,libelle from ".MAIN_DB_PREFIX."c_pays where rowid = ".$this->country_id; - $resql=$this->db->query($sqlp); - if ($resql) - { - $objp = $this->db->fetch_object($resql); - } - else - { - dol_print_error($this->db); - } - $this->pays=$objp->libelle; - $this->pays_code=$objp->code; - $this->country=$objp->libelle; - $this->country_code=$objp->code; - } + include_once(DOL_DOCUMENT_ROOT.'/core/lib/company.lib.php'); + $tmp=getCountry($this->country_id,'all'); + $this->pays=$tmp['label']; + $this->pays_code=$tmp['code']; + $this->country=$tmp['label']; + $this->country_code=$tmp['code']; - $this->db->free($result); return 1; } else diff --git a/htdocs/product/stock/mouvement.php b/htdocs/product/stock/mouvement.php index 24705f4069a..5797b3671a3 100644 --- a/htdocs/product/stock/mouvement.php +++ b/htdocs/product/stock/mouvement.php @@ -36,6 +36,7 @@ $langs->load("stocks"); if (!$user->rights->produit->lire) accessforbidden(); +$id=GETPOST('id','int'); $idproduct = isset($_GET["idproduct"])?$_GET["idproduct"]:$_PRODUCT["idproduct"]; $year = isset($_GET["year"])?$_GET["year"]:$_POST["year"]; $month = isset($_GET["month"])?$_GET["month"]:$_POST["month"]; @@ -79,16 +80,16 @@ $sql.= " e.label as stock, e.rowid as entrepot_id,"; $sql.= " m.rowid as mid, m.value, m.datem, m.fk_user_author, m.label,"; $sql.= " u.login"; $sql.= " FROM (".MAIN_DB_PREFIX."entrepot as e,"; -$sql.= " ".MAIN_DB_PREFIX."stock_mouvement as m,"; -$sql.= " ".MAIN_DB_PREFIX."product as p)"; +$sql.= " ".MAIN_DB_PREFIX."product as p,"; +$sql.= " ".MAIN_DB_PREFIX."stock_mouvement as m)"; $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."user as u ON m.fk_user_author = u.rowid"; $sql.= " WHERE m.fk_product = p.rowid"; $sql.= " AND m.fk_entrepot = e.rowid"; $sql.= " AND e.entity = ".$conf->entity; if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) $sql.= " AND p.fk_product_type = 0"; -if ($_GET["id"]) +if ($id) { - $sql.= " AND e.rowid ='".$_GET["id"]."'"; + $sql.= " AND e.rowid ='".$id."'"; } if ($month > 0) { @@ -119,7 +120,7 @@ if (! empty($search_user)) } if (! empty($_GET['idproduct'])) { - $sql.= " AND p.rowid = '".$_GET['idproduct']."'"; + $sql.= " AND p.rowid = '".$idproduct."'"; } $sql.= $db->order($sortfield,$sortorder); $sql.= $db->plimit($conf->liste_limit+1, $offset); @@ -139,7 +140,7 @@ if ($resql) if ($_GET["id"]) { $entrepot = new Entrepot($db); - $result = $entrepot->fetch($_GET["id"]); + $result = $entrepot->fetch($id); if ($result < 0) { dol_print_error($db); @@ -156,7 +157,7 @@ if ($resql) /* * Show tab only if we ask a particular warehouse */ - if ($_GET["id"]) + if ($id) { $head = stock_prepare_head($entrepot); @@ -180,18 +181,18 @@ if ($resql) print $entrepot->address; print ''; - // Ville - print ''.$langs->trans('Zip').''.$entrepot->cp.''; - print ''.$langs->trans('Town').''.$entrepot->ville.''; + // Town + print ''.$langs->trans('Zip').''.$entrepot->zip.''; + print ''.$langs->trans('Town').''.$entrepot->town.''; // Country print ''.$langs->trans('Country').''; $img=picto_from_langcode($entrepot->country_code); print ($img?$img.' ':''); - print $entrepot->pays; + print $entrepot->country; print ''; - // Statut + // Status print ''.$langs->trans("Status").''.$entrepot->getLibStatut(4).''; $calcproducts=$entrepot->nb_products(); @@ -207,7 +208,7 @@ if ($resql) print ""; // Last movement - $sql = "SELECT max(m.datem) as datem"; + $sql = "SELECT MAX(m.datem) as datem"; $sql .= " FROM ".MAIN_DB_PREFIX."stock_mouvement as m"; $sql .= " WHERE m.fk_entrepot = '".$entrepot->id."'"; $resqlbis = $db->query($sql); @@ -238,7 +239,7 @@ if ($resql) } $param=''; - if ($_GET["id"]) $param.='&id='.$_GET["id"]; + if ($id) $param.='&id='.$id; if ($search_movement) $param.='&search_movement='.urlencode($search_movement); if ($search_product) $param.='&search_product='.urlencode($search_product); if ($search_warehouse) $param.='&search_warehouse='.urlencode($search_warehouse); @@ -246,7 +247,7 @@ if ($resql) if ($snom) $param.='&snom='.urlencode($snom); if ($search_user) $param.='&search_user='.urlencode($search_user); if ($idproduct > 0) $param.='&idproduct='.$idproduct; - if ($_GET["id"]) print_barre_liste($texte, $page, "mouvement.php", $param, $sortfield, $sortorder,'',$num,0,''); + if ($id) print_barre_liste($texte, $page, "mouvement.php", $param, $sortfield, $sortorder,'',$num,0,''); else print_barre_liste($texte, $page, "mouvement.php", $param, $sortfield, $sortorder,'',$num); print ''; @@ -255,20 +256,20 @@ if ($resql) print_liste_field_titre($langs->trans("Date"),$_SERVER["PHP_SELF"], "m.datem","",$param,"",$sortfield,$sortorder); print_liste_field_titre($langs->trans("Label"),$_SERVER["PHP_SELF"], "m.label","",$param,"",$sortfield,$sortorder); print_liste_field_titre($langs->trans("Product"),$_SERVER["PHP_SELF"], "p.ref","",$param,"",$sortfield,$sortorder); - print_liste_field_titre($langs->trans("Warehouse"),$_SERVER["PHP_SELF"], "s.label","",$param,"",$sortfield,$sortorder); + print_liste_field_titre($langs->trans("Warehouse"),$_SERVER["PHP_SELF"], "e.label","",$param,"",$sortfield,$sortorder); print_liste_field_titre($langs->trans("Author"),$_SERVER["PHP_SELF"], "m.fk_user_author","",$param,"",$sortfield,$sortorder); print_liste_field_titre($langs->trans("Units"),$_SERVER["PHP_SELF"], "m.value","",$param,'align="right"',$sortfield,$sortorder); print "\n"; // Lignes des champs de filtre print ''; + if ($id) print ''; print ''; print ''; // Label of movement
'; print $langs->trans('Month').': '; print ' '.$langs->trans('Year').': '; - $max_year = date("Y"); - $syear = $year; + $syear = GETPOST('year')?GETPOST('year'):-1; $formother->select_year($syear,'year',1, 20, 5); print '