| | |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.modules.assessment.wrapper.CandidateJsonObj; |
| | | import org.springblade.modules.evaluate.entity.EvaluateResultEntity; |
| | | import org.springblade.modules.evaluate.entity.EvaluateTaskEntity; |
| | | import org.springblade.modules.evaluate.excel.EvaluateTaskExcel; |
| | | import org.springblade.modules.evaluate.service.IEvaluateResultService; |
| | | import org.springblade.modules.evaluate.service.IEvaluateTaskService; |
| | | import org.springblade.modules.evaluate.vo.EvaluateTaskVO; |
| | | import org.springblade.modules.evaluate.wrapper.EvaluateResultWrapper; |
| | | import org.springblade.modules.system.entity.User; |
| | | import org.springblade.modules.system.service.IUserService; |
| | | import org.springframework.web.bind.annotation.*; |
| | |
| | | import springfox.documentation.annotations.ApiIgnore; |
| | | import java.util.Map; |
| | | import java.util.List; |
| | | import java.util.Set; |
| | | import java.util.stream.Collectors; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | |
| | | /** |
| | |
| | | |
| | | private final IEvaluateTaskService evaluateTaskService; |
| | | private final IUserService userService; |
| | | |
| | | private final IEvaluateResultService evaluateResultService; |
| | | |
| | | /** |
| | | * 评优任务表 详情 |
| | |
| | | wrapper.or().like("candidate_num",deptId).or().like("candidate_num",userId); |
| | | IPage<EvaluateTaskEntity> pages = evaluateTaskService.page(Condition.getPage(query), wrapper); |
| | | |
| | | // 处理获取当前部门的用户 |
| | | // 处理获取当前部门的用户 type为0时 |
| | | List<EvaluateTaskVO> records = EvaluateTaskWrapper.build().listVO(pages.getRecords()); |
| | | for (EvaluateTaskVO vo: records) { |
| | | List<CandidateJsonObj> candidateJsonObjs = JSONArray.parseArray(JSON.toJSONString(vo.getCandidateNum()),CandidateJsonObj.class); |
| | | for (CandidateJsonObj obj:candidateJsonObjs) { |
| | | if (deptId.equals(obj.getDeptId()) && obj.getUsers().size() > 0) { |
| | | vo.setSelfCandidate(obj.getUsers()); |
| | | break; |
| | | } else if(deptId.equals(obj.getDeptId()) && obj.getUsers().size() == 0) { |
| | | QueryWrapper<User> userQueryWrapper = new QueryWrapper<>(); |
| | | userQueryWrapper.like("dept_id", deptId); |
| | | List<User> users = userService.list(userQueryWrapper); |
| | | vo.setSelfCandidate(users); |
| | | break; |
| | | if (vo.getType() == 0) { |
| | | List<CandidateJsonObj> candidateJsonObjs = JSONArray.parseArray(JSON.toJSONString(vo.getCandidateNum()),CandidateJsonObj.class); |
| | | QueryWrapper<User> userQueryWrapper = new QueryWrapper<>(); |
| | | userQueryWrapper.like("dept_id", deptId); |
| | | List<User> users = userService.list(userQueryWrapper); |
| | | |
| | | for (CandidateJsonObj obj:candidateJsonObjs) { |
| | | if (deptId.equals(obj.getDeptId()) && obj.getUsers().size() > 0) { |
| | | |
| | | //处理自己部门用户 |
| | | List<Object> commonItems = obj.getUsers().stream() |
| | | .filter(item1 -> users.stream() |
| | | .anyMatch(item2 -> item1.getId().equals(item2.getId()))) |
| | | .collect(Collectors.toList()); |
| | | |
| | | vo.setSelfCandidate(commonItems); |
| | | |
| | | break; |
| | | } else if(deptId.equals(obj.getDeptId()) && obj.getUsers().size() == 0) { |
| | | |
| | | vo.setSelfCandidate(users); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | //是否评论完成 |
| | | QueryWrapper<EvaluateResultEntity> resultEntityQueryWrapper = new QueryWrapper<>(); |
| | | resultEntityQueryWrapper.eq("score_user_id", userId); |
| | | resultEntityQueryWrapper.eq("type", 0); |
| | | resultEntityQueryWrapper.eq("evaluate_task_id", vo.getId()); |
| | | long reqCount = evaluateResultService.count(resultEntityQueryWrapper); |
| | | vo.setIsEvaluateOk(reqCount > 0); |
| | | if (reqCount > 0) { |
| | | vo.setEvaluateResultVO(EvaluateResultWrapper.build().entityVO(evaluateResultService.getOne(resultEntityQueryWrapper))); |
| | | } |
| | | |
| | | } else { |
| | | //是否评论完成 |
| | | QueryWrapper<EvaluateResultEntity> resultEntityQueryWrapper = new QueryWrapper<>(); |
| | | resultEntityQueryWrapper.eq("score_user_id", userId); |
| | | resultEntityQueryWrapper.eq("type", 1); |
| | | resultEntityQueryWrapper.eq("evaluate_task_id", vo.getId()); |
| | | long reqCount = evaluateResultService.count(resultEntityQueryWrapper); |
| | | vo.setIsEvaluateOk(reqCount > 0); |
| | | if (reqCount > 0) { |
| | | vo.setEvaluateResultVO(EvaluateResultWrapper.build().entityVO(evaluateResultService.getOne(resultEntityQueryWrapper))); |
| | | } |
| | | } |
| | | |