From 5a979967f3321c87d5ba8ff7fa768cfc648ed3fc Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Fri, 05 Jan 2024 16:35:38 +0800
Subject: [PATCH] 评优任务投票推荐人
---
src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskServiceImpl.java | 146 ++++++++++++++----------------------------------
1 files changed, 44 insertions(+), 102 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 1b652d0..547a7d3 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,48 +16,70 @@
*/
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.modules.evaluate.entity.EvaluateTaskEntity;
-import org.springblade.modules.evaluate.entity.EvaluateTaskSetEntity;
-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.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 lombok.AllArgsConstructor;
import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.modules.evaluate.dto.EvaluateTaskDTO;
+import org.springblade.modules.evaluate.entity.EvaluateTaskCategoryEntity;
+import org.springblade.modules.evaluate.entity.EvaluateTaskEntity;
+import org.springblade.modules.evaluate.excel.EvaluateTaskExcel;
+import org.springblade.modules.evaluate.mapper.EvaluateTaskMapper;
+import org.springblade.modules.evaluate.service.IEvaluateTaskCategoryService;
+import org.springblade.modules.evaluate.service.IEvaluateTaskService;
+import org.springblade.modules.evaluate.vo.EvaluateTaskVO;
+import org.springblade.modules.evaluate.wrapper.EvaluateTaskWrapper;
+import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import javax.validation.constraints.NotEmpty;
import java.util.List;
+import java.util.stream.Collectors;
/**
* 评优任务表 服务实现类
*
* @author aix
- * @since 2023-12-08
+ * @since 2024-01-05
*/
@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 IEvaluateTaskCategoryService evaluateTaskCategoryService;
@Override
public IPage<EvaluateTaskVO> selectEvaluateTaskPage(IPage<EvaluateTaskVO> page, EvaluateTaskVO evaluateTask) {
return page.setRecords(baseMapper.selectEvaluateTaskPage(page, evaluateTask));
+ }
+
+ @Override
+ @Transactional
+ public Boolean saveTaskAndCategory(EvaluateTaskDTO dto) {
+ EvaluateTaskDTO taskDTO = EvaluateTaskWrapper.build().entityDTO(dto);
+ boolean ret = save(taskDTO);
+ if (ret) {
+ List<EvaluateTaskCategoryEntity> evaluateTaskCategoryEntityList = dto.getCategoryEntities().stream().map(categoryEntity -> {
+ categoryEntity.setEvaluateTaskId(taskDTO.getId()); // 给每个categoryEntity对象的EvaluateTaskId属性设置新值
+ return categoryEntity; // 返回修改后的对象
+ })
+ .collect(Collectors.toList());
+ evaluateTaskCategoryService.saveOrUpdateBatch(evaluateTaskCategoryEntityList);
+ }
+ return ret;
+ }
+
+ @Override
+ public Boolean updateTaskAndCategory(EvaluateTaskDTO dto) {
+ boolean ret = updateById(EvaluateTaskWrapper.build().entityDTO(dto));
+ if (ret) {
+ List<EvaluateTaskCategoryEntity> evaluateTaskCategoryEntityList = dto.getCategoryEntities().stream().map(categoryEntity -> {
+ categoryEntity.setEvaluateTaskId(dto.getId()); // 给每个categoryEntity对象的EvaluateTaskId属性设置新值
+ return categoryEntity; // 返回修改后的对象
+ })
+ .collect(Collectors.toList());
+ evaluateTaskCategoryService.updateBatchById(evaluateTaskCategoryEntityList);
+ }
+ return ret;
}
@@ -68,86 +90,6 @@
// evaluateTask.setTypeName(DictCache.getValue(DictEnum.YES_NO, EvaluateTask.getType()));
//});
return evaluateTaskList;
- }
-
- @Override
- @Transactional
- public boolean saveOrUpdate(EvaluateTaskEntity evaluateTask) {
- boolean ret = super.saveOrUpdate(evaluateTask);
- if (null == evaluateTask.getType()) //
- return ret;
- if (ret) {
- //先删除
- QueryWrapper<EvaluateTaskSetEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("evaluate_task_id", evaluateTask.getId());
- evaluateTaskSetService.remove(queryWrapper);
-
-
- if (evaluateTask.getType() == 0) { //个人评优处理
- //保存
- JSONArray jsonArray = JSONArray.parseArray(JSONObject.toJSONString(evaluateTask.getCandidateNum()));
- for (int i = 0; i < jsonArray.size(); i++) {
- JSONObject obj = jsonArray.getJSONObject(i);//{"deptId":"1737282385453543425","deptName":"中国铜业","val":3,"users":[{"id":"1737304543567310850","name":"张二瑶"}
- Long deptId = obj.getLong("deptId");
- String deptName = obj.getString("deptName");
- String val = obj.getString("val");
- JSONArray userJson = JSONArray.parseArray(JSONObject.toJSONString(obj.get("users")));
- for (int j = 0; j < userJson.size(); j++) {
- EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity();
- entityPO.setEvaluateTaskId(evaluateTask.getId());
- entityPO.setDeptId(deptId);
- entityPO.setDeptName(deptName);
- entityPO.setUserId(userJson.getJSONObject(j).getLong("id"));
- entityPO.setUserName(userJson.getJSONObject(j).getString("name"));
- entityPO.setEvaluateTaskName(evaluateTask.getTaskName());
- evaluateTaskSetService.save(entityPO);
- }
- if (userJson.size() == 0) {
- QueryWrapper<User> userQueryWrapper = new QueryWrapper<>();
- userQueryWrapper.eq("dept_id", deptId);
- List<User> userList = userService.list(userQueryWrapper);
- for (User po: userList) {
- EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity();
- entityPO.setEvaluateTaskId(evaluateTask.getId());
- entityPO.setDeptId(deptId);
- entityPO.setDeptName(deptName);
- entityPO.setUserId(po.getId());
- entityPO.setUserName(po.getName());
- entityPO.setEvaluateTaskName(evaluateTask.getTaskName());
- evaluateTaskSetService.save(entityPO);
- }
- }
- }
- } else if (evaluateTask.getType() == 1){ //部门评优
- //获取所有部门保存
- List<Dept> list = deptService.list();
- for (Dept dept: list) {
- EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity();
- entityPO.setEvaluateTaskId(evaluateTask.getId());
- entityPO.setDeptId(dept.getId());
- entityPO.setDeptName(dept.getDeptName());
- entityPO.setType(1);
- entityPO.setEvaluateTaskName(evaluateTask.getTaskName());
- evaluateTaskSetService.save(entityPO);
- }
- }
-
- }
- return ret;
- }
- @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