欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > 分页查询面试记录和面试详情

分页查询面试记录和面试详情

2024/10/25 16:21:55 来源:https://blog.csdn.net/m0_64637029/article/details/141440194  浏览:    关键词:分页查询面试记录和面试详情

文章目录

    • 1.分页查询面试记录
        • 1.req和vo
          • 1.InterviewHistoryReq.java
          • 2.InterviewHistoryVO.java
        • 2.InterviewController.java
        • 3.service
          • 1.InterviewHistoryService.java
          • 2.InterviewHistoryServiceImpl.java
        • 4.测试
    • 2.查询面试详情
        • 1.InterviewQuestionHistoryVO.java
        • 2.InterviewController.java
        • 3.InterviewQuestionHistoryService.java
        • 4.InterviewQuestionHistoryServiceImpl.java
        • 5.测试

1.分页查询面试记录

1.req和vo
1.InterviewHistoryReq.java
package com.sunxiansheng.interview.server.entity.req;import com.sunxiansheng.interview.server.entity.page.PageInfo;
import lombok.Data;
import lombok.experimental.Accessors;import java.io.Serializable;/*** 分页信息** @author sun* @since 2024-07-21 16:03:41*/
@Data
@Accessors(chain = true) // 支持链式调用
public class InterviewHistoryReq implements Serializable {private static final long serialVersionUID = 1L;/*** 分页信息*/private PageInfo pageInfo;}
2.InterviewHistoryVO.java
package com.sunxiansheng.interview.api.vo;import lombok.Data;import java.io.Serializable;/*** 面试汇总记录表(InterviewHistory)实体类** @author makejava* @since 2024-05-23 22:56:03*/
@Data
public class InterviewHistoryVO implements Serializable {private static final long serialVersionUID = -69404155056273562L;/*** id*/private Long id;/*** 平均分*/private double avgScore;/*** 面试关键字*/private String keyWords;/*** 面试评价*/private String tip;/*** 创建时间*/private Long createdTime;}
2.InterviewController.java
    /*** 分页查询面试记录*/@PostMapping(value = "/getHistory")public Result<PageResult<InterviewHistoryVO>> getHistory(@RequestBody InterviewHistoryReq req) {try {if (log.isInfoEnabled()) {log.info("分页查询面试记录入参{}", JSON.toJSONString(req));}Preconditions.checkArgument(!Objects.isNull(req), "参数不能为空!");PageResult<InterviewHistoryVO> result = interviewHistoryService.getHistory(req);if (log.isInfoEnabled()) {log.info("分页查询面试记录出参{}", JSON.toJSONString(result));}return Result.ok(result);} catch (IllegalArgumentException e) {log.error("参数异常!错误原因{}", e.getMessage(), e);return Result.fail(e.getMessage());} catch (Exception e) {log.error("分页查询面试记录异常!错误原因{}", e.getMessage(), e);return Result.fail("分页查询面试记录异常!");}}
3.service
1.InterviewHistoryService.java
    PageResult<InterviewHistoryVO> getHistory(InterviewHistoryReq req);
