package com.klp.hrm.controller; import cn.dev33.satoken.annotation.SaCheckPermission; import com.klp.common.annotation.Log; import com.klp.common.core.controller.BaseController; import com.klp.common.core.domain.PageQuery; import com.klp.common.core.domain.R; import com.klp.common.core.page.TableDataInfo; import com.klp.common.enums.BusinessType; import com.klp.hrm.domain.bo.HrmGradeBo; import com.klp.hrm.domain.vo.HrmGradeVo; import com.klp.hrm.service.IHrmGradeService; import lombok.RequiredArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.util.Arrays; import java.util.List; @Validated @RequiredArgsConstructor @RestController @RequestMapping("/hrm/grade") public class HrmGradeController extends BaseController { private final IHrmGradeService service; @SaCheckPermission("hrm:grade:list") @GetMapping("/list") public TableDataInfo list(HrmGradeBo bo, PageQuery pageQuery) { return service.queryPageList(bo, pageQuery); } @SaCheckPermission("hrm:grade:query") @GetMapping("/{gradeId}") public R getInfo(@PathVariable @NotNull Long gradeId) { return R.ok(service.queryById(gradeId)); } @SaCheckPermission("hrm:grade:add") @Log(title = "职级管理", businessType = BusinessType.INSERT) @PostMapping public R add(@Validated @RequestBody HrmGradeBo bo) { return toAjax(service.insertByBo(bo)); } @SaCheckPermission("hrm:grade:edit") @Log(title = "职级管理", businessType = BusinessType.UPDATE) @PutMapping public R edit(@Validated @RequestBody HrmGradeBo bo) { return toAjax(service.updateByBo(bo)); } @SaCheckPermission("hrm:grade:remove") @Log(title = "职级管理", businessType = BusinessType.DELETE) @DeleteMapping("/{gradeIds}") public R remove(@PathVariable @NotEmpty Long[] gradeIds) { return toAjax(service.deleteWithValidByIds(Arrays.asList(gradeIds), true)); } @SaCheckPermission("hrm:grade:list") @GetMapping("/all") public R> all(HrmGradeBo bo) { return R.ok(service.queryList(bo)); } }