Miglioramento evasione automatica

This commit is contained in:
Thomas Zilio 2019-04-04 08:41:04 -07:00
parent 90f92a198a
commit 514acf0312
3 changed files with 33 additions and 19 deletions

View File

@ -91,20 +91,11 @@ abstract class Article extends Row
throw new UnexpectedValueException();
}
$previous = $this->qta;
$diff = $value - $previous;
$this->attributes['qta'] = $value;
$diff = parent::setQtaAttribute($value);
if ($this->abilita_movimentazione) {
$this->qta_movimentazione += $diff;
}
$this->evasioneAltriArticoli();
}
public function evasioneAltriArticoli($diff)
{
}
public function articolo()
@ -133,13 +124,6 @@ abstract class Article extends Row
return parent::save($options);
}
public function delete()
{
$this->evasioneAltriArticoli(-$this->qta);
return parent::delete();
}
protected static function boot()
{
parent::boot(true);

View File

@ -23,6 +23,36 @@ abstract class Description extends Model
return $model;
}
/**
* Modifica la quantità dell'elemento.
*
* @param float $value
*
* @return float
*/
public function setQtaAttribute($value)
{
$previous = $this->qta;
$diff = $value - $previous;
$this->attributes['qta'] = $value;
$this->evasione($diff);
return $diff;
}
public function evasione($diff)
{
}
public function delete()
{
$this->evasione(-$this->qta);
return parent::delete();
}
/**
* Imposta il proprietario dell'oggetto e l'ordine relativo all'interno delle righe.
*

View File

@ -57,9 +57,9 @@ class Articolo extends Article
]);
}
public function evasioneAltriArticoli($diff)
public function evasione($diff)
{
parent::evasioneAltriArticoli($diff);
parent::evasione($diff);
$database = database();