@GetMapping("/exam/{examCode}/{userId}") public ApiResult findNotHadJoinedExamByUserId(@PathVariable("examCode") Integer examCode, @PathVariable("userId")Integer userId) throws BusinessCodeException { Optional.ofNullable(userId).orElseThrow(() ->{ return new BusinessCodeException(BusinessCode.SELECT_ERROR_CODE.getMsg(),BusinessCode.SELECT_ERROR_CODE.getCode()); }); Optional.ofNullable(examCode).orElseThrow(() ->{ return new BusinessCodeException(BusinessCode.SELECT_ERROR_CODE.getMsg(),BusinessCode.SELECT_ERROR_CODE.getCode()); }); ExamManageEntity res = examManageService.findNotHadJoinedExamByUserId(examCode,userId); if(res == null) { return ApiResultHandler.errorResult(BusinessCode.USER_HIVED_JOIN_THE_EXAM.getCode(), BusinessCode.USER_HIVED_JOIN_THE_EXAM.getMsg()); } return ApiResultHandler.successResult(res); }
时间: 2024-04-04 10:33:32 浏览: 54
这是一个使用Spring框架编写的RESTful API接口,其请求方法为GET,接口路径为/exam/{examCode}/{userId}。这个接口用于查询指定用户是否已经参加了某个考试,其中examCode和userId为接口路径参数。如果userId或examCode为null,则会抛出一个业务代码异常。如果找不到指定的考试或者用户已经参加了该考试,则会返回一个错误信息。如果一切正常,则会返回一个包含ExamManageEntity实体类对象的成功响应结果。
相关问题
@GetMapping("/exam/{examCode}") public ApiResult findById(@PathVariable("examCode") Integer examCode){ // System.out.println("根据ID查找"); ExamManageEntity res = examManageService.findById(examCode); if(res == null) { return ApiResultHandler.buildApiResult(10000,"考试编号不存在",null); } return ApiResultHandler.buildApiResult(200,"请求成功!",res); }
这段代码是一个基于Spring框架的RESTful API接口的实现,使用了@GetMapping注解来指定HTTP GET请求方法的路径。其中,"{examCode}"表示动态的URL地址,该地址中的参数会被传递给方法中的@PathVariable注解修饰的参数examCode。方法的返回值类型是ApiResult类,通过调用examManageService中的findById方法查找相应的考试信息,并将结果封装到ApiResult中返回给客户端。如果根据考试编号查找不到考试信息,则返回错误码10000和错误信息“考试编号不存在”,否则返回状态码200和考试信息。
@RestController @RequestMapping("/role") public class RoleController { @Resource private IRoleService roleService; // 新增或者更新 @PostMapping public Result save(@RequestBody Role role) { roleService.saveOrUpdate(role); return Result.success(); } @DeleteMapping("/{id}") public Result delete(@PathVariable Integer id) { roleService.removeById(id); return Result.success(); } @PostMapping("/del/batch") public Result deleteBatch(@RequestBody List<Integer> ids) { roleService.removeByIds(ids); return Result.success(); } @GetMapping public Result findAll() { return Result.success(roleService.list()); } @GetMapping("/{id}") public Result findOne(@PathVariable Integer id) { return Result.success(roleService.getById(id)); } @GetMapping("/page") public Result findPage(@RequestParam String name, @RequestParam Integer pageNum, @RequestParam Integer pageSize) { QueryWrapper<Role> queryWrapper = new QueryWrapper<>(); queryWrapper.like("name", name); queryWrapper.orderByDesc("id"); return Result.success(roleService.page(new Page<>(pageNum, pageSize), queryWrapper)); } /** * 绑定角色和菜单的关系 * @param roleId 角色id * @param menuIds 菜单id数组 * @return */ @PostMapping("/roleMenu/{roleId}") public Result roleMenu(@PathVariable Integer roleId, @RequestBody List<Integer> menuIds) { roleService.setRoleMenu(roleId, menuIds); return Result.success(); } @GetMapping("/roleMenu/{roleId}") public Result getRoleMenu(@PathVariable Integer roleId) { return Result.success( roleService.getRoleMenu(roleId)); } }
这是一个基于Spring Boot框架开发的角色管理控制器,提供了一些基本的角色管理操作,包括新增或更新角色、删除角色、批量删除角色、查询所有角色、分页查询角色和绑定角色和菜单的关系等操作。其中,IRoleService是角色管理服务接口,通过注入该接口的实现类,调用其中定义的方法来完成具体的业务逻辑处理。它采用的是RESTful风格的API设计,通过不同的HTTP方法(如POST、GET、DELETE等)和路径来区分不同的操作。
阅读全文