CutterLabel.php 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <?php
  2. namespace app\controller\adminapi\cutter;
  3. use app\extra\basic\Base;
  4. use app\extra\service\cutter\CutterLabelService;
  5. use app\middleware\AuthMiddleware;
  6. use DI\Attribute\Inject;
  7. use LinFly\Annotation\Route\Controller;
  8. use LinFly\Annotation\Route\Middleware;
  9. use LinFly\Annotation\Route\Route;
  10. use support\Request;
  11. use support\Response;
  12. #[Controller(prefix: "/adminapi/cutter/label"),Middleware(AuthMiddleware::class)]
  13. class CutterLabel extends Base
  14. {
  15. #[Inject]
  16. protected CutterLabelService $service;
  17. #[Route(path: "list/{type}",methods: "get")]
  18. public function getList(Request $request,$type): Response
  19. {
  20. try {
  21. $param = $request->get();
  22. $param['type'] = $type;
  23. $list = $this->service->getList($param,'*',$param['page']??0,$param['limit']??0);
  24. return successTrans("success.data",$list);
  25. } catch (\Throwable $throwable) {
  26. return error($throwable->getMessage());
  27. }
  28. }
  29. #[Route(path: "save",methods: "post")]
  30. public function save(Request $request): Response
  31. {
  32. try {
  33. $param = $this->_valid([
  34. "label_name.require"=> '标签名字不能为空',
  35. "type.require" => '类型错误1',
  36. "type.int" => '类型错误2',
  37. "type.gt:0" => '类型错误3',
  38. "id.int" => '类型错误3',
  39. ],"post");
  40. if (!is_array($param)) return error($param);
  41. $label = $this->service->getOne(['label_name'=>$param['label_name']]);
  42. if(!$label->isEmpty() && (empty($param['id']) || $param['id'] != $label->id)){
  43. return errorTrans("该标签已经存在");
  44. }
  45. if(!empty($param['id'])){
  46. $id = $param['id'];
  47. unset($param['id']);
  48. $state = $this->service->update($id,['label_name'=>$param['label_name']]);
  49. }else{
  50. $state = $this->service->save($param);
  51. }
  52. if (!$state) return errorTrans("empty.error");
  53. return successTrans("success.data");
  54. } catch (\Throwable $throwable) {
  55. return error($throwable->getMessage());
  56. }
  57. }
  58. #[Route(path: "info/{id}",methods: "get")]
  59. public function info($id): Response
  60. {
  61. try {
  62. $take = $this->service->getOne(["id"=>$id,'is_del'=>0]);
  63. if ($take->isEmpty()) return errorTrans("empty.error");
  64. return successTrans("success.data",$take->toArray());
  65. } catch (\Throwable $throwable) {
  66. return error($throwable->getMessage());
  67. }
  68. }
  69. #[Route(path: "del/{id}",methods: "delete")]
  70. public function delete($id): Response
  71. {
  72. try {
  73. $state = $this->service->update($id,['is_del'=>1]);
  74. if (!$state) return errorTrans("empty.error");
  75. return successTrans('删除成功');
  76. } catch (\Throwable $throwable) {
  77. return error($throwable->getMessage());
  78. }
  79. }
  80. }