package com.sinata.appointment.controller; import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaMode; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.sinata.appointment.common.Result; import com.sinata.appointment.common.ResultUtil; import com.sinata.appointment.entity.SysDept; import com.sinata.appointment.entity.SysRole; import com.sinata.appointment.mapper.SysDeptMapper; import com.sinata.appointment.mapper.SysRoleMapper; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import java.util.List; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @Tag(name = "系统字典") @RestController @RequestMapping("/api/sys") @RequiredArgsConstructor public class SysLookupController { private final SysDeptMapper sysDeptMapper; private final SysRoleMapper sysRoleMapper; @Operation(summary = "部门列表") @GetMapping("/depts") @SaCheckPermission( value = { "appointments:page", "config:approval-settings:page", "sys:depts:page", "sys:staff:page", "sys:staff-groups:page", "sys:local-units:page" }, mode = SaMode.OR) public Result> depts() { List list = sysDeptMapper.selectList( new LambdaQueryWrapper() .eq(SysDept::getDelFlag, 0) .eq(SysDept::getStatus, 1) .orderByAsc(SysDept::getSortOrder) .orderByAsc(SysDept::getId)); return ResultUtil.data(list); } @Operation(summary = "角色列表") @GetMapping("/roles") @SaCheckPermission(value = {"sys:users:page", "sys:roles:page"}, mode = SaMode.OR) public Result> roles() { List list = sysRoleMapper.selectList( new LambdaQueryWrapper() .eq(SysRole::getDelFlag, 0) .orderByAsc(SysRole::getId)); return ResultUtil.data(list); } }