4cbe87aa创建于 2025年9月15日历史提交
package com.TinyPro.controller;

import com.TinyPro.annotation.PermissionAnnotation;
import com.TinyPro.annotation.Reject;
import com.TinyPro.entity.dto.CreateLangDto;
import com.TinyPro.entity.po.Lang;
import com.TinyPro.service.ILangService;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/lang")
public class LangController {
    @Autowired
    private ILangService langService;

    @Reject()
    @PermissionAnnotation("lang::add")
    @PostMapping
    public ResponseEntity<Lang> createLang(@RequestBody CreateLangDto createLangDto) {
        return this.langService.create(createLangDto);
    }

    @PermissionAnnotation("lang::query")
    @GetMapping
    public ResponseEntity<List<Lang>> findAllLang() {
        return this.langService.findAll();
    }

    @Reject()
    @PermissionAnnotation("lang::update")
    @PatchMapping("/{id}")
   public ResponseEntity<Lang> updateLang(
            @PathVariable("id")Integer id,
            @RequestBody(required = false) CreateLangDto createLangDto
    ) {
        return this.langService.update(id, createLangDto);
    }

    @Reject()
    @PermissionAnnotation("lang::remove")
    @DeleteMapping("/{id}")
     public ResponseEntity<Lang> removeLang(@PathVariable Integer id) {
        return this.langService.remove(id);
    }
}