CutterOrderController.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. <?php
  2. namespace app\controller\api\cutter;
  3. use app\extra\basic\Base;
  4. use app\extra\service\cutter\CutterOrderService;
  5. use app\extra\service\cutter\CutterTaskService;
  6. use app\middleware\AuthMiddleware;
  7. use DI\Attribute\Inject;
  8. use LinFly\Annotation\Route\Controller;
  9. use LinFly\Annotation\Route\Middleware;
  10. use LinFly\Annotation\Route\Route;
  11. use Shopwwi\WebmanAuth\Auth;
  12. use support\Request;
  13. use support\Response;
  14. #[Controller(prefix: "/api/cutter/order"),Middleware(AuthMiddleware::class)]
  15. class CutterOrderController extends Base
  16. {
  17. #[Inject]
  18. protected CutterOrderService $service;
  19. #[Route(path: "lst",methods: "get")]
  20. public function getList(Request $request): Response
  21. {
  22. try {
  23. $param = $request->get();
  24. $user = (new Auth)->guard("user")->user()->toArray();
  25. $param['uid'] = $user['uid'];
  26. $list = $this->service->getLst($param,'id,task_id,uid,status,created_at',$param['page']??0,$param['limit']??0);
  27. return successTrans("success.data",$list,200);
  28. } catch (\Throwable $throwable) {
  29. return error($throwable->getMessage());
  30. }
  31. }
  32. #[Route(path: "details/{id}",methods: "get")]
  33. public function details(Request $request,$id): Response
  34. {
  35. try {
  36. $param = $request->get();
  37. $user = (new Auth)->guard("user")->user()->toArray();
  38. // $param['uid'] = $user['uid'];
  39. $param['id'] = $id;
  40. $details = $this->service->getDetails($param,'id,task_id,uid,status,remark,created_at');
  41. return successTrans("success.data",$details?$details->toArray():[],200);
  42. } catch (\Throwable $throwable) {
  43. return error($throwable->getMessage());
  44. }
  45. }
  46. #[Route(path: "create",methods: "post")]
  47. public function create(Request $request): Response
  48. {
  49. try {
  50. $id = $request->post('id',0);
  51. $user = (new Auth)->guard("user")->user()->toArray();
  52. if(!$user['is_cutter']){
  53. return errorTrans("请申请成为剪辑师后再领取任务");
  54. }
  55. $state = $this->service->createOrder($id,$user);
  56. if (!$state) return errorTrans("error.data");
  57. return successTrans("任务领取成功",['id'=>$state->id]);
  58. } catch (\Throwable $throwable) {
  59. return error($throwable->getMessage());
  60. }
  61. }
  62. /**
  63. * 提交
  64. * @param Request $request
  65. * @return Response
  66. */
  67. #[Route(path: "submit",methods: "post")]
  68. public function submit(Request $request): Response
  69. {
  70. try {
  71. $user = (new Auth)->guard("user")->user()->toArray();
  72. $param = $request->post();
  73. $state = $this->service->submit($param,$user);
  74. if (!$state) return errorTrans("error.data");
  75. return successTrans("提交成功");
  76. } catch (\Throwable $throwable) {
  77. echo $throwable->getMessage()."\n";
  78. echo $throwable->getFile()."\n";
  79. echo $throwable->getLine()."\n";
  80. return error($throwable->getMessage());
  81. }
  82. }
  83. /**
  84. * 删除
  85. * @param Request $request
  86. * @return Response
  87. */
  88. #[Route(path: "del/{id}",methods: "delete")]
  89. public function delUser($id): Response
  90. {
  91. try {
  92. $state = $this->service->saveData(['id'=>$id,'is_del'=>1]);
  93. if (!$state) return errorTrans("error.data");
  94. return successTrans("success.data");
  95. } catch (\Throwable $throwable) {
  96. return error($throwable->getMessage());
  97. }
  98. }
  99. /**
  100. * 设置状态
  101. * @param Request $request
  102. * @return Response
  103. */
  104. #[Route(path: "set_status/{id}/{status}",methods: "get")]
  105. public function set_status($id,$status): Response
  106. {
  107. try {
  108. $state = $this->service->update($id,['status'=>$status]);
  109. if (!$state) return errorTrans("error.data");
  110. return successTrans("success.data");
  111. } catch (\Throwable $throwable) {
  112. return error($throwable->getMessage());
  113. }
  114. }
  115. }