| | |
| | | */ |
| | | package org.springblade.modules.evaluate.wrapper; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.google.common.reflect.TypeToken; |
| | | import org.springblade.core.mp.support.BaseEntityWrapper; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.utils.BeanUtil; |
| | | import org.springblade.modules.assessment.wrapper.CandidateJsonObj; |
| | | import org.springblade.core.tool.utils.SpringUtil; |
| | | import org.springblade.modules.evaluate.dto.EvaluateTaskDTO; |
| | | import org.springblade.modules.evaluate.entity.EvaluateTaskEntity; |
| | | import org.springblade.modules.evaluate.entity.EvaluateTaskReferrerEntity; |
| | | import org.springblade.modules.evaluate.service.IEvaluateTaskReferrerService; |
| | | import org.springblade.modules.evaluate.vo.EvaluateTaskVO; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * 评优任务表 包装类,返回视图层所需的字段 |
| | | * |
| | | * @author aix |
| | | * @since 2023-12-08 |
| | | * @since 2024-01-05 |
| | | */ |
| | | public class EvaluateTaskWrapper extends BaseEntityWrapper<EvaluateTaskEntity, EvaluateTaskVO> { |
| | | |
| | | private static final IEvaluateTaskReferrerService evaluateTaskReferrerService; |
| | | |
| | | static { |
| | | evaluateTaskReferrerService = SpringUtil.getBean(IEvaluateTaskReferrerService.class); |
| | | } |
| | | |
| | | public static EvaluateTaskWrapper build() { |
| | | return new EvaluateTaskWrapper(); |
| | |
| | | return evaluateTaskVO; |
| | | } |
| | | |
| | | public EvaluateTaskDTO entityDTO(EvaluateTaskEntity evaluateTask) { |
| | | EvaluateTaskDTO dto = Objects.requireNonNull(BeanUtil.copy(evaluateTask, EvaluateTaskDTO.class)); |
| | | return dto; |
| | | } |
| | | |
| | | /** |
| | | * h5返回自己第一轮投票的人 |
| | | * @param pages |
| | | * @return |
| | | */ |
| | | public IPage<EvaluateTaskVO> h5ReferremPageVO(IPage<EvaluateTaskEntity> pages) { |
| | | List<EvaluateTaskVO> records = listVO(pages.getRecords()); |
| | | |
| | | for (EvaluateTaskVO vo: records) { |
| | | QueryWrapper queryWrapper = new QueryWrapper(); |
| | | queryWrapper.eq("create_user", AuthUtil.getUserId()); |
| | | queryWrapper.eq("evaluate_task_id", vo.getId()); |
| | | List<EvaluateTaskReferrerEntity> evaluateTaskReferrerEntities = evaluateTaskReferrerService.list(queryWrapper); |
| | | |
| | | vo.setIsVote(evaluateTaskReferrerEntities.size() > 0); |
| | | if (vo.getIsVote()) |
| | | vo.setEvaluateTaskReferrerVOS(EvaluateTaskReferrerWrapper.build().listVO(evaluateTaskReferrerEntities)); |
| | | } |
| | | |
| | | IPage<EvaluateTaskVO> pageVo = new Page<>(pages.getCurrent(), pages.getSize(), pages.getTotal()); |
| | | pageVo.setRecords(records); |
| | | return pageVo; |
| | | } |
| | | |
| | | /** |
| | | * 第二轮候选人投票 |
| | | * @return |
| | | */ |
| | | public IPage<EvaluateTaskVO> h5CandidatePageVO(IPage<EvaluateTaskEntity> pages) { |
| | | List<EvaluateTaskVO> records = listVO(pages.getRecords()); |
| | | |
| | | // for (EvaluateTaskVO vo: records) { |
| | | // QueryWrapper queryWrapper = new QueryWrapper(); |
| | | // queryWrapper.eq("create_user", AuthUtil.getUserId()); |
| | | // queryWrapper.eq("evaluate_task_id", vo.getId()); |
| | | // List<EvaluateTaskReferrerEntity> evaluateTaskReferrerEntities = evaluateTaskReferrerService.list(queryWrapper); |
| | | // |
| | | // vo.setIsVote(evaluateTaskReferrerEntities.size() > 0); |
| | | // if (vo.getIsVote()) |
| | | // vo.setEvaluateTaskReferrerVOS(EvaluateTaskReferrerWrapper.build().listVO(evaluateTaskReferrerEntities)); |
| | | // } |
| | | |
| | | IPage<EvaluateTaskVO> pageVo = new Page<>(pages.getCurrent(), pages.getSize(), pages.getTotal()); |
| | | pageVo.setRecords(records); |
| | | return pageVo; |
| | | } |
| | | |
| | | |
| | | } |