@RequestMapping("/page") public R page(@RequestParam Map<String, Object> params, HttpServletRequest request){ logger.debug("page方法:,,Controller:{},,params:{}",this.getClass().getName(),JSONObject.toJSONString(params)); String role = String.valueOf(request.getSession().getAttribute("role")); if(false) return R.error(511,"永不会进入"); else if("用户".equals(role)) params.put("yonghuId",request.getSession().getAttribute("userId")); else if("医生".equals(role)) params.put("yishengId",request.getSession().getAttribute("userId")); if(params.get("orderBy")==null || params.get("orderBy")==""){ params.put("orderBy","id"); } PageUtils page = guahaoService.queryPage(params); //字典表数据转换 List<GuahaoView> list =(List<GuahaoView>)page.getList(); for(GuahaoView c:list){ //修改对应字典表字段 dictionaryService.dictionaryConvert(c, request); } return R.ok().put("data", page); }请详细解释一下
时间: 2023-07-15 13:11:31 浏览: 224
快速解决SpringMVC @RequestBody 用map接收请求参数的问题
这是一个使用 Spring MVC 框架编写的 Controller 的方法,通过 @RequestMapping 注解将该方法映射到 "/page" 路径,当请求到达该路径时,会执行该方法。
该方法接受两个参数:params 和 request,其中 params 是一个 Map,用于存储请求中的参数,request 是 HttpServletRequest 对象,用于获取请求相关的信息。
该方法首先打印日志,记录下当前 Controller 类的名称和传入的参数。然后获取当前用户的角色,如果角色为 "用户",则将该用户的 ID 存入 params 中的 "yonghuId" 中,如果角色为 "医生",则将该用户的 ID 存入 params 中的 "yishengId" 中。
接下来,如果请求中没有指定 "orderBy" 参数,则将其设置为 "id"。然后调用 guahaoService 的 queryPage 方法查询数据,并将其封装为一个 PageUtils 对象。
最后,将查询结果中的字典表数据进行转换,使用 dictionaryService 的 dictionaryConvert 方法将字典表中的代码值转换为对应的中文值。最后返回一个包含查询结果的 R 对象。
阅读全文