|
@@ -331,8 +331,8 @@ public class SysUserController {
|
|
|
subDepIdsByDepId= sysDepartService.getSubDepIdsByDepId(user.getOrgCodeTxt());
|
|
|
}if (user.getEmpStatus()!=null&&!"".equals(user.getEmpStatus())){
|
|
|
status=Arrays.asList(user.getEmpStatus().split(","));
|
|
|
- }if (user.getCategory()!=null&&!"".equals(user.getCategory())){
|
|
|
- category=Arrays.asList(user.getCategory().toString().split(","));
|
|
|
+ }if (user.getCategorys()!=null&&!"".equals(user.getCategorys())){
|
|
|
+ category=Arrays.asList(user.getCategorys().toString().split(","));
|
|
|
}if(oConvertUtils.isNotEmpty(user.getRealname())){
|
|
|
user.setRealname(user.getRealname().trim());
|
|
|
}if(oConvertUtils.isNotEmpty(user.getWorkNo())){
|
|
@@ -939,6 +939,10 @@ public class SysUserController {
|
|
|
return mv;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 通过excel导入数据
|
|
|
*
|
|
@@ -972,19 +976,18 @@ public class SysUserController {
|
|
|
CodeVo codeVo=new CodeVo();
|
|
|
codeVo.setSeqName("工号编码");
|
|
|
sysUserMapper.getNextNo(codeVo);
|
|
|
- String workNo=String.valueOf(codeVo.getSeqNo());
|
|
|
- if (sysUserExcel.getCategory()!=null&&!sysUserExcel.getCategory().equals("")){
|
|
|
+ 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());
|
|
|
}
|
|
|
- }else {
|
|
|
- sysUserExcel.setCategory(101);
|
|
|
}
|
|
|
sysUserExcel.setWorkNo(workNo);
|
|
|
sysUserExcel.setCode(workNo);
|
|
|
sysUserExcel.setId(workNo);
|
|
|
- sysUserExcel.setTrialMoth("6");
|
|
|
- if (sysUserExcel.getEmploymentStatus()==null||sysUserExcel.getEmploymentStatus().equals("")){
|
|
|
+ if (!oConvertUtils.isNotEmpty(sysUserExcel.getEmploymentStatus())){
|
|
|
sysUserExcel.setEmploymentStatus(40);
|
|
|
}if(sysUserExcel.getEntryDate()!=null){
|
|
|
Date entryDate =new Date(sysUserExcel.getEntryDate().getTime());
|
|
@@ -999,16 +1002,41 @@ public class SysUserController {
|
|
|
now.setTime(date);
|
|
|
now.add(Calendar.DAY_OF_MONTH,-1);
|
|
|
sysUserExcel.setTrialEndDate(now.getTime());
|
|
|
- }if (sysUserExcel.getIsAttendance().equals("否")){
|
|
|
- sysUserExcel.setIsAttendance("1");
|
|
|
- }if (sysUserExcel.getIsAttendance().equals("是")){
|
|
|
- sysUserExcel.setIsAttendance("0");
|
|
|
+ }if (oConvertUtils.isNotEmpty(sysUserExcel.getIsAttendance())){
|
|
|
+ if (sysUserExcel.getIsAttendance().equals("否")){
|
|
|
+ sysUserExcel.setIsAttendance("1");
|
|
|
+ }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");
|
|
|
+ }
|
|
|
+ }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";
|
|
|
+ }
|
|
|
+ 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")){
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
sysUserExcel.setUsername(workNo);
|
|
|
if (StringUtils.isBlank(sysUserExcel.getPassword())) {
|
|
|
// 密码默认为 “123456”
|
|
|
sysUserExcel.setPassword("123456");
|
|
|
- }
|
|
|
+ }
|
|
|
// 密码加密加盐
|
|
|
String salt = oConvertUtils.randomGen(8);
|
|
|
sysUserExcel.setSalt(salt);
|
|
@@ -1017,7 +1045,6 @@ public class SysUserController {
|
|
|
sysUserExcel.setDelFlag(Integer.parseInt(CommonConstant.DEL_FLAG_0.toString()));
|
|
|
sysUserExcel.setStatus(1);
|
|
|
sysUserExcel.setInfoSy(3);
|
|
|
- sysUserExcel.setSfzType("0");
|
|
|
boolean f=true;
|
|
|
String depids="";
|
|
|
if(oConvertUtils.isNotEmpty(sysUserExcel.getOrgCodeTxt())) {
|
|
@@ -1048,12 +1075,12 @@ public class SysUserController {
|
|
|
if (!"".equals(sysUserExcel.getEgName())&&sysUserExcel.getEgName()!=null){
|
|
|
if (sysUserExcel.getBirthday()!=null){
|
|
|
if (!"".equals(sysUserExcel.getSex())&&sysUserExcel.getSex()!=null){
|
|
|
- sysUserService.addUserWithRole(sysUserExcel, "1473241527673765890");
|
|
|
+ //sysUserService.addUserWithRole(sysUserExcel, "1473241527673765890");
|
|
|
if (sysUserExcel.getIsAttendance().equals("0")){
|
|
|
AttendanceRule attendanceRule=new AttendanceRule();
|
|
|
attendanceRule.setUserId(workNo);
|
|
|
attendanceRule.setType(sysUserExcel.getType());
|
|
|
- attendanceRuleService.save(attendanceRule);
|
|
|
+ // attendanceRuleService.save(attendanceRule);
|
|
|
}
|
|
|
UserContract userContract=new UserContract();
|
|
|
userContract.setUserId(sysUserExcel.getId());
|
|
@@ -1062,7 +1089,7 @@ public class SysUserController {
|
|
|
userContract.setDeptId(sysUserExcel.getDepartId());
|
|
|
userContract.setStartDate(sysUserExcel.getEntryDate());
|
|
|
userContract.setEndDate(sysUserExcel.getCEndDate());
|
|
|
- userContractService.save(userContract);
|
|
|
+ // userContractService.save(userContract);
|
|
|
successLines++;
|
|
|
}else {
|
|
|
errorLines++;
|
|
@@ -1125,7 +1152,7 @@ public class SysUserController {
|
|
|
}
|
|
|
// 批量将部门和用户信息建立关联关系
|
|
|
String departIds = sysUserExcel.getOrgCodeTxt();
|
|
|
- if (StringUtils.isNotBlank(departIds)) {
|
|
|
+ /* if (StringUtils.isNotBlank(departIds)) {
|
|
|
String userId = sysUserExcel.getId();
|
|
|
String[] departIdArray = departIds.split(",");
|
|
|
List<SysUserDepart> userDepartList = new ArrayList<>(departIdArray.length);
|
|
@@ -1137,7 +1164,7 @@ public class SysUserController {
|
|
|
}
|
|
|
sysUserDepartService.saveBatch(userDepartList);
|
|
|
}
|
|
|
-
|
|
|
+*/
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
errorMessage.add("发生异常:" + e.getMessage());
|
|
@@ -1153,6 +1180,81 @@ public class SysUserController {
|
|
|
return ImportExcelUtil.imporReturnRes(errorLines,successLines,errorMessage);
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ /*@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();
|
|
|
+ Calendar now=Calendar.getInstance();
|
|
|
+ // 错误信息
|
|
|
+ List<String> errorMessage = new ArrayList<>();
|
|
|
+ int successLines = 0, errorLines = 0;
|
|
|
+ for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
|
|
|
+ MultipartFile file = entity.getValue();// 获取上传文件对象
|
|
|
+ ImportParams params = new ImportParams();
|
|
|
+ params.setTitleRows(2);
|
|
|
+ params.setHeadRows(1);
|
|
|
+ params.setNeedSave(true);
|
|
|
+
|
|
|
+ try {
|
|
|
+ List<SysUser> listSysUsers = ExcelImportUtil.importExcel(file.getInputStream(), SysUser.class, params);
|
|
|
+ listSysUsers.remove(0);
|
|
|
+ for (int i = 0; i < listSysUsers.size(); i++) {
|
|
|
+ SysUser sysUserExcel = listSysUsers.get(i);
|
|
|
+ int lineNumber = i + 1;
|
|
|
+ sysUserExcel.setId(sysUserExcel.getWorkNo());
|
|
|
+ if (sysUserExcel.getSfzType().equals("其他")){
|
|
|
+ sysUserExcel.setSfzType("1");
|
|
|
+ }if (sysUserExcel.getSfzType().equals("中国身份证")){
|
|
|
+ sysUserExcel.setSfzType("0");
|
|
|
+ }if (sysUserExcel.getIsAttendance().equals("是")){
|
|
|
+ sysUserExcel.setIsAttendance("0");
|
|
|
+ }if (sysUserExcel.getIsAttendance().equals("否")){
|
|
|
+ sysUserExcel.setIsAttendance("1");
|
|
|
+ }
|
|
|
+ try {
|
|
|
+ sysUserService.updateById(sysUserExcel);
|
|
|
+ if (sysUserExcel.getIsAttendance().equals("0")){
|
|
|
+ AttendanceRule attendanceRule=new AttendanceRule();
|
|
|
+ attendanceRule.setUserId(sysUserExcel.getWorkNo());
|
|
|
+ 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"));
|
|
|
+ }
|
|
|
+ attendanceRuleService.save(attendanceRule);
|
|
|
+ }
|
|
|
+ } 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 + " 行:电子邮件已经存在,忽略导入。");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ errorMessage.add("发生异常:" + e.getMessage());
|
|
|
+ log.error(e.getMessage(), e);
|
|
|
+ } finally {
|
|
|
+ try {
|
|
|
+ file.getInputStream().close();
|
|
|
+ } catch (IOException e) {
|
|
|
+ log.error(e.getMessage(), e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return ImportExcelUtil.imporReturnRes(errorLines,successLines,errorMessage);
|
|
|
+ }*/
|
|
|
/**
|
|
|
* @功能:根据id 批量查询
|
|
|
* @param userIds
|
|
@@ -2275,42 +2377,48 @@ public class SysUserController {
|
|
|
List<UserChage> list = ExcelImportUtil.importExcel(file.getInputStream(), UserChage.class, params);
|
|
|
LoginUser sysUsers = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
|
//update-begin-author:taoyan date:20190528 for:批量插入数据
|
|
|
+ List<UserChage>lstt=new ArrayList<>();
|
|
|
if (list!=null&&list.size()>0){
|
|
|
List<SysUser>lst=new ArrayList<>();
|
|
|
list.forEach(str->{
|
|
|
- str.setTime(new Date());
|
|
|
- str.setType("工资调整");
|
|
|
- str.setState(1);
|
|
|
- str.setConmitId(sysUsers.getId());
|
|
|
- str.setConmitDate(new Date());
|
|
|
- List<SysDepart> sysDeparts = sysDepartService.queryUserDeparts(str.getUserId());
|
|
|
+ if (oConvertUtils.isNotEmpty(str.getUserId())&&oConvertUtils.isNotEmpty(str.getEndWages())&&str.getTime()!=null) {
|
|
|
+ str.setType("工资调整");
|
|
|
+ str.setState(1);
|
|
|
+ str.setConmitId(sysUsers.getId());
|
|
|
+ str.setConmitDate(new Date());
|
|
|
+ List<SysDepart> sysDeparts = sysDepartService.queryUserDeparts(str.getUserId());
|
|
|
SysUser byId = sysUserService.getById(str.getUserId());
|
|
|
- SysUser sysUser=new SysUser();
|
|
|
- if (byId!=null){
|
|
|
- str.setRealname(byId.getRealname());
|
|
|
- }
|
|
|
- if (str.getUserId()!=null&&!str.getUserId().equals("")){
|
|
|
- sysUser.setId(str.getUserId());
|
|
|
- }if (str.getEndWages()!=null&&!str.getEndWages().equals("")){
|
|
|
- sysUser.setWagesOne(str.getEndWages());
|
|
|
- }if (sysDeparts!=null){
|
|
|
- str.setDeptId(sysDeparts.get(0).getId());
|
|
|
- str.setDeptName(sysDeparts.get(0).getDepartName());
|
|
|
- }if (byId!=null&&byId.getPost()!=null&&!"".equals(byId.getPost())){
|
|
|
+ SysUser sysUser = new SysUser();
|
|
|
+ if (byId != null) {
|
|
|
+ str.setRealname(byId.getRealname());
|
|
|
+ }
|
|
|
+ if (str.getUserId() != null && !str.getUserId().equals("")) {
|
|
|
+ sysUser.setId(str.getUserId());
|
|
|
+ }
|
|
|
+ if (str.getEndWages() != null && !str.getEndWages().equals("")) {
|
|
|
+ sysUser.setWagesOne(str.getEndWages());
|
|
|
+ }
|
|
|
+ if (sysDeparts != null) {
|
|
|
+ str.setDeptId(sysDeparts.get(0).getId());
|
|
|
+ str.setDeptName(sysDeparts.get(0).getDepartName());
|
|
|
+ }
|
|
|
+ if (byId != null && byId.getPost() != null && !"".equals(byId.getPost())) {
|
|
|
SysPosition ones = sysPositionService.getOnes(byId.getPost());
|
|
|
- if (ones!=null){
|
|
|
+ if (ones != null) {
|
|
|
str.setStartPost(ones.getName());
|
|
|
}
|
|
|
}
|
|
|
+ lstt.add(str);
|
|
|
+ }
|
|
|
// lst.add(sysUser);
|
|
|
});
|
|
|
- userChageService.saveBatch(list);
|
|
|
+ userChageService.saveBatch(lstt);
|
|
|
//sysUserService.updateBatchById(lst);
|
|
|
}
|
|
|
//400条 saveBatch消耗时间1592毫秒 循环插入消耗时间1947毫秒
|
|
|
//1200条 saveBatch消耗时间3687毫秒 循环插入消耗时间5212毫秒
|
|
|
//update-end-author:taoyan date:20190528 for:批量插入数据
|
|
|
- return Result.ok("文件导入成功!数据行数:" + list.size());
|
|
|
+ return Result.ok("文件导入成功!数据行数:" + lstt.size());
|
|
|
} catch (Exception e) {
|
|
|
log.error(e.getMessage(), e);
|
|
|
return Result.error("文件导入失败:" + e.getMessage());
|
|
@@ -2350,6 +2458,7 @@ public class SysUserController {
|
|
|
eml=split[0]+"01"+"@"+split[1];
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
}else {
|
|
|
List<String> emails = sysUserService.emails(email.split("@")[0],null);
|
|
|
if (emails!=null&&emails.size()>1){
|