public function __construct($params = array())
{
foreach ($params as $param => $value) {
if (method_exists($this, 'set' . ucwords($param))) {
$this->{'set' . ucwords($param)}($value);
}
}
// Marca a data de emissão para hoje, caso não especificada
if (!$this->getDataDocumento()) {
$this->setDataDocumento(new Carbon());
}
// Marca a data de processamento para hoje, caso não especificada
if (!$this->getDataProcessamento()) {
$this->setDataProcessamento(new Carbon());
}
// Marca a data de vencimento para daqui a 5 dias, caso não especificada
if (!$this->getDataVencimento()) {
$this->setDataVencimento(new Carbon(date('Y-m-d', strtotime('+5 days'))));
}
}