欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 美景 > mybatis plus 分页查询出来数据后对他二次 修改数据 封装返回

mybatis plus 分页查询出来数据后对他二次 修改数据 封装返回

2025/4/16 12:47:54 来源:https://blog.csdn.net/weixin_48616345/article/details/147163859  浏览:    关键词:mybatis plus 分页查询出来数据后对他二次 修改数据 封装返回

mybatis plus 分页查询出来数据后对他二次 修改数据 封装返回

  /*** 搜索问卷** @param keyword* @param pageNo* @param pageSize* @return*/@AutoLog(value = "v_survey-搜索")@ApiOperation(value="v_survey-搜索", notes="v_survey-搜索")@GetMapping(value = "/search")public Result<IPage<VSurvey>> search(@RequestParam(name="keyword",required=true) String keyword,@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {// 1. 执行搜索QueryWrapper<VSurvey> queryWrapper = new QueryWrapper<>();queryWrapper.like("title", keyword).or().like("description", keyword);queryWrapper.orderByDesc("create_time") // 按创建时间倒序.orderByDesc("update_time"); // 如果 create_time 相同,则按修改时间倒序Page<VSurvey> page = new Page<VSurvey>(pageNo, pageSize);IPage<VSurvey> pageList = vSurveyService.page(page, queryWrapper);IPage<VSurvey> dtoPage = new Page<>();LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();if (sysUser.getPost().equals("teacher")){QueryWrapper<SysUser> queryWrapper1 = new QueryWrapper<>();queryWrapper1.eq("post", "student");queryWrapper1.eq("del_flag", 0);List<SysUser> list = userMapper.selectList(queryWrapper1);// 封装包含状态标签的DTO对象dtoPage = pageList.convert(survey  -> {VSurvey dto = new VSurvey();BeanUtils.copyProperties(survey,  dto);QueryWrapper<VSurveyAnswer> queryWrapper2 = new QueryWrapper<>();queryWrapper2.eq("survey_id", dto.getId());List<VSurveyAnswer> surveyAnswers = vSurveyAnswerMapper.selectList(queryWrapper2);if (!list.isEmpty()&& !surveyAnswers.isEmpty() && list.size() == surveyAnswers.size()){dto.setStatus(2);}else{dto.setStatus(1);}return dto;});}else{// 封装包含状态标签的DTO对象dtoPage = pageList.convert(survey  -> {VSurvey dto = new VSurvey();BeanUtils.copyProperties(survey,  dto);QueryWrapper<VSurveyAnswer> queryWrapper2 = new QueryWrapper<>();queryWrapper2.eq("survey_id", dto.getId());queryWrapper2.eq("student_id", sysUser.getId());List<VSurveyAnswer> surveyAnswers = vSurveyAnswerMapper.selectList(queryWrapper2);if (!surveyAnswers.isEmpty()){dto.setStatus(2);}else{dto.setStatus(1);}return dto;});}// 2. 保存搜索记录VSearchHistory searchHistory = new VSearchHistory();searchHistory.setType(4);searchHistory.setKeyword(keyword);vSearchHistoryService.addSearchHistory(searchHistory);;return Result.OK(dtoPage);}}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词