| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- <?php
- namespace app\controller\adminapi\cutter;
- use app\extra\basic\Base;
- use app\extra\service\cutter\CutterLabelService;
- use app\middleware\AuthMiddleware;
- use DI\Attribute\Inject;
- use LinFly\Annotation\Route\Controller;
- use LinFly\Annotation\Route\Middleware;
- use LinFly\Annotation\Route\Route;
- use support\Request;
- use support\Response;
- #[Controller(prefix: "/adminapi/cutter/label"),Middleware(AuthMiddleware::class)]
- class CutterLabel extends Base
- {
- #[Inject]
- protected CutterLabelService $service;
- #[Route(path: "list/{type}",methods: "get")]
- public function getList(Request $request,$type): Response
- {
- try {
- $param = $request->get();
- $param['type'] = $type;
- $list = $this->service->getList($param,'*',$param['page']??0,$param['limit']??0);
- return successTrans("success.data",$list);
- } catch (\Throwable $throwable) {
- return error($throwable->getMessage());
- }
- }
- #[Route(path: "save",methods: "post")]
- public function save(Request $request): Response
- {
- try {
- $param = $this->_valid([
- "label_name.require"=> '标签名字不能为空',
- "type.require" => '类型错误1',
- "type.int" => '类型错误2',
- "type.gt:0" => '类型错误3',
- "id.int" => '类型错误3',
- ],"post");
- if (!is_array($param)) return error($param);
- $label = $this->service->getOne(['label_name'=>$param['label_name']]);
- if(!$label->isEmpty() && (empty($param['id']) || $param['id'] != $label->id)){
- return errorTrans("该标签已经存在");
- }
- if(!empty($param['id'])){
- $id = $param['id'];
- unset($param['id']);
- $state = $this->service->update($id,['label_name'=>$param['label_name']]);
- }else{
- $state = $this->service->save($param);
- }
- if (!$state) return errorTrans("empty.error");
- return successTrans("success.data");
- } catch (\Throwable $throwable) {
- return error($throwable->getMessage());
- }
- }
- #[Route(path: "info/{id}",methods: "get")]
- public function info($id): Response
- {
- try {
- $take = $this->service->getOne(["id"=>$id,'is_del'=>0]);
- if ($take->isEmpty()) return errorTrans("empty.error");
- return successTrans("success.data",$take->toArray());
- } catch (\Throwable $throwable) {
- return error($throwable->getMessage());
- }
- }
- #[Route(path: "del/{id}",methods: "delete")]
- public function delete($id): Response
- {
- try {
- $state = $this->service->update($id,['is_del'=>1]);
- if (!$state) return errorTrans("empty.error");
- return successTrans('删除成功');
- } catch (\Throwable $throwable) {
- return error($throwable->getMessage());
- }
- }
- }
|