|
@@ -58,6 +58,7 @@ import org.jeecg.modules.system.mapper.SysUserMapper;
|
|
|
import org.jeecg.modules.system.model.DepartIdModel;
|
|
|
import org.jeecg.modules.system.model.SysUserSysDepartModel;
|
|
|
import org.jeecg.modules.system.service.*;
|
|
|
+import org.jeecg.modules.system.util.IDCardUtil;
|
|
|
import org.jeecg.modules.system.util.UrlData;
|
|
|
import org.jeecg.modules.system.util.emailUtils;
|
|
|
import org.jeecg.modules.system.vo.CodeVo;
|
|
@@ -85,6 +86,7 @@ import java.text.ParseException;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
import java.util.*;
|
|
|
+import java.util.regex.Pattern;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -970,189 +972,233 @@ public class SysUserController {
|
|
|
try {
|
|
|
List<SysUser> listSysUsers = ExcelImportUtil.importExcel(file.getInputStream(), SysUser.class, params);
|
|
|
listSysUsers.remove(0);
|
|
|
+ String patt="^[1-9]\\d{5}\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{2}[0-9Xx]$";
|
|
|
+ String ph="/^1[3|4|5|7|8|9][0-9]\\d{8}$/";
|
|
|
for (int i = 0; i < listSysUsers.size(); i++) {
|
|
|
SysUser sysUserExcel = listSysUsers.get(i);
|
|
|
- int lineNumber = i + 1;
|
|
|
+ int lineNumber = i + 2;
|
|
|
+ boolean f=true;
|
|
|
+ if (!oConvertUtils.isNotEmpty(sysUserExcel.getRealname())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:姓名为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getEgName())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:英文名为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getSfzCode())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:身份证为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getSfzType())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:身份证类型为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getPhone())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:手机号为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getOrgCodeTxt())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:部门为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getEntryDate())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:入职日期为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getEmploymentStatus())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:雇佣状态为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getTrialMoth())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:试用期为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getBankCard())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:银行卡为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getWagesOne())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:工资为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getCategory())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:人员类别为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getIsAttendance())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:是否打卡为空,忽略导入。");
|
|
|
+ }else if (oConvertUtils.isNotEmpty(sysUserExcel.getSfzCode())&&sysUserExcel.getSfzCode().length()==18&&!UrlData.is18ByteIdCardComplex(sysUserExcel.getSfzCode())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:身份证格式不正确,忽略导入。");
|
|
|
+ }else if(oConvertUtils.isNotEmpty(sysUserExcel.getSfzCode())&&sysUserExcel.getSfzCode().length()==15&&!sysUserExcel.getSfzCode().matches(patt)){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:身份证格式不正确,忽略导入。");
|
|
|
+ }else if(oConvertUtils.isNotEmpty(sysUserExcel.getSfzCode())&&sysUserExcel.getSfzCode().length()!=15&&sysUserExcel.getSfzCode().length()!=18) {
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:身份证长度不正确,忽略导入。");
|
|
|
+ }else if (oConvertUtils.isNotEmpty(sysUserExcel.getPhone())&&!Pattern.compile("^[1][3,4,5,7,8][0-9]{9}$").matcher(sysUserExcel.getPhone()).matches()){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:手机号格式不正确,忽略导入。");
|
|
|
+ }else if (sysUserExcel.getBankCard().length()!=16&&sysUserExcel.getBankCard().length()!=19){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:银行卡长度不正确,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getContractType())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:合同类型为空,忽略导入。");
|
|
|
+ }else if (!oConvertUtils.isNotEmpty(sysUserExcel.getCEndDate())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:合同到期时间为空,忽略导入。");
|
|
|
+ }else if (oConvertUtils.isNotEmpty(sysUserExcel.getIsAttendance())&&!sysUserExcel.getIsAttendance().equals("否")&&!sysUserExcel.getIsAttendance().equals("是")) {
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:是否打卡不正确,忽略导入。");
|
|
|
+ }else if (oConvertUtils.isNotEmpty(sysUserExcel.getSfzType())&&!sysUserExcel.getSfzType().equals("中国身份证")&&!sysUserExcel.getSfzType().equals("其他")) {
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:身份证类型不正确,忽略导入。");
|
|
|
+ }else if (sysUserExcel.getIsAttendance().equals("0")&&!oConvertUtils.isNotEmpty(sysUserExcel.getType())){
|
|
|
+ errorLines++;
|
|
|
+ f=false;
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:上班类型为空,忽略导入。");
|
|
|
+ }
|
|
|
CodeVo codeVo=new CodeVo();
|
|
|
codeVo.setSeqName("工号编码");
|
|
|
sysUserMapper.getNextNo(codeVo);
|
|
|
String workNo=sysUserExcel.getWorkNo();
|
|
|
- if(!oConvertUtils.isNotEmpty(workNo)){
|
|
|
- workNo=String.valueOf(codeVo.getSeqNo());
|
|
|
- }if (oConvertUtils.isNotEmpty(sysUserExcel.getCategory())&&!oConvertUtils.isNotEmpty(sysUserExcel.getWorkNo())){
|
|
|
- if (sysUserExcel.getCategory().equals(105)||sysUserExcel.getCategory().equals(106)){
|
|
|
- workNo="WB"+String.valueOf(codeVo.getSeqNo());
|
|
|
+ if (f) {
|
|
|
+ if (!oConvertUtils.isNotEmpty(workNo)) {
|
|
|
+ workNo = String.valueOf(codeVo.getSeqNo());
|
|
|
}
|
|
|
- }
|
|
|
- sysUserExcel.setWorkNo(workNo);
|
|
|
- sysUserExcel.setCode(workNo);
|
|
|
- sysUserExcel.setId(workNo);
|
|
|
- if (!oConvertUtils.isNotEmpty(sysUserExcel.getEmploymentStatus())){
|
|
|
- sysUserExcel.setEmploymentStatus(40);
|
|
|
- }if(sysUserExcel.getEntryDate()!=null){
|
|
|
- Date entryDate =new Date(sysUserExcel.getEntryDate().getTime());
|
|
|
- entryDate.setMonth(entryDate.getMonth()+6);
|
|
|
- now.setTime(entryDate);
|
|
|
- now.add(Calendar.DAY_OF_MONTH,-1);
|
|
|
- sysUserExcel.setTrialEndDate(now.getTime());
|
|
|
- } if (sysUserExcel.getEntryDate()==null){
|
|
|
- Date date = new Date();
|
|
|
- sysUserExcel.setEntryDate(new Date());
|
|
|
- date.setMonth(date.getMonth()+6);
|
|
|
- now.setTime(date);
|
|
|
- now.add(Calendar.DAY_OF_MONTH,-1);
|
|
|
- sysUserExcel.setTrialEndDate(now.getTime());
|
|
|
- }if (oConvertUtils.isNotEmpty(sysUserExcel.getIsAttendance())){
|
|
|
- if (sysUserExcel.getIsAttendance().equals("否")){
|
|
|
- sysUserExcel.setIsAttendance("1");
|
|
|
- }if (sysUserExcel.getIsAttendance().equals("是")){
|
|
|
- sysUserExcel.setIsAttendance("0");
|
|
|
+ if (oConvertUtils.isNotEmpty(sysUserExcel.getWorkNo())) {
|
|
|
+ if (sysUserExcel.getCategory().equals(105) || sysUserExcel.getCategory().equals(106)) {
|
|
|
+ workNo = "WB" + String.valueOf(codeVo.getSeqNo());
|
|
|
+ }
|
|
|
+ }if (oConvertUtils.isNotEmpty(sysUserExcel.getSfzType())){
|
|
|
+ if (sysUserExcel.getSfzType().equals("中国身份证")) {
|
|
|
+ sysUserExcel.setSfzType("0");
|
|
|
+ }else if (sysUserExcel.getSfzType().equals("其他")) {
|
|
|
+ sysUserExcel.setSfzType("1");
|
|
|
+ }
|
|
|
+ }if (oConvertUtils.isNotEmpty(sysUserExcel.getIsAttendance())){
|
|
|
+ if (sysUserExcel.getIsAttendance().equals("否")) {
|
|
|
+ sysUserExcel.setIsAttendance("1");
|
|
|
+ }else if (sysUserExcel.getIsAttendance().equals("是")) {
|
|
|
+ sysUserExcel.setIsAttendance("0");
|
|
|
+ }
|
|
|
}
|
|
|
- }if (oConvertUtils.isNotEmpty(sysUserExcel.getSfzType())){
|
|
|
- if (sysUserExcel.getSfzType().equals("中国身份证")){
|
|
|
- sysUserExcel.setSfzType("0");
|
|
|
- }if(sysUserExcel.getSfzType().equals("其他")){
|
|
|
- sysUserExcel.setSfzType("1");
|
|
|
+ sysUserExcel.setWorkNo(workNo);
|
|
|
+ sysUserExcel.setCode(workNo);
|
|
|
+ sysUserExcel.setId(workNo);
|
|
|
+ if (sysUserExcel.getEntryDate() != null) {
|
|
|
+ Date entryDate = new Date(sysUserExcel.getEntryDate().getTime());
|
|
|
+ entryDate.setMonth(entryDate.getMonth() + Integer.parseInt(sysUserExcel.getTrialMoth()));
|
|
|
+ now.setTime(entryDate);
|
|
|
+ now.add(Calendar.DAY_OF_MONTH, -1);
|
|
|
+ sysUserExcel.setTrialEndDate(now.getTime());
|
|
|
}
|
|
|
- }if (oConvertUtils.isNotEmpty(sysUserExcel.getRealname())&&oConvertUtils.isNotEmpty(sysUserExcel.getEgName())){
|
|
|
- String email=sysUserExcel.getEmail();
|
|
|
- if (!oConvertUtils.isNotEmpty(sysUserExcel.getEmail())){
|
|
|
- String pinYinFirst = UrlData.getPinYinFirst(sysUserExcel.getEgName());
|
|
|
- String s = pinYinFirst.substring(0, 1).toLowerCase();
|
|
|
- email=s+pinYinFirst.substring(1,pinYinFirst.length())+"."+UrlData.getPinYinFirst(sysUserExcel.getRealname().substring(0,1))+"@gksports.com.cn";
|
|
|
+ if (oConvertUtils.isNotEmpty(sysUserExcel.getRealname()) && oConvertUtils.isNotEmpty(sysUserExcel.getEgName())) {
|
|
|
+ String email = sysUserExcel.getEmail();
|
|
|
+ if (!oConvertUtils.isNotEmpty(sysUserExcel.getEmail())) {
|
|
|
+ String pinYinFirst = UrlData.getPinYinFirst(sysUserExcel.getEgName());
|
|
|
+ String s = pinYinFirst.substring(0, 1).toLowerCase();
|
|
|
+ email = s + pinYinFirst.substring(1, pinYinFirst.length()) + "." + UrlData.getPingYin(sysUserExcel.getRealname().substring(0, 1)) + "@gksports.com.cn";
|
|
|
+ }
|
|
|
+ String emails = this.emails(email, null);
|
|
|
+ sysUserExcel.setEmail(email);
|
|
|
+ if (oConvertUtils.isNotEmpty(emails)) {
|
|
|
+ sysUserExcel.setEmail(emails);
|
|
|
+ }
|
|
|
}
|
|
|
- String emails = this.emails(email, null);
|
|
|
- sysUserExcel.setEmail(email);
|
|
|
- if (oConvertUtils.isNotEmpty(emails)){
|
|
|
- sysUserExcel.setEmail(emails);
|
|
|
+ if (oConvertUtils.isNotEmpty(sysUserExcel.getSfzCode()) && oConvertUtils.isNotEmpty(sysUserExcel.getSfzType())) {
|
|
|
+ if (sysUserExcel.getSfzType().equals("0")) {
|
|
|
+ if (IDCardUtil.isValid(sysUserExcel.getSfzCode())){
|
|
|
+ sysUserExcel.setSex(Integer.parseInt(IDCardUtil.getSex(sysUserExcel.getSfzCode())));
|
|
|
+ sysUserExcel.setAge(IDCardUtil.getAge(sysUserExcel.getSfzCode()));
|
|
|
+ sysUserExcel.setBirthday(DateUtils.parseDate(IDCardUtil.getBirthday(sysUserExcel.getSfzCode()),"yyyy-MM-dd"));
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- }if (oConvertUtils.isNotEmpty(sysUserExcel.getSfzCode())&&oConvertUtils.isNotEmpty(sysUserExcel.getSfzType())){
|
|
|
- if (sysUserExcel.getSfzType().equals("0")){
|
|
|
|
|
|
+ sysUserExcel.setUsername(workNo);
|
|
|
+ if (StringUtils.isBlank(sysUserExcel.getPassword())) {
|
|
|
+ // 密码默认为 “123456”
|
|
|
+ sysUserExcel.setPassword("123456");
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
- sysUserExcel.setUsername(workNo);
|
|
|
- if (StringUtils.isBlank(sysUserExcel.getPassword())) {
|
|
|
- // 密码默认为 “123456”
|
|
|
- sysUserExcel.setPassword("123456");
|
|
|
- }
|
|
|
- // 密码加密加盐
|
|
|
- String salt = oConvertUtils.randomGen(8);
|
|
|
- sysUserExcel.setSalt(salt);
|
|
|
- String passwordEncode = PasswordUtil.encrypt(sysUserExcel.getUsername(), sysUserExcel.getPassword(), salt);
|
|
|
- sysUserExcel.setPassword(passwordEncode);
|
|
|
- sysUserExcel.setDelFlag(Integer.parseInt(CommonConstant.DEL_FLAG_0.toString()));
|
|
|
- sysUserExcel.setStatus(1);
|
|
|
- sysUserExcel.setInfoSy(3);
|
|
|
- boolean f=true;
|
|
|
- String depids="";
|
|
|
- if(oConvertUtils.isNotEmpty(sysUserExcel.getOrgCodeTxt())) {
|
|
|
- for(String str:sysUserExcel.getOrgCodeTxt().split(",")){
|
|
|
- String departLis = departMapper.getDepartLis(str);
|
|
|
- depids+=departLis+",";
|
|
|
- String pid = sysUserDepartService.getPid(departLis);
|
|
|
- if (pid!=null&&!departLis.equals("34")&&!pid.equals("34")){
|
|
|
- f=false;
|
|
|
+ // 密码加密加盐
|
|
|
+ String salt = oConvertUtils.randomGen(8);
|
|
|
+ sysUserExcel.setSalt(salt);
|
|
|
+ String passwordEncode = PasswordUtil.encrypt(sysUserExcel.getUsername(), sysUserExcel.getPassword(), salt);
|
|
|
+ sysUserExcel.setPassword(passwordEncode);
|
|
|
+ sysUserExcel.setDelFlag(Integer.parseInt(CommonConstant.DEL_FLAG_0.toString()));
|
|
|
+ sysUserExcel.setStatus(1);
|
|
|
+ sysUserExcel.setInfoSy(3);
|
|
|
+ boolean b = true;
|
|
|
+ String depids = "";
|
|
|
+ if (oConvertUtils.isNotEmpty(sysUserExcel.getOrgCodeTxt())) {
|
|
|
+ for (String str : sysUserExcel.getOrgCodeTxt().split(",")) {
|
|
|
+ String departLis = departMapper.getDepartLis(str);
|
|
|
+ depids += departLis + ",";
|
|
|
+ String pid = sysUserDepartService.getPid(departLis);
|
|
|
+ if (pid != null && !departLis.equals("34") && !pid.equals("34")) {
|
|
|
+ f = false;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- }if (f){
|
|
|
- sysUserExcel.setIsSalary("1");
|
|
|
- }
|
|
|
- sysUserExcel.setDepartIds(depids);
|
|
|
- try {
|
|
|
- if (!"".equals(sysUserExcel.getRealname())&&sysUserExcel.getRealname()!=null){
|
|
|
- if (!"".equals(sysUserExcel.getEmail())&&sysUserExcel.getEmail()!=null){
|
|
|
- if (!"".equals(sysUserExcel.getOrgCodeTxt())&&sysUserExcel.getOrgCodeTxt()!=null){
|
|
|
- if (!"".equals(sysUserExcel.getPhone())&&sysUserExcel.getPhone()!=null){
|
|
|
- if (!"".equals(sysUserExcel.getBankCard())&&sysUserExcel.getBankCard()!=null){
|
|
|
- if (sysUserExcel.getBankCard().length()!=16&&sysUserExcel.getBankCard().length()!=18){
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:请输入16位至19位银行卡号,忽略导入。");
|
|
|
- } else{
|
|
|
- if (!"".equals(sysUserExcel.getWagesOne())&&sysUserExcel.getWagesOne()!=null){
|
|
|
- if (!"".equals(sysUserExcel.getSfzCode())&&sysUserExcel.getSfzCode()!=null){
|
|
|
- if (!"".equals(sysUserExcel.getEgName())&&sysUserExcel.getEgName()!=null){
|
|
|
- if (sysUserExcel.getBirthday()!=null){
|
|
|
- if (!"".equals(sysUserExcel.getSex())&&sysUserExcel.getSex()!=null){
|
|
|
- //sysUserService.addUserWithRole(sysUserExcel, "1473241527673765890");
|
|
|
- if (sysUserExcel.getIsAttendance().equals("0")){
|
|
|
- AttendanceRule attendanceRule=new AttendanceRule();
|
|
|
- attendanceRule.setUserId(workNo);
|
|
|
- attendanceRule.setType(sysUserExcel.getType());
|
|
|
- // attendanceRuleService.save(attendanceRule);
|
|
|
- }
|
|
|
- UserContract userContract=new UserContract();
|
|
|
- userContract.setUserId(sysUserExcel.getId());
|
|
|
- userContract.setRealname(sysUserExcel.getRealname());
|
|
|
- userContract.setContractType(sysUserExcel.getContractType());
|
|
|
- userContract.setDeptId(sysUserExcel.getDepartId());
|
|
|
- userContract.setStartDate(sysUserExcel.getEntryDate());
|
|
|
- userContract.setEndDate(sysUserExcel.getCEndDate());
|
|
|
- // userContractService.save(userContract);
|
|
|
- successLines++;
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:性别为空,忽略导入。");
|
|
|
- }
|
|
|
-
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:生日为空,忽略导入。");
|
|
|
- }
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:英文名为空,忽略导入。");
|
|
|
- }
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:身份证号为空,忽略导入。");
|
|
|
- }
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:工资为空,忽略导入。");
|
|
|
- }
|
|
|
- }
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:银行卡为空,忽略导入。");
|
|
|
- }
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:手机号为空,忽略导入。");
|
|
|
- }
|
|
|
-
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:部门为空,忽略导入。");
|
|
|
+ if (b) {
|
|
|
+ sysUserExcel.setIsSalary("1");
|
|
|
+ }
|
|
|
+ sysUserExcel.setDepartIds(depids);
|
|
|
+ try {
|
|
|
+ sysUserService.addUserWithRole(sysUserExcel, "1473241527673765890");
|
|
|
+ if (sysUserExcel.getIsAttendance().equals("0")) {
|
|
|
+ AttendanceRule attendanceRule = new AttendanceRule();
|
|
|
+ attendanceRule.setUserId(workNo);
|
|
|
+ attendanceRule.setType(sysUserExcel.getType());
|
|
|
+ if (sysUserExcel.getType().equals("1")||sysUserExcel.getType().equals(1)){
|
|
|
+ String str="2022-01-02 10:00:00";
|
|
|
+ String end="2022-01-02 19:00:00";
|
|
|
+ attendanceRule.setWorkDay("0,1,2,3,4,5,6");
|
|
|
+ attendanceRule.setStartDate(DateUtils.parseDate(str,"yyyy-MM-dd HH:mm:ss"));
|
|
|
+ attendanceRule.setEndDate(DateUtils.parseDate(end,"yyyy-MM-dd HH:mm:ss"));
|
|
|
}
|
|
|
- }else {
|
|
|
- errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:邮箱为空,忽略导入。");
|
|
|
+ attendanceRuleService.save(attendanceRule);
|
|
|
}
|
|
|
-
|
|
|
- }else {
|
|
|
+ UserContract userContract = new UserContract();
|
|
|
+ userContract.setUserId(sysUserExcel.getId());
|
|
|
+ userContract.setRealname(sysUserExcel.getRealname());
|
|
|
+ userContract.setContractType(sysUserExcel.getContractType());
|
|
|
+ userContract.setDeptId(sysUserExcel.getDepartId());
|
|
|
+ userContract.setStartDate(sysUserExcel.getEntryDate());
|
|
|
+ userContract.setEndDate(sysUserExcel.getCEndDate());
|
|
|
+ userContractService.save(userContract);
|
|
|
+ successLines++;
|
|
|
+
|
|
|
+
|
|
|
+ } catch (Exception e) {
|
|
|
errorLines++;
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:姓名为空,忽略导入。");
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- } catch (Exception e) {
|
|
|
- errorLines++;
|
|
|
- String message = e.getMessage().toLowerCase();
|
|
|
-
|
|
|
- // 通过索引名判断出错信息
|
|
|
- if (message.contains(CommonConstant.SQL_INDEX_UNIQ_SYS_USER_USERNAME)) {
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:用户名已经存在,忽略导入。");
|
|
|
- } else if (message.contains(CommonConstant.SQL_INDEX_UNIQ_SYS_USER_PHONE)) {
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:手机号已经存在,忽略导入。");
|
|
|
- } else if (message.contains(CommonConstant.SQL_INDEX_UNIQ_SYS_USER_EMAIL)) {
|
|
|
- errorMessage.add("第 " + lineNumber + " 行:电子邮件已经存在,忽略导入。");
|
|
|
+ String message = e.getMessage().toLowerCase();
|
|
|
+ // 通过索引名判断出错信息
|
|
|
+ if (message.contains(CommonConstant.SQL_INDEX_UNIQ_SYS_USER_USERNAME)) {
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:用户名已经存在,忽略导入。");
|
|
|
+ } else if (message.contains(CommonConstant.SQL_INDEX_UNIQ_SYS_USER_PHONE)) {
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:手机号已经存在,忽略导入。");
|
|
|
+ } else if (message.contains(CommonConstant.SQL_INDEX_UNIQ_SYS_USER_EMAIL)) {
|
|
|
+ errorMessage.add("第 " + lineNumber + " 行:电子邮件已经存在,忽略导入。");
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- // 批量将部门和用户信息建立关联关系
|
|
|
- String departIds = sysUserExcel.getOrgCodeTxt();
|
|
|
- /* if (StringUtils.isNotBlank(departIds)) {
|
|
|
+ // 批量将部门和用户信息建立关联关系
|
|
|
+ String departIds = sysUserExcel.getOrgCodeTxt();
|
|
|
+ if (StringUtils.isNotBlank(departIds)) {
|
|
|
String userId = sysUserExcel.getId();
|
|
|
String[] departIdArray = departIds.split(",");
|
|
|
List<SysUserDepart> userDepartList = new ArrayList<>(departIdArray.length);
|
|
@@ -1164,7 +1210,7 @@ public class SysUserController {
|
|
|
}
|
|
|
sysUserDepartService.saveBatch(userDepartList);
|
|
|
}
|
|
|
-*/
|
|
|
+ }
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
errorMessage.add("发生异常:" + e.getMessage());
|
|
@@ -1181,7 +1227,7 @@ public class SysUserController {
|
|
|
}
|
|
|
|
|
|
|
|
|
- /*@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
|
|
+ /* @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
|
|
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response)throws IOException {
|
|
|
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
|
|
|
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
|