Order.php 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Model;
  4. class Order extends Model
  5. {
  6. protected $table='order';
  7. public function get_user(){
  8. return $this->belongsTo(User::class,'user_id');
  9. }
  10. public function get_order_detail(){
  11. return $this->hasMany(OrderDetail::class,'order_id','id');
  12. }
  13. public function get_address(){
  14. return $this->belongsTo(Address::class,'address_id','id');
  15. }
  16. public function get_order_log(){
  17. return $this->hasMany(OrderLog::class,'order_id','id');
  18. }
  19. public function get_order_gift()
  20. {
  21. return $this->belongsToMany('App\Models\Gifts','order_gift','order_id','gift_id')->withPivot('num');
  22. }
  23. public function get_order_remark(){
  24. return $this->hasMany(OrderRemark::class,'order_id','id');
  25. }
  26. public function get_store(){
  27. return $this->belongsTo(Store::class,'store_id');
  28. }
  29. public function belong_user(){
  30. return $this->belongsTo(User::class,'good_user_id');
  31. }
  32. public function address(){
  33. return $this->belongsTo(Address::class,'address_id');
  34. }
  35. //订单审核
  36. public static function order_audit($order_id,$order,$name){
  37. //修改订单
  38. Order::where('id',$order_id)->update(['status'=>1,'is_back'=>0]);
  39. //记录操作日志
  40. OrderLog::create([
  41. 'order_id'=>$order_id,
  42. 'user_id'=>$order->user_id,
  43. 'log_name'=>$name,
  44. 'log_title'=>'订货单订单审核',
  45. 'log_text'=>'订货单已通过订单审核'
  46. ]);
  47. }
  48. //财务审核
  49. public static function financial_audit($order_id,$order,$name){
  50. //修改订单
  51. Order::where('id',$order_id)->update(['status'=>2,'is_back'=>0]);
  52. //记录操作日志
  53. OrderLog::create([
  54. 'order_id'=>$order_id,
  55. 'user_id'=>$order->user_id,
  56. 'log_name'=>$name,
  57. 'log_title'=>'订货单财务审核',
  58. 'log_text'=>'订货单已通过财务审核'
  59. ]);
  60. }
  61. //发货审核
  62. public static function send_audit($order_id,$order,$name){
  63. //修改订单
  64. Order::where('id',$order_id)->update(['status'=>3,'is_back'=>0]);
  65. //记录操作日志
  66. OrderLog::create([
  67. 'order_id'=>$order_id,
  68. 'user_id'=>$order->user_id,
  69. 'log_name'=>$name,
  70. 'log_title'=>'订货单发货审核',
  71. 'log_text'=>'订货单已通过发货审核'
  72. ]);
  73. }
  74. //订单回退
  75. public static function order_back(){
  76. }
  77. //财务回退
  78. public static function financial_back($order_id,$order,$name,$remark){
  79. //修改订单
  80. Order::where('id',$order_id)->update(['status'=>0,'is_back'=>1]);
  81. //记录操作日志
  82. OrderLog::create([
  83. 'order_id'=>$order_id,
  84. 'user_id'=>$order->user_id,
  85. 'log_name'=>$name,
  86. 'log_title'=>'订货单财务审核',
  87. 'log_text'=>'订货单未通过财务审核,退回重审'
  88. ]);
  89. //备注
  90. if($remark){
  91. OrderRemark::create([
  92. 'order_id'=>$order_id,
  93. 'name'=>$name,
  94. // 'level'=>'',
  95. 'type'=>2,
  96. 'remark'=>$remark
  97. ]);
  98. }
  99. }
  100. //发货回退
  101. public static function send_back($order_id,$order,$name,$remark){
  102. //修改订单
  103. Order::where('id',$order_id)->update(['status'=>1,'is_back'=>1]);
  104. //记录操作日志
  105. OrderLog::create([
  106. 'order_id'=>$order_id,
  107. 'user_id'=>$order->user_id,
  108. 'log_name'=>$name,
  109. 'log_title'=>'订货单发货审核',
  110. 'log_text'=>'订货单未通过发货审核,退回重审'
  111. ]);
  112. //备注
  113. if($remark){
  114. OrderRemark::create([
  115. 'order_id'=>$order_id,
  116. 'name'=>$name,
  117. // 'level'=>'',
  118. 'type'=>2,
  119. 'remark'=>$remark
  120. ]);
  121. }
  122. }
  123. //收货回退
  124. public static function receive_back($order_id,$order,$name,$remark){
  125. //修改订单
  126. Order::where('id',$order_id)->update(['status'=>2,'is_back'=>1,'receive_time'=>NULL,'track_time'=>NULL]);
  127. //记录操作日志
  128. OrderLog::create([
  129. 'order_id'=>$order_id,
  130. 'user_id'=>$order->user_id,
  131. 'log_name'=>$name,
  132. 'log_title'=>'订货单发货后审核',
  133. 'log_text'=>'订货单发货后,退回重审'
  134. ]);
  135. //备注
  136. if($remark){
  137. OrderRemark::create([
  138. 'order_id'=>$order_id,
  139. 'name'=>$name,
  140. // 'level'=>'',
  141. 'type'=>2,
  142. 'remark'=>$remark
  143. ]);
  144. }
  145. }
  146. }