CutterController.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. namespace app\controller\api\cutter;
  3. use app\extra\basic\Base;
  4. use app\extra\service\cutter\CutterApplyService;
  5. use app\validate\api\user\CutterApplyValidate;
  6. use DI\Attribute\Inject;
  7. use LinFly\Annotation\Route\Controller;
  8. use LinFly\Annotation\Route\Route;
  9. use Shopwwi\WebmanAuth\Auth;
  10. use support\Request;
  11. use support\Response;
  12. #[Controller(prefix: "/api/user/")]
  13. class CutterController extends Base
  14. {
  15. #[Inject]
  16. protected CutterApplyService $cutterApplyService;
  17. #[Inject]
  18. protected CutterApplyValidate $validate;
  19. /**
  20. * 申请剪辑师
  21. * @param Request $request
  22. * @return Response
  23. */
  24. #[Route(path: "cutter/apply",methods: "post")]
  25. public function cutter_apply(Request $request): Response
  26. {
  27. try {
  28. $user = (new Auth)->guard("user")->user()->toArray();
  29. $param = $request->post();
  30. if (!$this->validate->check($param)) return error($this->validate->getError());
  31. $param['uid'] = $user['uid'];
  32. $state = $this->cutterApplyService->save($param);
  33. if (!$state) return errorTrans("error.data");
  34. return successTrans("success.data");
  35. } catch (\Throwable $throwable) {
  36. return error($throwable->getMessage());
  37. }
  38. }
  39. /**
  40. * 申请剪辑师详情
  41. * @param Request $request
  42. * @return Response
  43. */
  44. #[Route(path: "cutter/apply/info",methods: "get")]
  45. public function cutter_apply_info(Request $request): Response
  46. {
  47. try {
  48. $user = (new Auth)->guard("user")->user()->toArray();
  49. $apply = $this->cutterApplyService->getOne(['uid'=>$user['uid']]);
  50. return successTrans("success.data",$apply?$apply->toArray():[]);
  51. } catch (\Throwable $throwable) {
  52. return error($throwable->getMessage());
  53. }
  54. }
  55. }