/ app / Models / NonConformity.php
NonConformity.php
 1  <?php
 2  
 3  namespace App\Models;
 4  
 5  use Illuminate\Database\Eloquent\Factories\HasFactory;
 6  use Illuminate\Database\Eloquent\Model;
 7  use Illuminate\Database\Eloquent\SoftDeletes;
 8  
 9  class NonConformity extends Model
10  {
11      use SoftDeletes, HasFactory;
12  
13      protected $fillable = [
14          'code',
15          'description',
16          'non_conformity_type_id',
17          'status',
18          'closure_date',
19          'expected_closure_date',
20          'results',
21          'dossier_id',
22      ];
23  
24      protected $casts = [
25          'closure_date' => 'datetime',
26          'expected_closure_date' => 'datetime',
27      ];
28  
29      public function validation()
30      {
31          return $this->belongsTo(Validation::class);
32      }
33      public function type()
34      {
35          return $this->belongsTo(NonConformityType::class, 'non_conformity_type_id');
36      }
37      public function dossier()
38      {
39          return $this->hasOneThrough(Dossier::class, Validation::class, 'id', 'id', 'validation_id', 'original_dossier_id');
40      }
41      public function parsedDescription()
42      {
43          return strip_tags(htmlspecialchars_decode($this->description));
44      }
45  }