this makes possible adding extra attributes to models
This commit is contained in:
parent
962e626c9e
commit
5878c96c3a
@ -21,10 +21,23 @@ abstract class Model extends Eloquent
|
|||||||
'enabled' => 'boolean',
|
'enabled' => 'boolean',
|
||||||
];
|
];
|
||||||
|
|
||||||
public $extras = [
|
public $allAttributes = [
|
||||||
//
|
//
|
||||||
];
|
];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new Eloquent model instance.
|
||||||
|
*
|
||||||
|
* @param array $attributes
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function __construct(array $attributes = [])
|
||||||
|
{
|
||||||
|
$this->allAttributes = $attributes;
|
||||||
|
|
||||||
|
parent::__construct($attributes);
|
||||||
|
}
|
||||||
|
|
||||||
public static function observe($classes)
|
public static function observe($classes)
|
||||||
{
|
{
|
||||||
parent::observe($classes);
|
parent::observe($classes);
|
||||||
|
@ -1,24 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Events\Common;
|
|
||||||
|
|
||||||
use App\Abstracts\Event;
|
|
||||||
|
|
||||||
class ModelCreated extends Event
|
|
||||||
{
|
|
||||||
public $model;
|
|
||||||
|
|
||||||
public $attributes;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new event instance.
|
|
||||||
*
|
|
||||||
* @param $model
|
|
||||||
* @param $attributes
|
|
||||||
*/
|
|
||||||
public function __construct($model, $attributes)
|
|
||||||
{
|
|
||||||
$this->model = $model;
|
|
||||||
$this->attributes = $attributes;
|
|
||||||
}
|
|
||||||
}
|
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Banking;
|
namespace App\Imports\Banking;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Banking\Transaction as Request;
|
use App\Http\Requests\Banking\Transaction as Request;
|
||||||
use App\Models\Banking\Transaction as Model;
|
use App\Models\Banking\Transaction as Model;
|
||||||
|
|
||||||
@ -11,11 +10,7 @@ class Transactions extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Banking;
|
namespace App\Imports\Banking;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Models\Banking\Transaction;
|
use App\Models\Banking\Transaction;
|
||||||
use App\Models\Banking\Transfer as Model;
|
use App\Models\Banking\Transfer as Model;
|
||||||
use App\Models\Setting\Category;
|
use App\Models\Setting\Category;
|
||||||
@ -16,11 +15,7 @@ class Transfers extends Import
|
|||||||
|
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Common\Sheets;
|
namespace App\Imports\Common\Sheets;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Common\Item as Request;
|
use App\Http\Requests\Common\Item as Request;
|
||||||
use App\Models\Common\Item as Model;
|
use App\Models\Common\Item as Model;
|
||||||
|
|
||||||
@ -11,11 +10,7 @@ class Items extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Purchases;
|
namespace App\Imports\Purchases;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Banking\Transaction as Request;
|
use App\Http\Requests\Banking\Transaction as Request;
|
||||||
use App\Models\Banking\Transaction as Model;
|
use App\Models\Banking\Transaction as Model;
|
||||||
|
|
||||||
@ -11,11 +10,7 @@ class Payments extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Purchases\Sheets;
|
namespace App\Imports\Purchases\Sheets;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Document\DocumentItem as Request;
|
use App\Http\Requests\Document\DocumentItem as Request;
|
||||||
use App\Models\Document\Document;
|
use App\Models\Document\Document;
|
||||||
use App\Models\Document\DocumentItem as Model;
|
use App\Models\Document\DocumentItem as Model;
|
||||||
@ -12,11 +11,7 @@ class BillItems extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Purchases\Sheets;
|
namespace App\Imports\Purchases\Sheets;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Document\Document as Request;
|
use App\Http\Requests\Document\Document as Request;
|
||||||
use App\Models\Document\Document as Model;
|
use App\Models\Document\Document as Model;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
@ -12,11 +11,7 @@ class Bills extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Purchases;
|
namespace App\Imports\Purchases;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Common\Contact as Request;
|
use App\Http\Requests\Common\Contact as Request;
|
||||||
use App\Models\Common\Contact as Model;
|
use App\Models\Common\Contact as Model;
|
||||||
|
|
||||||
@ -11,11 +10,7 @@ class Vendors extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Sales;
|
namespace App\Imports\Sales;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Common\Contact as Request;
|
use App\Http\Requests\Common\Contact as Request;
|
||||||
use App\Models\Common\Contact as Model;
|
use App\Models\Common\Contact as Model;
|
||||||
|
|
||||||
@ -11,11 +10,7 @@ class Customers extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Sales;
|
namespace App\Imports\Sales;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Banking\Transaction as Request;
|
use App\Http\Requests\Banking\Transaction as Request;
|
||||||
use App\Models\Banking\Transaction as Model;
|
use App\Models\Banking\Transaction as Model;
|
||||||
|
|
||||||
@ -11,11 +10,7 @@ class Revenues extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Sales\Sheets;
|
namespace App\Imports\Sales\Sheets;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Document\DocumentItem as Request;
|
use App\Http\Requests\Document\DocumentItem as Request;
|
||||||
use App\Models\Document\Document;
|
use App\Models\Document\Document;
|
||||||
use App\Models\Document\DocumentItem as Model;
|
use App\Models\Document\DocumentItem as Model;
|
||||||
@ -12,11 +11,7 @@ class InvoiceItems extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Sales\Sheets;
|
namespace App\Imports\Sales\Sheets;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Document\Document as Request;
|
use App\Http\Requests\Document\Document as Request;
|
||||||
use App\Models\Document\Document as Model;
|
use App\Models\Document\Document as Model;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
@ -12,11 +11,7 @@ class Invoices extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function map($row): array
|
public function map($row): array
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
namespace App\Imports\Settings;
|
namespace App\Imports\Settings;
|
||||||
|
|
||||||
use App\Abstracts\Import;
|
use App\Abstracts\Import;
|
||||||
use App\Events\Common\ModelCreated;
|
|
||||||
use App\Http\Requests\Setting\Category as Request;
|
use App\Http\Requests\Setting\Category as Request;
|
||||||
use App\Models\Setting\Category as Model;
|
use App\Models\Setting\Category as Model;
|
||||||
|
|
||||||
@ -11,11 +10,7 @@ class Categories extends Import
|
|||||||
{
|
{
|
||||||
public function model(array $row)
|
public function model(array $row)
|
||||||
{
|
{
|
||||||
$model = new Model($row);
|
return new Model($row);
|
||||||
|
|
||||||
event(new ModelCreated($model, $row));
|
|
||||||
|
|
||||||
return $model;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function rules(): array
|
public function rules(): array
|
||||||
|
@ -28,7 +28,7 @@ class Company extends Eloquent
|
|||||||
'enabled' => 'boolean',
|
'enabled' => 'boolean',
|
||||||
];
|
];
|
||||||
|
|
||||||
public $extras = [
|
public $allAttributes = [
|
||||||
//
|
//
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -39,6 +39,19 @@ class Company extends Eloquent
|
|||||||
*/
|
*/
|
||||||
public $sortable = ['name', 'domain', 'email', 'enabled', 'created_at'];
|
public $sortable = ['name', 'domain', 'email', 'enabled', 'created_at'];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new Eloquent model instance.
|
||||||
|
*
|
||||||
|
* @param array $attributes
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function __construct(array $attributes = [])
|
||||||
|
{
|
||||||
|
$this->allAttributes = $attributes;
|
||||||
|
|
||||||
|
parent::__construct($attributes);
|
||||||
|
}
|
||||||
|
|
||||||
public static function boot()
|
public static function boot()
|
||||||
{
|
{
|
||||||
parent::boot();
|
parent::boot();
|
||||||
|
@ -20,12 +20,25 @@ class Setting extends Eloquent
|
|||||||
*/
|
*/
|
||||||
protected $fillable = ['company_id', 'key', 'value'];
|
protected $fillable = ['company_id', 'key', 'value'];
|
||||||
|
|
||||||
public $extras = [
|
public $allAttributes = [
|
||||||
//
|
//
|
||||||
];
|
];
|
||||||
|
|
||||||
public $timestamps = false;
|
public $timestamps = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new Eloquent model instance.
|
||||||
|
*
|
||||||
|
* @param array $attributes
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function __construct(array $attributes = [])
|
||||||
|
{
|
||||||
|
$this->allAttributes = $attributes;
|
||||||
|
|
||||||
|
parent::__construct($attributes);
|
||||||
|
}
|
||||||
|
|
||||||
public function company()
|
public function company()
|
||||||
{
|
{
|
||||||
return $this->belongsTo('App\Models\Common\Company');
|
return $this->belongsTo('App\Models\Common\Company');
|
||||||
|
Loading…
x
Reference in New Issue
Block a user