From d2cf8a7f7bcf49ace058d9eec587d75c4f764a2e Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Tue, 02 Jan 2024 11:56:13 +0800
Subject: [PATCH] 考核任务设置被考核人

---
 src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskServiceImpl.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskServiceImpl.java b/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskServiceImpl.java
index b510ae4..fe78712 100644
--- a/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskServiceImpl.java
+++ b/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;
+	}
+
 }

--
Gitblit v1.9.3