xieb
2025-01-09 8a591448377eff009b0b57d430f63f3f3db42e4c
src/main/java/org/springblade/modules/assessment/service/impl/AssessmentTaskServiceImpl.java
@@ -16,25 +16,25 @@
 */
package org.springblade.modules.assessment.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import lombok.AllArgsConstructor;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.modules.assessment.entity.AssessmentSetEntity;
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.IAssessmentScoreService;
import org.springblade.modules.assessment.service.IAssessmentSetAssessorService;
import org.springblade.modules.assessment.service.IAssessmentSetService;
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.springblade.modules.assessment.vo.AssessmentTaskVO;
import org.springblade.modules.utils.DateUtils;
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;
/**
@@ -47,9 +47,9 @@
@AllArgsConstructor
public class AssessmentTaskServiceImpl extends BaseServiceImpl<AssessmentTaskMapper, AssessmentTaskEntity> implements IAssessmentTaskService {
   private final IEvaluateCandidateService evaluateCandidateService;
   private final IEvaluateTaskSetService evaluateTaskSetService;
   private final IEvaluateCandidateAssessorService evaluateCandidateAssessorService;
   private final IAssessmentSetService assessmentSetService;
   private final IAssessmentSetAssessorService assessmentSetAssessorService;
   private final IAssessmentScoreService assessmentScoreService;
   @Override
   public IPage<AssessmentTaskVO> selectAssessmentTaskPage(IPage<AssessmentTaskVO> page, AssessmentTaskVO assessmentTask) {
@@ -67,21 +67,30 @@
   }
   @Override
   public boolean saveOrUpdate(AssessmentTaskEntity assessmentTask) {
      if (DateUtils.isBeforeNow(assessmentTask.getStartTime())) { //如果是小于当前日期 修改状态
         assessmentTask.setIsAssessmentOk(0);
      }
      return super.saveOrUpdate(assessmentTask);
   }
   @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.eq("assessment_task_id", id);
            List<AssessmentSetEntity> list = assessmentSetService.list(queryWrapper);
            assessmentSetService.remove(queryWrapper);
            assessmentScoreService.remove(queryWrapper);
            for (AssessmentSetEntity po: list
                ) {
               QueryWrapper qw = new QueryWrapper();
               qw.eq("evaluate_candidate_id", po.getId());
               evaluateCandidateAssessorService.remove(qw);
               qw.eq("assessment_set_id", po.getId());
               assessmentSetAssessorService.remove(qw);
            }
         }