xieb
2025-01-21 bd8d88e5e984e59a5c895ec1a254e3dbae1f9f21
src/main/java/org/springblade/modules/assessment/wrapper/AssessmentScoreWrapper.java
@@ -16,11 +16,23 @@
 */
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;
/**
 * 考核评分 包装类,返回视图层所需的字段
@@ -29,6 +41,19 @@
 * @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();
@@ -46,5 +71,39 @@
      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());
   }
}