From b0625931bc528429d592f642bdd759e7dbdfb1c3 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Tue, 19 Oct 2021 22:21:07 +0800
Subject: [PATCH] 1.保安员新增接口修改,单个新增保安员默认密码为身份证号后6位,账号为身份证号, 2.考试成绩可以按天导出 3.个人图片批量导入接口修改 4.保安员批量导入修改,如有重复的账号导入的跳过,导入完成后返回提示信息
---
src/main/java/org/springblade/modules/exam/service/ExamScoreService.java | 8 +
src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java | 7 +
src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java | 36 ++++---
src/main/java/org/springblade/modules/exam/vo/ExamScoreVO.java | 8 +
src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java | 11 ++
src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java | 5
src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml | 72 ++++++++++++++
src/main/java/org/springblade/modules/exam/excel/ExportExamScoreExcel.java | 74 ++++++++++++++
src/main/java/org/springblade/modules/system/controller/UserController.java | 42 +++-----
src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java | 17 +++
10 files changed, 236 insertions(+), 44 deletions(-)
diff --git a/src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java b/src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java
index 4c75148..dab0127 100644
--- a/src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java
+++ b/src/main/java/org/springblade/modules/exam/controller/ExamScoreController.java
@@ -1,6 +1,7 @@
package org.springblade.modules.exam.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
@@ -15,6 +16,7 @@
import org.springblade.modules.exam.entity.ExamScore;
import org.springblade.modules.exam.excel.ExamScoreExcel;
import org.springblade.modules.exam.excel.ExamScoreImporter;
+import org.springblade.modules.exam.excel.ExportExamScoreExcel;
import org.springblade.modules.exam.service.ExamPaperService;
import org.springblade.modules.exam.service.ExamScoreService;
import org.springblade.modules.exam.util.SecurityPaperUtil;
@@ -22,6 +24,7 @@
import org.springblade.modules.exam.vo.UpdateParamVo;
import org.springblade.modules.system.entity.Role;
import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.excel.UserExcel;
import org.springblade.modules.system.service.IRoleService;
import org.springblade.modules.system.service.IUserService;
import org.springblade.modules.system.vo.UserVO;
@@ -366,5 +369,17 @@
return R.status(examScoreService.refreshTrainExamInfo(updateParamVo));
}
-
+ /**
+ * 导出成绩
+ */
+ @GetMapping("export-examScore")
+ @ApiOperationSupport(order = 14)
+ @ApiOperation(value = "导出成绩")
+ public void exportExamScore(HttpServletResponse response,ExamScoreVO examScoreVO) {
+ System.out.println("examScoreVO = " + examScoreVO);
+ //按条件查询成绩数据
+ List<ExportExamScoreExcel> examScoreExcels = examScoreService.exportExamScoreList(examScoreVO);
+ //导出成绩集合数据
+ ExcelUtil.export(response, "成绩数据", "成绩数据表", examScoreExcels, ExportExamScoreExcel.class);
+ }
}
diff --git a/src/main/java/org/springblade/modules/exam/excel/ExportExamScoreExcel.java b/src/main/java/org/springblade/modules/exam/excel/ExportExamScoreExcel.java
new file mode 100644
index 0000000..f62072e
--- /dev/null
+++ b/src/main/java/org/springblade/modules/exam/excel/ExportExamScoreExcel.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.exam.excel;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * ExamPaymentExcel
+ * @author zhongrj
+ * @since 2021-10-19
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class ExportExamScoreExcel implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ @ColumnWidth(30)
+ @ExcelProperty("考试名称")
+ private String examName;
+
+ @ColumnWidth(15)
+ @ExcelProperty("姓名")
+ private String securityName;
+
+ @ColumnWidth(20)
+ @ExcelProperty("身份证号码")
+ private String idCardNo;
+
+ @ColumnWidth(25)
+ @ExcelProperty("所属公司")
+ private String companyName;
+
+ @ColumnWidth(20)
+ @ExcelProperty("考试开始时间")
+ private String examTime;
+
+ @ColumnWidth(20)
+ @ExcelProperty("考试结束时间")
+ private String examEndTime;
+
+ @ColumnWidth(15)
+ @ExcelProperty("理论成绩")
+ private Integer theoryGrade;
+
+ @ColumnWidth(15)
+ @ExcelProperty("实操成绩")
+ private Integer learnGrade;
+
+ @ColumnWidth(15)
+ @ExcelProperty("总成绩")
+ private Integer allGrade;
+}
diff --git a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java
index 0b534a0..b70c398 100644
--- a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java
+++ b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.modules.exam.entity.ExamScore;
+import org.springblade.modules.exam.excel.ExportExamScoreExcel;
import org.springblade.modules.exam.vo.ExamScoreVO;
import org.springblade.modules.training.entity.TrainingRegistration;
@@ -88,4 +89,10 @@
List<ExamScore> getLheoryGradeLess60();
+ /**
+ * 按条件查询成绩数据
+ * @param examScoreVO
+ * @return
+ */
+ List<ExportExamScoreExcel> getExamScoreList(@Param("examScore") ExamScoreVO examScoreVO);
}
diff --git a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
index ff44c7d..00ae3b2 100644
--- a/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
+++ b/src/main/java/org/springblade/modules/exam/mapper/ExamScoreMapper.xml
@@ -126,6 +126,9 @@
<if test="examScore.qualified!=null">
and es.qualified = #{examScore.qualified}
</if>
+ <if test="examScore.examDate!=null">
+ and date_format(es.exam_time,'%Y-%m-%d') = #{examScore.examDate}
+ </if>
</select>
<!--考试成绩详情信息-->
@@ -315,4 +318,73 @@
<select id="getLheoryGradeLess60" resultType="org.springblade.modules.exam.entity.ExamScore">
select * from exam_score where all_grade < 30
</select>
+
+ <!--导出-按条件查询成绩数据-模拟考试-->
+ <select id="getExamScoreList" resultType="org.springblade.modules.exam.excel.ExportExamScoreExcel">
+ SELECT
+ ke.exam_name examName,bu.real_name securityName,bu.cardid idCardNo,
+ bd.dept_name companyName,
+ es.exam_time examTime,exam_end_time examEndTime,
+ es.theory_grade theoryGrade,es.learn_grade learnGrade,
+ all_grade allGrade
+ from
+ exam_score es
+ left join
+ ksxt_exam ke
+ on
+ ke.id = es.exam_id
+ left join
+ blade_user bu
+ on
+ es.user_id = bu.id
+ left join
+ blade_dept bd
+ on
+ bd.id = bu.dept_id
+ left join
+ sys_training_registration str
+ on
+ str.id = es.apply_id
+ where
+ 1=1
+ and (str.is_exam = 2 or str.is_exam = 3)
+ <if test="examScore.examName!=null and examScore.examName!=''">
+ and ke.exam_name like concat('%', #{examScore.examName},'%')
+ </if>
+ <if test="examScore.companyName!=null and examScore.companyName!=''">
+ and bd.dept_name like concat('%', #{examScore.companyName},'%')
+ </if>
+ <if test="examScore.securityName!=null and examScore.securityName!=''">
+ and bu.real_name like concat('%', #{examScore.securityName},'%')
+ </if>
+ <if test="examScore.account!=null and examScore.account!=''">
+ and bu.account like concat('%', #{examScore.account},'%')
+ </if>
+ <if test="examScore.trainUnitId!=null">
+ and str.training_unit_id = #{examScore.trainUnitId}
+ </if>
+ <if test="examScore.userId!=null and examScore.userId!=''">
+ and es.user_id = #{examScore.userId}
+ </if>
+ <if test="examScore.deptId!=null and examScore.deptId!=''">
+ and bd.id = #{examScore.deptId}
+ </if>
+ <if test="examScore.isExam!=null and examScore.isExam!=''">
+ and str.is_exam = #{examScore.isExam}
+ </if>
+ <if test="examScore.examType!=null and examScore.examType!=''">
+ and ke.exam_type = #{examScore.examType}
+ </if>
+ <if test="examScore.candidateNo!=null and examScore.candidateNo!=''">
+ and es.candidate_no = #{examScore.candidateNo}
+ </if>
+ <if test="examScore.qualified!=null">
+ and es.qualified = #{examScore.qualified}
+ </if>
+ <if test="examScore.examDate!=null and examScore.examDate!=''">
+ and date_format(es.exam_time,'%Y-%m-%d') = #{examScore.examDate}
+ </if>
+ </select>
+
+
</mapper>
diff --git a/src/main/java/org/springblade/modules/exam/service/ExamScoreService.java b/src/main/java/org/springblade/modules/exam/service/ExamScoreService.java
index b16b015..e394b01 100644
--- a/src/main/java/org/springblade/modules/exam/service/ExamScoreService.java
+++ b/src/main/java/org/springblade/modules/exam/service/ExamScoreService.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.extension.service.IService;
import org.springblade.modules.exam.entity.ExamScore;
import org.springblade.modules.exam.excel.ExamScoreExcel;
+import org.springblade.modules.exam.excel.ExportExamScoreExcel;
import org.springblade.modules.exam.vo.ExamScoreVO;
import org.springblade.modules.exam.vo.UpdateParamVo;
@@ -74,4 +75,11 @@
* @return
*/
boolean refreshTrainExamInfo(UpdateParamVo updateParamVo);
+
+ /**
+ * 按条件查询成绩数据
+ * @param examScoreVO
+ * @return
+ */
+ List<ExportExamScoreExcel> exportExamScoreList(ExamScoreVO examScoreVO);
}
diff --git a/src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java b/src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java
index 884a13b..cc973d8 100644
--- a/src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java
+++ b/src/main/java/org/springblade/modules/exam/service/impl/ExamScoreServiceImpl.java
@@ -14,6 +14,7 @@
import org.springblade.modules.exam.entity.ExamScore;
import org.springblade.modules.exam.entity.ExamSubjectChoices;
import org.springblade.modules.exam.excel.ExamScoreExcel;
+import org.springblade.modules.exam.excel.ExportExamScoreExcel;
import org.springblade.modules.exam.mapper.ExamScoreMapper;
import org.springblade.modules.exam.service.ExamPaperService;
import org.springblade.modules.exam.service.ExamScoreService;
@@ -531,4 +532,14 @@
}
return false;
}
+
+ /**
+ * 按条件查询成绩数据
+ * @param examScoreVO
+ * @return
+ */
+ @Override
+ public List<ExportExamScoreExcel> exportExamScoreList(ExamScoreVO examScoreVO) {
+ return baseMapper.getExamScoreList(examScoreVO);
+ }
}
diff --git a/src/main/java/org/springblade/modules/exam/vo/ExamScoreVO.java b/src/main/java/org/springblade/modules/exam/vo/ExamScoreVO.java
index c763b64..0045c83 100644
--- a/src/main/java/org/springblade/modules/exam/vo/ExamScoreVO.java
+++ b/src/main/java/org/springblade/modules/exam/vo/ExamScoreVO.java
@@ -1,9 +1,12 @@
package org.springblade.modules.exam.vo;
+import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springblade.modules.exam.entity.ExamScore;
+import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
+import java.util.Date;
import java.util.List;
/**
@@ -56,4 +59,9 @@
*/
private Long trainUnitId;
+ /**
+ * 考试时间
+ */
+ private String examDate;
+
}
diff --git a/src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java b/src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java
index 1a8be40..5489e74 100644
--- a/src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java
+++ b/src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java
@@ -325,7 +325,8 @@
List<MultipartFile> fileList = new ArrayList<>();
//获取图片文件
- fileList = fileUtil.getSubFiles(desPath+File.separator+namePath,fileList);
+// fileList = fileUtil.getSubFiles(desPath+File.separator+namePath,fileList);
+ fileList = fileUtil.getSubFiles(desPath,fileList);
for (MultipartFile multipartFile : fileList){
if(multipartFile.getName().toLowerCase().endsWith(".png") || multipartFile.getName().toLowerCase().endsWith(".jpg")) {
String newName = "upload/picture/" + UUID.randomUUID().toString().replaceAll("-", "") + multipartFile.getName().substring(multipartFile.getName().lastIndexOf("."));
@@ -425,7 +426,7 @@
List<MultipartFile> fileList = new ArrayList<>();
//获取图片文件
- fileList = fileUtil.getSubFiles(desPath+File.separator+namePath,fileList);
+ fileList = fileUtil.getSubFiles(desPath,fileList);
for (MultipartFile multipartFile : fileList){
if(multipartFile.getName().toLowerCase().endsWith(".png") || multipartFile.getName().toLowerCase().endsWith(".jpg")) {
String newName = "upload/picture/" + UUID.randomUUID().toString().replaceAll("-", "") + multipartFile.getName().substring(multipartFile.getName().lastIndexOf("."));
diff --git a/src/main/java/org/springblade/modules/system/controller/UserController.java b/src/main/java/org/springblade/modules/system/controller/UserController.java
index b34520c..6c4ee81 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -235,15 +235,7 @@
User user1 = userService.getById(user.getId());
user.setPassword(user1.getPassword());
userService.updateById(user);
- Date birthday1 = user.getBirthday();
- String birthday;
String rtime;
- if (user.getBirthday() == null) {
- birthday = null;
- } else {
- birthday = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(user.getBirthday());
- }
-
if (user.getRtime() == null) {
rtime = null;
} else {
@@ -602,10 +594,6 @@
public R securitySave(@Valid @RequestBody Map<String, Object> userMap) {
//获取user
User user = JSON.parseObject(JSON.toJSONString(userMap.get("user")), User.class);
- //判断是否为空
-// if (null!=user.getHold()){
- //持证
-// if (user.getHold().equals("1")){
//分配保安角色
Role role = new Role();
role.setRoleAlias("保安");
@@ -613,6 +601,7 @@
user.setRoleId(oneRole.getId().toString());
user.setDispatch("1");
user.setExaminationType("0");
+ user.setAccount(user.getCardid());
Integer userCount = userService.selectCount(user.getAccount());
if (userCount > 0 && Func.isEmpty(user.getId())) {
@@ -629,27 +618,20 @@
// }
// }
//密码加密
- if (Func.isNotEmpty(user.getPassword())) {
- user.setPassword(DigestUtil.encrypt(user.getPassword()));
+ if (Func.isNotEmpty(user.getCardid())) {
+// user.setPassword(DigestUtil.encrypt(user.getPassword()));
+ //取身份证号码后6位作为密码
+ user.setPassword(DigestUtil.encrypt(user.getCardid().substring(user.getCardid().length() - 6)));
}
user.setTenantId("000000");
//用户新增
boolean status = userService.save(user);
-
- String birthday;
String rtime;
- if (user.getBirthday() == null) {
- birthday = null;
- } else {
- birthday = new SimpleDateFormat("yyyy-MM-dd").format(user.getBirthday());
- }
-
if (user.getRtime() == null) {
rtime = null;
} else {
rtime = new SimpleDateFormat("yyyy-MM-dd").format(user.getRtime());
}
-
//头像
if (null!=user.getAvatar() && !user.getAvatar().equals("")) {
user.setAvatar(FtpConfig.ip + user.getAvatar().substring(26));
@@ -662,9 +644,17 @@
String s = "insert into blade_user(id,tenant_id,account,password,name,real_name,avatar,email,phone,sex,role_id,dept_id,cardid,nativePlace,nation,fingerprint,education," +
"politicaloutlook,healstats,height,address,registered,rtime,securitynumber,hold,jurisdiction,examination_type,status,is_deleted,dispatch) " +
- "values(" + "'" + user.getId() + "'" + "," + "'" + user.getTenantId() + "'" + "," + "'" + user.getAccount() + "'" + "," +
- "'" + user.getPassword() + "'" + "," + "'" + user.getName() + "'" + "," + "'" + user.getRealName() + "'" + "," + "'" + user.getAvatar() + "'" + "," +
- "'" + user.getEmail() + "'" + "," + "'" + user.getPhone() + "'" + "," + "'" + user.getSex() + "'" + "," + "'" + user.getRoleId() + "'" +
+ "values(" + "'" + user.getId() + "'" +
+ "," + "'" + user.getTenantId() + "'" +
+ "," + "'" + user.getAccount() + "'" +
+ "," + "'" + user.getPassword() + "'" +
+ "," + "'" + user.getName() + "'" +
+ "," + "'" + user.getRealName() + "'" +
+ "," + "'" + user.getAvatar() + "'" +
+ "," + "'" + user.getEmail() + "'" +
+ "," + "'" + user.getPhone() + "'" +
+ "," + "'" + user.getSex() + "'" +
+ "," + "'" + user.getRoleId() + "'" +
"," + "'" + user.getDeptId() + "'" +
"," + "'" + user.getCardid() + "'" +
"," + "'" + user.getNativeplace() + "'" +
diff --git a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
index 3a5192f..cff531d 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
@@ -17,20 +17,16 @@
package org.springblade.modules.system.service.impl;
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.google.zxing.WriterException;
import lombok.AllArgsConstructor;
-import org.springblade.common.cache.DictCache;
-import org.springblade.common.cache.ParamCache;
+import org.apache.commons.lang3.StringUtils;
import org.springblade.common.cache.SysCache;
-import org.springblade.common.cache.UserCache;
import org.springblade.common.constant.AgeUtil;
import org.springblade.common.constant.CommonConstant;
import org.springblade.common.constant.TenantConstant;
-import org.springblade.common.enums.DictEnum;
import org.springblade.common.utils.QRCodeUtil;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.base.BaseServiceImpl;
@@ -44,12 +40,9 @@
import org.springblade.core.tool.utils.*;
import org.springblade.modules.FTP.FtpUtil;
import org.springblade.modules.auth.enums.UserEnum;
-import org.springblade.modules.dispatcher.service.IDispatcherService;
-import org.springblade.modules.dispatcher.vo.DispatcherUnitVO;
import org.springblade.modules.dispatcher.vo.DispatcherVO;
import org.springblade.modules.information.entity.Information;
import org.springblade.modules.information.service.IInformationService;
-import org.springblade.modules.jurisdiction.entity.Jurisdiction;
import org.springblade.modules.system.entity.*;
import org.springblade.modules.system.excel.QrCodeExcel;
import org.springblade.modules.system.excel.UserExcel;
@@ -68,8 +61,7 @@
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.*;
-
-import static org.springblade.common.constant.CommonConstant.DEFAULT_PARAM_PASSWORD;
+import java.util.concurrent.atomic.AtomicBoolean;
/**
* 服务实现类
@@ -388,8 +380,12 @@
}
@Override
- @Transactional(rollbackFor = Exception.class)
+// @Transactional(rollbackFor = Exception.class)
public void importUser(List<UserExcel> data, Boolean isCovered,String deptId) {
+ //将不能导入的保安员账号存起来
+ List<String> errorList = new ArrayList<>();
+ //导入状态,默认为true ,如果有一个出现问题则为 false
+ AtomicBoolean status = new AtomicBoolean(true);
data.forEach(userExcel -> {
User user = Objects.requireNonNull(BeanUtil.copy(userExcel, User.class));
//设置部门id
@@ -397,18 +393,18 @@
if (null!=deptIds && !deptIds.equals("")) {
if (null != deptId && !deptId.equals("")) {
if (!deptId.equals(deptIds)) {
- throw new ServiceException("不能导入不是本公司的保安员数据!");
+ throw new ServiceException("导入失败!不能导入不是本公司的保安员数据!");
}
}
user.setDeptId(deptIds);
}else {
//如果deptIds 为空,则说明还没有改公司
- throw new ServiceException("公司名:"+user.getDeptId()+"不存在!");
+ throw new ServiceException("导入失败!公司名:["+user.getDeptId()+"]不存在!");
}
//判断当前用户是否已在本单位,如果是的更新数据
User user1 = new User();
user1.setAccount(user.getCardid());
- System.out.println("user.getCardid() = " + user.getCardid());
+// System.out.println("user.getCardid() = " + user.getCardid());
user1.setIsDeleted(0);
user1.setStatus(1);
User user2 = this.getOne(Condition.getQueryWrapper(user1));
@@ -453,7 +449,12 @@
//匹配组织机构是否一致,如果不一致
if(!user2.getDeptId().equals(user.getDeptId())){
Dept dept = deptService.getById(user2.getDeptId());
- throw new ServiceException("用户:"+"["+user.getCardid()+"]"+"已在["+dept.getDeptName()+"]存在!");
+// throw new ServiceException("用户:"+"["+user.getCardid()+"]"+"已在其他单位存在!");
+ status.set(false);
+ //加入集合
+ errorList.add(user.getCardid());
+ //forEach 只能使用 return 跳出本次循环
+ return;
}else {
//如果是一致,则更新用户数据
//判断是否持证
@@ -477,6 +478,11 @@
}
}
});
+ //如果所有数据导入有一个异常
+ if (!status.get()){
+ String errorAccount = StringUtils.join(errorList, "\\\n");
+ throw new ServiceException("用户:["+errorAccount+"]导入失败!已在其他单位存在!");
+ }
}
// @Override
--
Gitblit v1.9.3