Add demo information and transsaction management

This commit is contained in:
florian HENRY
2016-05-23 09:16:47 +02:00
parent 8afaf07810
commit 4e707af0fd
2 changed files with 45 additions and 6 deletions

View File

@@ -119,6 +119,7 @@ class InterfaceDemo extends DolibarrTriggers
case 'ORDER_CANCEL': case 'ORDER_CANCEL':
case 'ORDER_SENTBYMAIL': case 'ORDER_SENTBYMAIL':
case 'ORDER_CLASSIFY_BILLED': case 'ORDER_CLASSIFY_BILLED':
case 'ORDER_SETDRAFT':
case 'LINEORDER_INSERT': case 'LINEORDER_INSERT':
case 'LINEORDER_UPDATE': case 'LINEORDER_UPDATE':
case 'LINEORDER_DELETE': case 'LINEORDER_DELETE':
@@ -258,6 +259,9 @@ class InterfaceDemo extends DolibarrTriggers
case 'SHIPPING_MODIFY': case 'SHIPPING_MODIFY':
case 'SHIPPING_VALIDATE': case 'SHIPPING_VALIDATE':
case 'SHIPPING_SENTBYMAIL': case 'SHIPPING_SENTBYMAIL':
case 'SHIPPING_BILLED':
case 'SHIPPING_CLOSED':
case 'SHIPPING_REOPEN':
case 'SHIPPING_DELETE': case 'SHIPPING_DELETE':
dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id); dol_syslog("Trigger '".$this->name."' for action '$action' launched by ".__FILE__.". id=".$object->id);
break; break;

View File

@@ -1798,6 +1798,10 @@ class Expedition extends CommonObject
function setClosed() function setClosed()
{ {
$error=0;
$this->db->begin();
$sql = 'UPDATE '.MAIN_DB_PREFIX.'expedition SET fk_statut=2'; $sql = 'UPDATE '.MAIN_DB_PREFIX.'expedition SET fk_statut=2';
$sql .= ' WHERE rowid = '.$this->id.' AND fk_statut > 0'; $sql .= ' WHERE rowid = '.$this->id.' AND fk_statut > 0';
@@ -1810,15 +1814,23 @@ class Expedition extends CommonObject
// Call trigger // Call trigger
$result=$this->call_trigger('SHIPPING_CLOSED',$user); $result=$this->call_trigger('SHIPPING_CLOSED',$user);
if ($result < 0) { if ($result < 0) {
return -1; $error++;
} }
// End call triggers
} else {
$error++;
$this->errors[]=$this->db->lasterror;
}
if (empty($error)) {
$this->db->commit();
return 1; return 1;
} }
else else
{ {
$this->db->rollback();
dol_print_error($this->db); dol_print_error($this->db);
return -1; return -1;
} }
} }
@@ -1830,6 +1842,9 @@ class Expedition extends CommonObject
*/ */
function set_billed() function set_billed()
{ {
$error=0;
$this->db->begin();
$sql = 'UPDATE '.MAIN_DB_PREFIX.'expedition SET fk_statut=2, billed=1'; // TODO Update only billed $sql = 'UPDATE '.MAIN_DB_PREFIX.'expedition SET fk_statut=2, billed=1'; // TODO Update only billed
$sql .= ' WHERE rowid = '.$this->id.' AND fk_statut > 0'; $sql .= ' WHERE rowid = '.$this->id.' AND fk_statut > 0';
@@ -1843,16 +1858,23 @@ class Expedition extends CommonObject
// Call trigger // Call trigger
$result=$this->call_trigger('SHIPPING_BILLED',$user); $result=$this->call_trigger('SHIPPING_BILLED',$user);
if ($result < 0) { if ($result < 0) {
return -1; $error++;
} }
// End call triggers
} else {
$error++;
$this->errors[]=$this->db->lasterror;
}
if (empty($error)) {
$this->db->commit();
return 1; return 1;
} }
else else
{ {
$this->db->rollback();
dol_print_error($this->db); dol_print_error($this->db);
return -1; return -1;
} }
} }
@@ -1865,6 +1887,10 @@ class Expedition extends CommonObject
function reOpen() function reOpen()
{ {
$error=0;
$this->db->begin();
$sql = 'UPDATE '.MAIN_DB_PREFIX.'expedition SET fk_statut=1'; $sql = 'UPDATE '.MAIN_DB_PREFIX.'expedition SET fk_statut=1';
$sql .= ' WHERE rowid = '.$this->id.' AND fk_statut > 0'; $sql .= ' WHERE rowid = '.$this->id.' AND fk_statut > 0';
@@ -1877,14 +1903,23 @@ class Expedition extends CommonObject
// Call trigger // Call trigger
$result=$this->call_trigger('SHIPPING_REOPEN',$user); $result=$this->call_trigger('SHIPPING_REOPEN',$user);
if ($result < 0) { if ($result < 0) {
return -1; $error++;
} }
} else {
$error++;
$this->errors[]=$this->db->lasterror;
}
if (empty($error)) {
$this->db->commit();
return 1; return 1;
} }
else else
{ {
$this->db->rollback();
dol_print_error($this->db); dol_print_error($this->db);
return -1; return -1;
} }
} }