2.InterviewHistoryServiceImpl.java
    /*** 分页查询** @param req* @return*/@Overridepublic PageResult<InterviewHistoryVO> getHistory(InterviewHistoryReq req) {// 构造查询条件InterviewHistoryPo interviewHistoryPo = new InterviewHistoryPo();interviewHistoryPo.setCreatedBy(LoginUtil.getLoginId());Integer pageNo = req.getPageInfo().getPageNo();Integer pageSize = req.getPageInfo().getPageSize();PageResult<InterviewHistoryPo> paginate = SunPageHelper.paginate(pageNo, pageSize,() -> this.interviewHistoryMapper.count(interviewHistoryPo),(offset, limit) -> this.interviewHistoryMapper.queryPage(interviewHistoryPo, offset, limit));List<InterviewHistoryPo> result = paginate.getResult();List<InterviewHistoryVO> collect = result.stream().map(res -> {InterviewHistoryVO interviewHistoryVO = new InterviewHistoryVO();interviewHistoryVO.setId(res.getId());interviewHistoryVO.setAvgScore(res.getAvgScore());interviewHistoryVO.setKeyWords(res.getKeyWords());interviewHistoryVO.setTip(res.getTip());interviewHistoryVO.setCreatedTime(res.getCreatedTime().getTime());return interviewHistoryVO;}).collect(Collectors.toList());PageResult<InterviewHistoryVO> build = new PageResult.Builder<InterviewHistoryVO>().pageNo(pageNo).pageSize(pageSize).total(paginate.getTotal()).result(collect).build();return build;}
4.测试

CleanShot 2024-07-24 at 15.49.31@2x

2.查询面试详情

1.InterviewQuestionHistoryVO.java
package com.sunxiansheng.interview.api.vo;import lombok.Data;import java.io.Serializable;/*** 面试题目记录表(InterviewQuestionHistory)实体类** @author makejava* @since 2024-05-23 22:56:31*/
@Data
public class InterviewQuestionHistoryVO implements Serializable {private static final long serialVersionUID = -60560874889446691L;/*** 均分*/private Double score;/*** 面试关键字*/private String keyWords;/*** 问题*/private String question;/*** 答案*/private String answer;/*** 用户答案*/private String userAnswer;}
2.InterviewController.java
    /*** 查询详情*/@GetMapping(value = "/detail")public Result<List<InterviewQuestionHistoryVO>> detail(Long id) {try {if (log.isInfoEnabled()) {log.info("查询详情入参{}", id);}Preconditions.checkArgument(!Objects.isNull(id), "参数不能为空!");List<InterviewQuestionHistoryVO> result = interviewQuestionHistoryService.detail(id);if (log.isInfoEnabled()) {log.info("查询详情出参{}", JSON.toJSONString(result));}return Result.ok(result);} catch (IllegalArgumentException e) {log.error("参数异常!错误原因{}", e.getMessage(), e);return Result.fail(e.getMessage());} catch (Exception e) {log.error("查询详情异常!错误原因{}", e.getMessage(), e);return Result.fail("查询详情异常!");}}
3.InterviewQuestionHistoryService.java
    /*** 详情* @param id* @return*/List<InterviewQuestionHistoryVO> detail(Long id);
4.InterviewQuestionHistoryServiceImpl.java
    /*** 详情* @param id* @return*/@Overridepublic List<InterviewQuestionHistoryVO> detail(Long id) {InterviewQuestionHistoryPo interviewQuestionHistoryPo = new InterviewQuestionHistoryPo();interviewQuestionHistoryPo.setInterviewId(id);interviewQuestionHistoryPo.setCreatedBy(LoginUtil.getLoginId());List<InterviewQuestionHistoryPo> interviewQuestionHistoryPoList = this.interviewQuestionHistoryMapper.queryAllByLimit(interviewQuestionHistoryPo);List<InterviewQuestionHistoryVO> collect = interviewQuestionHistoryPoList.stream().map(interviewQuestionHistoryPo1 -> {InterviewQuestionHistoryVO interviewQuestionHistoryVO = new InterviewQuestionHistoryVO();interviewQuestionHistoryVO.setScore(interviewQuestionHistoryPo1.getScore());interviewQuestionHistoryVO.setKeyWords(interviewQuestionHistoryPo1.getKeyWords());interviewQuestionHistoryVO.setQuestion(interviewQuestionHistoryPo1.getQuestion());interviewQuestionHistoryVO.setAnswer(interviewQuestionHistoryPo1.getAnswer());interviewQuestionHistoryVO.setUserAnswer(interviewQuestionHistoryPo1.getUserAnswer());return interviewQuestionHistoryVO;}).collect(Collectors.toList());return collect;}
5.测试

CleanShot 2024-07-24 at 16.09.04@2x

版权声明:

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

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