Kaynağa Gözat

Merge remote-tracking branch 'origin/master'

wangchangsheng 1 yıl önce
ebeveyn
işleme
b553df231b

+ 8 - 9
ims-service/ims-eval/src/main/java/com/ims/eval/controller/DeptAssessmentDeclarationController.java

@@ -184,7 +184,7 @@ public class DeptAssessmentDeclarationController {
 			if (b) {
 				return R.ok().data(b);
 			} else {
-				return R.ok().data("员已重复添加!");
+				return R.ok().data("员已重复!");
 			}
 		} catch (CustomException e) {
 			return R.customError(e.getMessage()).data("失败!");
@@ -215,10 +215,9 @@ public class DeptAssessmentDeclarationController {
 				//遍历Excel表每一行的数据
 				for (String[] str : strings) {
 					DeptAssessmentDeclarationContent deptAssessmentDeclarationContent = new DeptAssessmentDeclarationContent();
-					deptAssessmentDeclarationContent.setId(str[0]);
-					deptAssessmentDeclarationContent.setAssessmentDeclarationId(str[1]);
-					deptAssessmentDeclarationContent.setEmployeeNo(str[2]);
-					DeptAssessmentDeclaration deptAssessmentDeclaration = deptAssessmentDeclarationService.getById(str[1]);
+					deptAssessmentDeclarationContent.setAssessmentDeclarationId(str[0]);
+					deptAssessmentDeclarationContent.setEmployeeNo(str[1]);
+					DeptAssessmentDeclaration deptAssessmentDeclaration = deptAssessmentDeclarationService.getById(str[0]);
 					if (ObjectUtil.isNotNull(deptAssessmentDeclaration)){
 						JSONObject jsonArr = userService.pageList(1, 500, deptAssessmentDeclaration.getDeptId(), "", "", "", "", "", request);
 						JSONObject jsonArr1 = (JSONObject) jsonArr.get("data");
@@ -229,12 +228,12 @@ public class DeptAssessmentDeclarationController {
 							deptAssessmentDeclarationContent.setEmployeeId(user.getId());
 						}
 					}
-					deptAssessmentDeclarationContent.setEmployeeName(str[3]);
-					deptAssessmentDeclarationContent.setSerialNumber(Convert.toInt(str[4]));
-					deptAssessmentDeclarationContent.setSuggestedValue(str[5]);
+					deptAssessmentDeclarationContent.setEmployeeName(str[2]);
+					deptAssessmentDeclarationContent.setSerialNumber(Convert.toInt(str[3]));
+					deptAssessmentDeclarationContent.setSuggestedValue(str[4]);
 					deptAssessmentDeclarationContentList.add(deptAssessmentDeclarationContent);
 				}
-				boolean b = deptAssessmentDeclarationContentService.saveOrUpdateBatch(deptAssessmentDeclarationContentList);
+				boolean b = deptAssessmentDeclarationContentService.importDataList(deptAssessmentDeclarationContentList);
 				if (b) {
 					return R.ok().data(b);
 				} else {

+ 1 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/service/IDeptAssessmentDeclarationContentService.java

@@ -18,4 +18,5 @@ public interface IDeptAssessmentDeclarationContentService extends IService<DeptA
 
 	boolean saveOrUpdateBatch(List<DeptAssessmentDeclarationContent> deptAssessmentDeclarationContentList);
 
+	boolean importDataList(List<DeptAssessmentDeclarationContent> deptAssessmentDeclarationContentList);
 }

+ 51 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/DeptAssessmentDeclarationContentServiceImpl.java

@@ -1,14 +1,23 @@
 package com.ims.eval.service.impl;
 
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONUtil;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ims.common.utils.StringUtils;
 import com.ims.eval.dao.DeptAssessmentDeclarationContentMapper;
+import com.ims.eval.entity.DeptAssessmentDeclaration;
 import com.ims.eval.entity.DeptAssessmentDeclarationContent;
+import com.ims.eval.entity.dto.request.UserDTO;
 import com.ims.eval.service.IDeptAssessmentDeclarationContentService;
+import com.ims.eval.service.IDeptAssessmentDeclarationService;
+import com.ims.eval.service.IUserService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -20,6 +29,15 @@ import java.util.List;
 @Service
 public class DeptAssessmentDeclarationContentServiceImpl extends ServiceImpl<DeptAssessmentDeclarationContentMapper, DeptAssessmentDeclarationContent> implements IDeptAssessmentDeclarationContentService {
 
+	@Autowired
+	private IDeptAssessmentDeclarationService deptAssessmentDeclarationService;
+
+	@Autowired
+	private IUserService userService;
+
+	@Autowired
+	private HttpServletRequest request;
+
 	@Override
 	public List<DeptAssessmentDeclarationContent> detailsList(String assessmentDeclarationId) {
 		return baseMapper.detailsList(assessmentDeclarationId);
@@ -90,4 +108,37 @@ public class DeptAssessmentDeclarationContentServiceImpl extends ServiceImpl<Dep
 		return b;
 	}
 
+	@Override
+	public boolean importDataList(List<DeptAssessmentDeclarationContent> deptAssessmentDeclarationContentList) {
+		boolean b = false;
+		for (DeptAssessmentDeclarationContent deptAssessmentDeclarationContent : deptAssessmentDeclarationContentList) {
+			DeptAssessmentDeclaration deptAssessmentDeclaration = deptAssessmentDeclarationService.getById(deptAssessmentDeclarationContent.getAssessmentDeclarationId());
+			if (ObjectUtil.isNotNull(deptAssessmentDeclaration)) {
+				JSONObject jsonArr = userService.pageList(1, 500, deptAssessmentDeclaration.getDeptId(), "", "", "", "", "", request);
+				JSONObject jsonArr1 = (JSONObject) jsonArr.get("data");
+				JSONArray array = JSONUtil.parseArray(jsonArr1.get("records"));
+				List<UserDTO> userList = JSONUtil.toList(array, UserDTO.class);
+				UserDTO user = userList.stream().filter(item -> item.getNo().equals(deptAssessmentDeclarationContent.getEmployeeNo())).findFirst().orElse(null);
+				if (ObjectUtil.isNotNull(user)) {
+					deptAssessmentDeclarationContent.setEmployeeId(user.getId());
+				}
+			}
+			QueryWrapper<DeptAssessmentDeclarationContent> qw = new QueryWrapper<>();
+			if (StringUtils.isNotEmpty(deptAssessmentDeclarationContent.getAssessmentDeclarationId())) {
+				qw.lambda().like(DeptAssessmentDeclarationContent::getAssessmentDeclarationId, deptAssessmentDeclarationContent.getAssessmentDeclarationId());
+			}
+			if (StringUtils.isNotEmpty(deptAssessmentDeclarationContent.getEmployeeId())) {
+				qw.lambda().like(DeptAssessmentDeclarationContent::getEmployeeId, deptAssessmentDeclarationContent.getEmployeeId());
+			}
+			DeptAssessmentDeclarationContent obj = super.getOne(qw);
+			if (ObjectUtil.isNotNull(obj)) {//修改
+				deptAssessmentDeclarationContent.setId(obj.getId());
+				b = super.updateById(deptAssessmentDeclarationContent);
+			} else {
+				b = super.save(deptAssessmentDeclarationContent);
+			}
+		}
+		return b;
+	}
+
 }

+ 10 - 8
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/DeptAssessmentDeclarationServiceImpl.java

@@ -70,14 +70,16 @@ public class DeptAssessmentDeclarationServiceImpl extends ServiceImpl<DeptAssess
 		JSONArray array = JSONUtil.parseArray(jsonArr1.get("records"));
 		List<UserDTO> userList = JSONUtil.toList(array, UserDTO.class);
 		for (int i = 0; i < userList.size(); i++) {
-			DeptAssessmentDeclarationContent deptAssessmentDeclarationContent = new DeptAssessmentDeclarationContent();
-			deptAssessmentDeclarationContent.setAssessmentDeclarationId(id);
-			deptAssessmentDeclarationContent.setSerialNumber(i + 1);
-			deptAssessmentDeclarationContent.setEmployeeId(userList.get(i).getId());
-			deptAssessmentDeclarationContent.setEmployeeNo(userList.get(i).getNo());
-			deptAssessmentDeclarationContent.setEmployeeName(userList.get(i).getName());
-			deptAssessmentDeclarationContent.setSuggestedValue("1");
-			deptAssessmentDeclarationContentList.add(deptAssessmentDeclarationContent);
+			if (!"".equals(userList.get(i).getNo()) || null != userList.get(i).getNo()) {
+				DeptAssessmentDeclarationContent deptAssessmentDeclarationContent = new DeptAssessmentDeclarationContent();
+				deptAssessmentDeclarationContent.setAssessmentDeclarationId(id);
+				deptAssessmentDeclarationContent.setSerialNumber(i + 1);
+				deptAssessmentDeclarationContent.setEmployeeId(userList.get(i).getId());
+				deptAssessmentDeclarationContent.setEmployeeNo(userList.get(i).getNo());
+				deptAssessmentDeclarationContent.setEmployeeName(userList.get(i).getName());
+				deptAssessmentDeclarationContent.setSuggestedValue("1");
+				deptAssessmentDeclarationContentList.add(deptAssessmentDeclarationContent);
+			}
 		}
 		boolean b = super.save(deptAssessmentDeclaration);
 		if (b) {