| | |
| | | */ |
| | | package org.springblade.modules.assessment.wrapper; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import org.springblade.common.cache.SysCache; |
| | | import org.springblade.core.mp.support.BaseEntityWrapper; |
| | | import org.springblade.core.tool.utils.BeanUtil; |
| | | import org.springblade.core.tool.utils.SpringUtil; |
| | | import org.springblade.modules.assessment.entity.AssessmentScoreEntity; |
| | | import org.springblade.modules.assessment.service.IAssessmentScoreService; |
| | | import org.springblade.modules.assessment.service.IAssessmentSetService; |
| | | import org.springblade.modules.assessment.service.IAssessmentTaskService; |
| | | import org.springblade.modules.assessment.vo.AssessmentScoreVO; |
| | | import org.springblade.modules.system.entity.User; |
| | | import org.springblade.modules.system.service.IUserService; |
| | | |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * 考核评分 包装类,返回视图层所需的字段 |
| | |
| | | * @since 2023-12-13 |
| | | */ |
| | | public class AssessmentScoreWrapper extends BaseEntityWrapper<AssessmentScoreEntity, AssessmentScoreVO> { |
| | | |
| | | private static final IAssessmentSetService assessmentSetService; |
| | | private static final IAssessmentScoreService assessmentScoreService; |
| | | private static final IAssessmentTaskService assessmentTaskService; |
| | | |
| | | private static final IUserService userService; |
| | | |
| | | static { |
| | | assessmentSetService = SpringUtil.getBean(IAssessmentSetService.class); |
| | | assessmentScoreService = SpringUtil.getBean(IAssessmentScoreService.class); |
| | | assessmentTaskService = SpringUtil.getBean(IAssessmentTaskService.class); |
| | | userService = SpringUtil.getBean(IUserService.class); |
| | | } |
| | | |
| | | public static AssessmentScoreWrapper build() { |
| | | return new AssessmentScoreWrapper(); |
| | |
| | | return assessmentScoreVO; |
| | | } |
| | | |
| | | @Override |
| | | public IPage<AssessmentScoreVO> pageVO(IPage<AssessmentScoreEntity> pages) { |
| | | List<AssessmentScoreVO> records = listVO(pages.getRecords()); |
| | | //开始处理 |
| | | for (AssessmentScoreVO vo: records) { |
| | | if (vo.getType() == 0) { |
| | | User user = userService.getById(vo.getBeId()); //被考核人 |
| | | vo.setUserName(user.getName()); |
| | | vo.setCode(user.getCode()); |
| | | vo.setDeptName(SysCache.getDeptName(Long.valueOf(user.getDeptId()))); |
| | | vo.setPostName(SysCache.getPostName(Long.valueOf(user.getPostId()))); |
| | | |
| | | } else { |
| | | vo.setDeptName(SysCache.getDeptName(Long.valueOf(vo.getBeId()))); |
| | | } |
| | | |
| | | User scoreUser = userService.getById(vo.getScoreUserId()); //考核人 |
| | | vo.setScoreUserName(scoreUser.getName()); |
| | | vo.setScoreDeptName(SysCache.getDeptName(Long.valueOf(scoreUser.getDeptId()))); |
| | | vo.setScorePostName(SysCache.getPostName(Long.valueOf(scoreUser.getPostId()))); |
| | | |
| | | } |
| | | |
| | | IPage<AssessmentScoreVO> pageVo = new Page<>(pages.getCurrent(), pages.getSize(), pages.getTotal()); |
| | | pageVo.setRecords(records); |
| | | return pageVo; |
| | | } |
| | | |
| | | @Override |
| | | public List<AssessmentScoreVO> listVO(List<AssessmentScoreEntity> list) { |
| | | |
| | | return list.stream().map(this::entityVO).collect(Collectors.toList()); |
| | | } |
| | | |
| | | |
| | | } |