package com.monkeylessey.controller.system; import com.monkeylessey.group.Add; import com.monkeylessey.group.Update; import com.monkeylessey.sys.domain.form.SysDictTypeForm; import com.monkeylessey.response.Result; import com.monkeylessey.sys.domain.query.SysDictTypeQuery; import com.monkeylessey.sys.service.SysDictTypeService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 字典类型表 前端控制器 * * @author 向培 * @since 2022-05-28 */ @Validated @RequiredArgsConstructor @Api(value = "字典类型表", tags = "字典类型表") @RestController @RequestMapping("/sys-dict-type") public class SysDictTypeController { private final SysDictTypeService sysDictTypeService; @PostMapping("/") @PreAuthorize("hasAuthority('dict:add')") @ApiOperation(value = "添加字典类型表", notes = "添加字典类型表") public Result addSysDictType(@RequestBody @Validated(Add.class) SysDictTypeForm form) { return sysDictTypeService.addSysDictType(form); } @PutMapping("/") @PreAuthorize("hasAuthority('dict:edit')") @ApiOperation(value = "修改字典类型表", notes = "修改字典类型表") public Result editSysDictType(@RequestBody @Validated(Update.class) SysDictTypeForm form) { return sysDictTypeService.editSysDictType(form); } @DeleteMapping("/{id}") @PreAuthorize("hasAuthority('dict:del')") @ApiOperation(value = "删除字典类型表", notes = "删除字典类型表") public Result deleteSysDictType(@PathVariable("id") String id) { return sysDictTypeService.deleteSysDictTypeById(id); } @DeleteMapping("/batch") @PreAuthorize("hasAuthority('dict:del:batch')") @ApiOperation(value = "批量删除字典类型表", notes = "批量删除字典类型表") public Result deleteSysDictTypeByIds(@RequestBody List ids) { return sysDictTypeService.deleteSysDictTypeByIds(ids); } @GetMapping("/page") @PreAuthorize("hasAuthority('dict:page')") @ApiOperation(value = "字典类型表分页", notes = "字典类型表分页") public Result getSysDictTypePage(SysDictTypeQuery query) { return sysDictTypeService.getSysDictTypeByPage(query); } @GetMapping("/{id}") @PreAuthorize("hasAuthority('dict:detail')") @ApiOperation(value = "id查找", notes = "id查找") public Result getSysDictTypePage(@PathVariable("id") String id) { return sysDictTypeService.getSysDictTypeById(id); } @GetMapping("/list") @PreAuthorize("hasAuthority('dict:list')") @ApiOperation(value = "list", notes = "list") public Result getList(String keyword) { return sysDictTypeService.getTypeList(keyword); } }