style updates
This commit is contained in:
@@ -1,3 +1,23 @@
|
||||
<?php
|
||||
namespace Modules\CRM\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\MorphTo;
|
||||
final class Activity extends Model { protected $table='crm_activities'; protected $fillable=['subject_type','subject_id','user_id','type','title','description','due_at','completed_at']; protected function casts(): array { return ['due_at'=>'datetime','completed_at'=>'datetime']; } public function subject(): MorphTo { return $this->morphTo(); } }
|
||||
|
||||
namespace Modules\CRM\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\MorphTo;
|
||||
|
||||
final class Activity extends Model
|
||||
{
|
||||
protected $table = 'crm_activities';
|
||||
|
||||
protected $fillable = ['subject_type', 'subject_id', 'user_id', 'type', 'title', 'description', 'due_at', 'completed_at'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return ['due_at' => 'datetime', 'completed_at' => 'datetime'];
|
||||
}
|
||||
|
||||
public function subject(): MorphTo
|
||||
{
|
||||
return $this->morphTo();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,23 @@
|
||||
<?php
|
||||
namespace Modules\CRM\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
final class Company extends Model { protected $table='crm_companies'; protected $fillable=['name','website','phone','email','industry','address','notes','is_active']; protected function casts(): array { return ['is_active'=>'boolean']; } public function contacts(): HasMany { return $this->hasMany(Contact::class); } }
|
||||
|
||||
namespace Modules\CRM\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
|
||||
final class Company extends Model
|
||||
{
|
||||
protected $table = 'crm_companies';
|
||||
|
||||
protected $fillable = ['name', 'website', 'phone', 'email', 'industry', 'address', 'notes', 'is_active'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return ['is_active' => 'boolean'];
|
||||
}
|
||||
|
||||
public function contacts(): HasMany
|
||||
{
|
||||
return $this->hasMany(Contact::class);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,28 @@
|
||||
<?php
|
||||
namespace Modules\CRM\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
final class Contact extends Model { protected $table='crm_contacts'; protected $fillable=['company_id','first_name','last_name','email','phone','job_title','notes','is_active']; protected function casts(): array { return ['is_active'=>'boolean']; } public function company(): BelongsTo { return $this->belongsTo(Company::class); } public function getNameAttribute(): string { return trim($this->first_name.' '.$this->last_name); } }
|
||||
|
||||
namespace Modules\CRM\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
|
||||
final class Contact extends Model
|
||||
{
|
||||
protected $table = 'crm_contacts';
|
||||
|
||||
protected $fillable = ['company_id', 'first_name', 'last_name', 'email', 'phone', 'job_title', 'notes', 'is_active'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return ['is_active' => 'boolean'];
|
||||
}
|
||||
|
||||
public function company(): BelongsTo
|
||||
{
|
||||
return $this->belongsTo(Company::class);
|
||||
}
|
||||
|
||||
public function getNameAttribute(): string
|
||||
{
|
||||
return trim($this->first_name.' '.$this->last_name);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,23 @@
|
||||
<?php
|
||||
namespace Modules\CRM\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
final class Lead extends Model { protected $table='crm_leads'; protected $fillable=['contact_id','title','source','status','estimated_value','notes','next_action_at']; protected function casts(): array { return ['estimated_value'=>'decimal:2','next_action_at'=>'datetime']; } public function contact(): BelongsTo { return $this->belongsTo(Contact::class); } }
|
||||
|
||||
namespace Modules\CRM\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
|
||||
final class Lead extends Model
|
||||
{
|
||||
protected $table = 'crm_leads';
|
||||
|
||||
protected $fillable = ['contact_id', 'title', 'source', 'status', 'estimated_value', 'notes', 'next_action_at'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return ['estimated_value' => 'decimal:2', 'next_action_at' => 'datetime'];
|
||||
}
|
||||
|
||||
public function contact(): BelongsTo
|
||||
{
|
||||
return $this->belongsTo(Contact::class);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,28 @@
|
||||
<?php
|
||||
namespace Modules\CRM\Models; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
final class Opportunity extends Model { protected $table='crm_opportunities'; protected $fillable=['company_id','contact_id','name','stage','value','probability','expected_close_at','notes']; protected function casts(): array { return ['value'=>'decimal:2','expected_close_at'=>'date']; } public function company(): BelongsTo { return $this->belongsTo(Company::class); } public function contact(): BelongsTo { return $this->belongsTo(Contact::class); } }
|
||||
|
||||
namespace Modules\CRM\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
|
||||
final class Opportunity extends Model
|
||||
{
|
||||
protected $table = 'crm_opportunities';
|
||||
|
||||
protected $fillable = ['company_id', 'contact_id', 'name', 'stage', 'value', 'probability', 'expected_close_at', 'notes'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return ['value' => 'decimal:2', 'expected_close_at' => 'date'];
|
||||
}
|
||||
|
||||
public function company(): BelongsTo
|
||||
{
|
||||
return $this->belongsTo(Company::class);
|
||||
}
|
||||
|
||||
public function contact(): BelongsTo
|
||||
{
|
||||
return $this->belongsTo(Contact::class);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user