Operate.php 821 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: shenyang
  5. * Date: 2018/6/16
  6. * Time: 上午10:53
  7. */
  8. namespace app\backend\modules\process\controllers;
  9. use app\backend\models\Process;
  10. trait Operate
  11. {
  12. /**
  13. * @var Process
  14. */
  15. protected $process;
  16. protected function getProcess(){
  17. if(!isset($this->process)){
  18. $processId = request()->input('process_id');
  19. $this->process = Process::find($processId);
  20. }
  21. return $this->process;
  22. }
  23. /**
  24. * @throws \Exception
  25. */
  26. public function toNextState()
  27. {
  28. $data = $this->getProcess()->toNextStatus();
  29. return $data;
  30. }
  31. /**
  32. * @throws \Exception
  33. */
  34. public function toClosedState(){
  35. $data = $this->getProcess()->toCloseStatus();
  36. return $data;
  37. }
  38. }