OrderIssue.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. namespace App;
  3. use App\Traits\ModelTimeFormat;
  4. use Illuminate\Database\Eloquent\Model;
  5. class OrderIssue extends Model
  6. {
  7. //
  8. use ModelTimeFormat;
  9. protected $fillable = ['order_id','handle_status','create_at','rejected_bill_id','rejecting_status',
  10. 'situation_explain', 'order_issue_type_id','result_explain','second_order_id','second_logistic_number',
  11. 'final_status','logistic_indemnity_money','logistic_express_remission','baoshi_indemnity_money','baoshi_express_remission','user_workgroup_id'];
  12. protected $appends = [
  13. 'creator',
  14. ];
  15. public function order(){
  16. return $this->belongsTo('App/Order','order_id','id');
  17. }
  18. public function rejectedBill(){
  19. return $this->belongsTo('App/RejectedBill','rejected_bill_id','id');
  20. }
  21. public function orderIssueType(){
  22. return $this->belongsTo('App/OrderIssueType','order_issue_type_id','id');
  23. }
  24. public function workgroup(){
  25. return $this->belongsTo('App/UserWorkgroup','UserWorkgroup','id');
  26. }
  27. public function secondOrder(){
  28. return $this->belongsTo('App/Order','second_order_id','id');
  29. }
  30. public function setCreatorAttribute ($id,$user_id){
  31. Sign::updateOrCreate(['signable_type'=>'orders','signable_id'=>$id,'field'=>'creator','mark'=>$user_id]);
  32. }
  33. public function getCreatorAttribute(){
  34. return $this->hasOne('App\Sign','signable_id','id')
  35. ->where('signable_type','orders')
  36. ->where('field','creator')
  37. ->value('mark');
  38. }
  39. }