xieb
2024-01-02 d2cf8a7f7bcf49ace058d9eec587d75c4f764a2e
src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskServiceImpl.java
@@ -16,15 +16,32 @@
 */
package org.springblade.modules.evaluate.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.AllArgsConstructor;
import org.springblade.core.tool.utils.StringUtil;
import org.springblade.modules.evaluate.entity.EvaluateTaskEntity;
import org.springblade.modules.evaluate.entity.EvaluateTaskSetEntity;
import org.springblade.modules.evaluate.service.IEvaluateCandidateService;
import org.springblade.modules.evaluate.service.IEvaluateTaskSetService;
import org.springblade.modules.evaluate.vo.EvaluateTaskVO;
import org.springblade.modules.evaluate.excel.EvaluateTaskExcel;
import org.springblade.modules.evaluate.mapper.EvaluateTaskMapper;
import org.springblade.modules.evaluate.service.IEvaluateTaskService;
import org.springblade.modules.evaluate.wrapper.EvaluateCandidateWrapper;
import org.springblade.modules.evaluate.wrapper.EvaluateTaskWrapper;
import org.springblade.modules.system.entity.Dept;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.service.IDeptService;
import org.springblade.modules.system.service.IUserService;
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.List;
/**
@@ -34,7 +51,38 @@
 * @since 2023-12-08
 */
@Service
@AllArgsConstructor
public class EvaluateTaskServiceImpl extends BaseServiceImpl<EvaluateTaskMapper, EvaluateTaskEntity> implements IEvaluateTaskService {
   private final IEvaluateTaskSetService evaluateTaskSetService;
   private final IUserService userService;
   private final IDeptService deptService;
   private final IEvaluateCandidateService evaluateCandidateService;
   @Override
   @Transactional
   public boolean save(EvaluateTaskVO vo) {
      Boolean ret = super.save(EvaluateTaskWrapper.build().entityPO(vo));
      if (ret) {
         ret = evaluateCandidateService.saveBatch(vo.getCandidateEntities());
      }
      return ret;
   }
   @Override
   @Transactional
   public boolean updateById(EvaluateTaskVO vo) {
      if (null == vo.getId())
         return false;
      Boolean ret = super.updateById(EvaluateTaskWrapper.build().entityPO(vo));
      if (ret) {
         ret = evaluateCandidateService.saveOrUpdateBatch(vo.getCandidateEntities());
      }
      return ret;
   }
   @Override
   public IPage<EvaluateTaskVO> selectEvaluateTaskPage(IPage<EvaluateTaskVO> page, EvaluateTaskVO evaluateTask) {
@@ -51,4 +99,19 @@
      return evaluateTaskList;
   }
   @Override
   @Transactional
   public boolean deleteLogic(List<Long> ids) {
      boolean ret = super.deleteLogic(ids);
      if (ret) {
         for (Long id:ids) {
            //先删除
            QueryWrapper<EvaluateTaskSetEntity> queryWrapper = new QueryWrapper<>();
            queryWrapper.eq("evaluate_task_id", id);
            evaluateTaskSetService.remove(queryWrapper);
         }
      }
      return ret;
   }
}