File manager - Edit - /var/www/payraty/hris/app/Models/Contract.php
Back
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; use App\Scopes\OrganisationScope; use Illuminate\Support\Facades\Auth; class Contract extends Model { protected $fillable = [ 'name', 'employee_name', 'subject', 'value', 'type', 'start_date', 'end_date', 'notes', 'description', 'contract_description', 'employee_signature', 'company_signature', 'created_by', 'status', 'organisation_id', ]; protected static function booted() { static::addGlobalScope(new OrganisationScope); // Automatically set the organisation_id before creating the model static::creating(function ($model) { if (Auth::check()) { $model->organisation_id = Auth::user()->organisation_id; } }); } public function contract_type() { return $this->hasOne('App\Models\ContractType', 'id', 'type'); } public function files() { return $this->hasMany('App\Models\ContractAttechment', 'contract_id', 'id'); } public function employee() { return $this->hasOne('App\Models\User', 'id', 'employee_name'); } public function comment() { return $this->hasMany('App\Models\ContractComment', 'contract_id', 'id'); } public function note() { return $this->hasMany('App\Models\ContractNote', 'contract_id', 'id'); } public function ContractAttechment() { return $this->belongsTo('App\Models\ContractAttechment', 'id', 'contract_id'); } public function ContractComment() { return $this->belongsTo('App\Models\ContractComment', 'id', 'contract_id'); } public function ContractNote() { return $this->belongsTo('App\Models\ContractNote', 'id', 'contract_id'); } public static function getContractSummary($contracts) { $total = 0; foreach ($contracts as $contract) { $total += $contract->value; } return \Auth::user()->priceFormat($total); } public static function status() { $status = [ 'accept' => 'Accept', 'decline' => 'Decline', ]; return $status; } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.30 | Generation time: 0.21 |
proxy
|
phpinfo
|
Settings