This commit is contained in:
2022-09-12 17:33:57 -03:00

View File

@ -150,25 +150,26 @@ abstract class Repository implements RepositoryInterface
public function fillData(Model $model, array $data): Model
{
foreach ($this->getRequired() as $column) {
$m = 'set' . ucwords($column);
$m = $this->getMethod($column, false);
$model->{$m}($data[$column]);
}
foreach ($this->getOptional() as $column) {
if (isset($data[$column])) {
$m = 'set' . ucwords($column);
$model->{$m}($data[$column]);
if (!isset($data[$column])) {
continue;
}
$m = $this->getMethod($column, false);
$model->{$m}($data[$column]);
}
return $model;
}
public function mapArray(Model $model, array $data): array
{
foreach ($this->getColumns() as $column) {
$m = $this->getMethod($column);
$val = $model->{$m}();
if (isset($data[$column])) {
continue;
}
$m = $this->getMethod($column);
$val = $model->{$m}();
$data[$column] = $val;
}
return $data;
@ -215,7 +216,7 @@ abstract class Repository implements RepositoryInterface
{
foreach ($this->getColumns() as $col) {
if (isset($data[$col])) {
$m = 'set' . ucwords($col);
$m = $this->getMethod($col, false);
$model->{$m}($data[$col]);
}
}