ProcessDailyParticipant.php 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. namespace App;
  3. use Carbon\Carbon;
  4. use Illuminate\Database\Eloquent\Model;
  5. use App\Traits\ModelTimeFormat;
  6. use App\Traits\ModelLogChanging;
  7. class ProcessDailyParticipant extends Model
  8. {
  9. use ModelLogChanging;
  10. use ModelTimeFormat;
  11. protected $fillable=[
  12. 'process_daily_id','user_id','started_at','ended_at','hour_price',
  13. 'hour_count','unit_price','unit_count','dinner_duration','remark','status'
  14. ];
  15. protected $appends=[
  16. 'user_detail_full_name',
  17. 'process_daily_date',
  18. ];
  19. protected $casts = [
  20. 'started_at' => 'datetime:H:i',
  21. 'ended_at' => 'datetime:H:i',
  22. ];
  23. public function user_detail(){
  24. return $this->belongsTo('App\UserDetail','user_id','user_id');
  25. }
  26. public function processDaily(){
  27. return $this->belongsTo('App\ProcessDaily','process_daily_id','id');
  28. }
  29. public function userLabor(){
  30. return $this->belongsTo('App\UserLabor','user_id','user_id');
  31. }
  32. public function getUserDetailFullNameAttribute()
  33. {
  34. return $this['user_detail']?$this['user_detail']['full_name']:null;
  35. }
  36. public function getProcessDailyDateAttribute()
  37. {
  38. return $this['processDaily'] ? $this['processDaily']['date'] : null;
  39. }
  40. }