From ffaa6ca7eab630bf64f66e687f835dcd57f39f1a Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Thu, 04 Jan 2024 09:04:38 +0800
Subject: [PATCH] 查询考核列表异常

---
 src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java |   38 ++++++++++++++++++++++++++++++++++++++
 src/main/java/org/springblade/modules/assessment/wrapper/AssessmentSetAssessorWrapper.java   |   13 ++++++++++---
 2 files changed, 48 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java b/src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java
index cf1d511..a8793dd 100644
--- a/src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java
+++ b/src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java
@@ -16,15 +16,25 @@
  */
 package org.springblade.modules.assessment.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import lombok.AllArgsConstructor;
 import org.springblade.modules.assessment.entity.AssessmentTaskEntity;
 import org.springblade.modules.assessment.vo.AssessmentTaskVO;
 import org.springblade.modules.assessment.excel.AssessmentTaskExcel;
 import org.springblade.modules.assessment.mapper.AssessmentTaskMapper;
 import org.springblade.modules.assessment.service.IAssessmentTaskService;
+import org.springblade.modules.evaluate.entity.EvaluateCandidateEntity;
+import org.springblade.modules.evaluate.service.IEvaluateCandidateAssessorService;
+import org.springblade.modules.evaluate.service.IEvaluateCandidateService;
+import org.springblade.modules.evaluate.service.IEvaluateTaskSetService;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.transaction.annotation.Transactional;
+
+import javax.validation.constraints.NotEmpty;
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -34,7 +44,12 @@
  * @since 2023-12-07
  */
 @Service
+@AllArgsConstructor
 public class AssessmentTaskServiceImpl extends BaseServiceImpl<AssessmentTaskMapper, AssessmentTaskEntity> implements IAssessmentTaskService {
+
+	private final IEvaluateCandidateService evaluateCandidateService;
+	private final IEvaluateTaskSetService evaluateTaskSetService;
+	private final IEvaluateCandidateAssessorService evaluateCandidateAssessorService;
 
 	@Override
 	public IPage<AssessmentTaskVO> selectAssessmentTaskPage(IPage<AssessmentTaskVO> page, AssessmentTaskVO assessmentTask) {
@@ -51,4 +66,27 @@
 		return assessmentTaskList;
 	}
 
+	@Override
+	@Transactional
+	public boolean deleteLogic(@NotEmpty List<Long> ids) {
+		boolean ret = super.deleteLogic(ids);
+		if (ret) {
+			for (Long id: ids) {
+				QueryWrapper queryWrapper = new QueryWrapper();
+				queryWrapper.eq("evaluate_task_id", id);
+				List<EvaluateCandidateEntity> list = evaluateCandidateService.list(queryWrapper);
+				evaluateCandidateService.remove(queryWrapper);
+				evaluateTaskSetService.remove(queryWrapper);
+				for (EvaluateCandidateEntity po: list
+					 ) {
+					QueryWrapper qw = new QueryWrapper();
+					qw.eq("evaluate_candidate_id", po.getId());
+					evaluateCandidateAssessorService.remove(qw);
+				}
+			}
+
+		}
+		return ret;
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/assessment/wrapper/AssessmentSetAssessorWrapper.java b/src/main/java/org/springblade/modules/assessment/wrapper/AssessmentSetAssessorWrapper.java
index ea2ccf8..47a5144 100644
--- a/src/main/java/org/springblade/modules/assessment/wrapper/AssessmentSetAssessorWrapper.java
+++ b/src/main/java/org/springblade/modules/assessment/wrapper/AssessmentSetAssessorWrapper.java
@@ -22,6 +22,7 @@
 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.entity.AssessmentSetAssessorEntity;
 import org.springblade.modules.assessment.service.IAssessmentScoreService;
 import org.springblade.modules.assessment.service.IAssessmentSetService;
@@ -85,10 +86,16 @@
 			queryWrapper.eq("type", vo.getAssessmentTaskVO().getType());//任务状态是个人还是部门 0:个人1:部门  自己是否评论完成,根据type获取对应的考核结果数量。
 			queryWrapper.eq("score_user_id", userId);
 			queryWrapper.eq("assessment_task_id", vo.getAssessmentTaskVO().getId());// 任务id
-			AssessmentScoreVO assessmentScoreVO = AssessmentScoreWrapper.build().entityVO(assessmentScoreService.getOne(queryWrapper));
+			AssessmentScoreEntity entity = assessmentScoreService.getOne(queryWrapper);
+			if (null != entity) {
+				AssessmentScoreVO assessmentScoreVO = AssessmentScoreWrapper.build().entityVO(assessmentScoreService.getOne(queryWrapper));
 
-			vo.setIsAssessmentOk(null != assessmentScoreVO);
-			vo.setAssessmentScoreVO(assessmentScoreVO);
+				vo.setIsAssessmentOk(null != assessmentScoreVO);
+				vo.setAssessmentScoreVO(assessmentScoreVO);
+			} else {
+				vo.setIsAssessmentOk(false);
+			}
+
 		}
 
 		IPage<AssessmentSetAssessorVO> pageVo = new Page<>(pages.getCurrent(), pages.getSize(), pages.getTotal());

--
Gitblit v1.9.3