WorkOrderLogService.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. namespace App\Services;
  3. use App\Jobs\SyncOrderIssueOrWorkOrderBySWMS;
  4. use App\Traits\ServiceAppAop;
  5. use App\WorkOrderDetail;
  6. use App\WorkOrderLog;
  7. use Illuminate\Support\Facades\Auth;
  8. class WorkOrderLogService
  9. {
  10. use ServiceAppAop;
  11. protected $modelClass = WorkOrderLog::class;
  12. /**
  13. * @param WorkOrderDetail $detail
  14. * @param $type
  15. * @param $content
  16. */
  17. public function createLog(WorkOrderDetail $detail, $type, $content)
  18. {
  19. $user = Auth::user();
  20. $log = new WorkOrderLog([
  21. 'work_order_id' => $detail->work_order_id ?? '',
  22. 'work_order_detail_id' => $detail->id ?? '',
  23. 'type' => $type,
  24. 'creator_id' => $user['id'] ?? '',
  25. 'content' => $content,
  26. 'tag' => 0,
  27. ]);
  28. $log->save();
  29. }
  30. /**
  31. * @param WorkOrderDetail $detail
  32. */
  33. public function undoneTag(WorkOrderDetail $detail)
  34. { // 标记为未完成历史标记
  35. $detail->logs()->update(['tag' => 2]);
  36. }
  37. /**
  38. * @param WorkOrderDetail $detail
  39. */
  40. public function endDetail(WorkOrderDetail $detail)
  41. { // 标记为完成
  42. $detail->logs()->update(['tag' => 1]);
  43. }
  44. }