Process.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. namespace App;
  3. use Illuminate\Database\Eloquent\Model;
  4. use App\Traits\ModelTimeFormat;
  5. use Illuminate\Database\Eloquent\SoftDeletes;
  6. class Process extends Model
  7. {
  8. use ModelTimeFormat;
  9. use SoftDeletes;
  10. protected $fillable=[
  11. 'code','owner_id','process_method_id','unit_price','status','remark','amount','completed_amount','created_at','updated_at','deleted_at'
  12. ];
  13. protected $appends=[
  14. 'owner_name','process_method_name',
  15. ];
  16. public function owner(){
  17. return $this->belongsTo('App\Owner','owner_id','id');
  18. }
  19. public function processMethod(){
  20. return $this->belongsTo('App\ProcessMethod','process_method_id','id');
  21. }
  22. public function tutorials(){
  23. return $this->belongsToMany('App\Tutorial','process_tutorial','process_id','tutorial_id');
  24. }
  25. public function processesContents(){
  26. return $this->hasMany('App\ProcessesContent','process_id','id');
  27. }
  28. public function processDailies(){
  29. return $this->hasMany('App\ProcessDaily','process_id','id');
  30. }
  31. public function getOwnerNameAttribute()
  32. {
  33. return $this['owner']? $this['owner']['name']:null;
  34. }
  35. public function getProcessMethodNameAttribute()
  36. {
  37. return $this['processMethod']? $this['processMethod']['name']:null;
  38. }
  39. }