|
@@ -45,6 +45,8 @@ import org.jeecg.modules.geke.userShift.entity.UserShiftVo;
|
|
|
import org.jeecg.modules.geke.userShift.service.IUserShiftService;
|
|
|
import org.jeecg.modules.geke.userchange.entity.UserChage;
|
|
|
import org.jeecg.modules.geke.userchange.service.IUserChageService;
|
|
|
+import org.jeecg.modules.geke.usercontract.entity.UserContract;
|
|
|
+import org.jeecg.modules.geke.usercontract.service.IUserContractService;
|
|
|
import org.jeecg.modules.geke.userquit.entity.UserQuit;
|
|
|
import org.jeecg.modules.geke.userquit.service.IUserQuitService;
|
|
|
import org.jeecg.modules.geke.vacation.entity.Vacation;
|
|
@@ -140,6 +142,9 @@ public class SysUserController {
|
|
|
@Autowired
|
|
|
private ISysDepartRoleService departRoleService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IUserContractService userContractService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private SysDepartMapper departMapper;
|
|
|
|
|
@@ -308,6 +313,7 @@ public class SysUserController {
|
|
|
String state="0";
|
|
|
List<String> mySubDepIdsByDepId=null;
|
|
|
List<String> status=null;
|
|
|
+ List<String> category=null;
|
|
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
|
List<SysUserRole> userRole = sysUserRoleService.list(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, sysUser.getId()));
|
|
|
if (userRole!=null&&userRole.size()>0){
|
|
@@ -325,8 +331,10 @@ 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(","));
|
|
|
}
|
|
|
- Page<SysUser> pageList = sysUserService.kQueryUser(page, user,subDepIdsByDepId,mySubDepIdsByDepId,status);
|
|
|
+ Page<SysUser> pageList = sysUserService.kQueryUser(page, user,subDepIdsByDepId,mySubDepIdsByDepId,status,category);
|
|
|
//批量查询用户的所属部门
|
|
|
//step.1 先拿到全部的 useids
|
|
|
//step.2 通过 useids,一次性查询用户的所属部门名字
|
|
@@ -334,6 +342,11 @@ public class SysUserController {
|
|
|
if(userIds!=null && userIds.size()>0){
|
|
|
Map<String,String> useDepNames = sysUserService.getDepNamesByUserIds(userIds);
|
|
|
pageList.getRecords().forEach(item->{
|
|
|
+ List<UserContract> list = userContractService.list(item.getId());
|
|
|
+ if (list!=null&&list.size()>0){
|
|
|
+ item.setContractType(list.get(0).getContractType());
|
|
|
+ item.setCEndDate(list.get(0).getEndDate());
|
|
|
+ }
|
|
|
String bankCard = item.getBankCard();
|
|
|
item.setOrgCodeTxt(useDepNames.get(item.getId()));
|
|
|
List<UserQuit> userIds1 = userQuitService.getUserIds(item.getId());
|
|
@@ -418,6 +431,14 @@ public class SysUserController {
|
|
|
}
|
|
|
sysUserService.addUserWithRole(user, selectedRoles);
|
|
|
sysUserService.addUserWithDepart(user, selectedDeparts);
|
|
|
+ UserContract userContract=new UserContract();
|
|
|
+ userContract.setUserId(user.getId());
|
|
|
+ userContract.setRealname(jsonObject.get("realname").toString());
|
|
|
+ userContract.setContractType(user.getContractType());
|
|
|
+ userContract.setDeptId(jsonObject.get("departIds").toString());
|
|
|
+ userContract.setStartDate(user.getEntryDate());
|
|
|
+ userContract.setEndDate(user.getCEndDate());
|
|
|
+ userContractService.save(userContract);
|
|
|
if (jsonObject.getString("type")!=null){
|
|
|
AttendanceRule attendanceRule=new AttendanceRule();
|
|
|
attendanceRule.setUserId(String.valueOf(codeVo.getSeqNo()));
|
|
@@ -804,12 +825,15 @@ public class SysUserController {
|
|
|
//update-end--Author:kangxiaolin Date:20180825 for:[03]用户导出,如果选择数据则只导出相关数据----------------------
|
|
|
List<String> subDepIdsByDepId=null;
|
|
|
List<String> status=null;
|
|
|
+ List<String> category=null;
|
|
|
if (sysUser.getOrgCodeTxt()!=null){
|
|
|
subDepIdsByDepId= sysDepartService.getSubDepIdsByDepId(sysUser.getOrgCodeTxt());
|
|
|
}if (sysUser.getEmpStatus()!=null&&!"".equals(sysUser.getEmpStatus())){
|
|
|
status=Arrays.asList(sysUser.getEmpStatus().split(","));
|
|
|
+ }if (sysUser.getCategory()!=null&&!"".equals(sysUser.getCategory())){
|
|
|
+ category=Arrays.asList(sysUser.getCategory().toString().split(","));
|
|
|
}
|
|
|
- List<SysUser> pageList = sysUserMapper.kQueryUser(page, sysUser,subDepIdsByDepId,null,status);
|
|
|
+ List<SysUser> pageList = sysUserMapper.kQueryUser(page, sysUser,subDepIdsByDepId,null,status,category);
|
|
|
|
|
|
List<String>userids=new ArrayList<>();
|
|
|
if (pageList.size()>0){
|
|
@@ -862,7 +886,6 @@ public class SysUserController {
|
|
|
if (sysUser.getOrgCodeTxt()!=null&&!sysUser.getOrgCodeTxt().equals("")&&sysUser.getOrgCodeTxt().equals("空白模板")){
|
|
|
sName="员工信息模板";
|
|
|
SysUser u=new SysUser();
|
|
|
- /*SysUser u=new SysUser();
|
|
|
u.setRealname("例:李四");
|
|
|
u.setEgName("例:cent");
|
|
|
u.setEmail("例:cent.li@gksports.com.cn");
|
|
@@ -880,7 +903,24 @@ public class SysUserController {
|
|
|
u.setBankCard("例:622************142");
|
|
|
u.setBankAddr("例:上海工商银行徐汇支行");
|
|
|
u.setSyFund("例:061***********245");
|
|
|
- u.setWagesOne("例:10000");*/
|
|
|
+ u.setWagesOne("例:10000");
|
|
|
+ u.setAge(20);
|
|
|
+ u.setSfzType("例:中国身份证");
|
|
|
+ u.setNationality("101");
|
|
|
+ u.setEducation("101");
|
|
|
+ u.setSchool("例:上海师范大学");
|
|
|
+ u.setShareDept("1");
|
|
|
+ u.setTrialMoth("6");
|
|
|
+ u.setTrialEndDate(new Date());
|
|
|
+ u.setWorkMoth("6");
|
|
|
+ u.setDivisionMoth("120");
|
|
|
+ u.setWagesBase("8000");
|
|
|
+ u.setPost("zongcaibansiji");
|
|
|
+ u.setHomeAddr("例:上海市徐汇区1022号");
|
|
|
+ u.setAddr("例:广东省广州市");
|
|
|
+ u.setIsAttendance("是");
|
|
|
+ u.setType("2");
|
|
|
+ u.setRemarks("国外友人");
|
|
|
pageList=new ArrayList<>();
|
|
|
pageList.add(u);
|
|
|
}
|
|
@@ -918,7 +958,7 @@ public class SysUserController {
|
|
|
|
|
|
try {
|
|
|
List<SysUser> listSysUsers = ExcelImportUtil.importExcel(file.getInputStream(), SysUser.class, params);
|
|
|
- //listSysUsers.remove(0);
|
|
|
+ listSysUsers.remove(0);
|
|
|
for (int i = 0; i < listSysUsers.size(); i++) {
|
|
|
SysUser sysUserExcel = listSysUsers.get(i);
|
|
|
int lineNumber = i + 1;
|
|
@@ -937,7 +977,6 @@ public class SysUserController {
|
|
|
sysUserExcel.setCode(workNo);
|
|
|
sysUserExcel.setId(workNo);
|
|
|
sysUserExcel.setTrialMoth("6");
|
|
|
- sysUserExcel.setIsAttendance("0");
|
|
|
if (sysUserExcel.getEmploymentStatus()==null||sysUserExcel.getEmploymentStatus().equals("")){
|
|
|
sysUserExcel.setEmploymentStatus(40);
|
|
|
}if(sysUserExcel.getEntryDate()!=null){
|
|
@@ -953,6 +992,10 @@ 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");
|
|
|
}
|
|
|
sysUserExcel.setUsername(workNo);
|
|
|
if (StringUtils.isBlank(sysUserExcel.getPassword())) {
|
|
@@ -999,10 +1042,20 @@ public class SysUserController {
|
|
|
if (sysUserExcel.getBirthday()!=null){
|
|
|
if (!"".equals(sysUserExcel.getSex())&&sysUserExcel.getSex()!=null){
|
|
|
sysUserService.addUserWithRole(sysUserExcel, "1473241527673765890");
|
|
|
- AttendanceRule attendanceRule=new AttendanceRule();
|
|
|
- attendanceRule.setUserId(workNo);
|
|
|
- attendanceRule.setType("2");
|
|
|
- attendanceRuleService.save(attendanceRule);
|
|
|
+ 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++;
|
|
@@ -2237,10 +2290,10 @@ public class SysUserController {
|
|
|
str.setStartPost(ones.getName());
|
|
|
}
|
|
|
}
|
|
|
- lst.add(sysUser);
|
|
|
+ // lst.add(sysUser);
|
|
|
});
|
|
|
userChageService.saveBatch(list);
|
|
|
- sysUserService.updateBatchById(lst);
|
|
|
+ //sysUserService.updateBatchById(lst);
|
|
|
}
|
|
|
//400条 saveBatch消耗时间1592毫秒 循环插入消耗时间1947毫秒
|
|
|
//1200条 saveBatch消耗时间3687毫秒 循环插入消耗时间5212毫秒
|
|
@@ -2260,5 +2313,50 @@ public class SysUserController {
|
|
|
return Result.error("文件导入失败!");
|
|
|
}
|
|
|
|
|
|
+ @RequestMapping(value = "/emails", method = RequestMethod.GET)
|
|
|
+ public String emails(String email,String userid) {
|
|
|
+ String eml=null;
|
|
|
+ if (userid!=null&&!"".equals(userid)){
|
|
|
+ List<String> emails = sysUserService.emails(email.split("@")[0],userid);
|
|
|
+ if (emails!=null&&emails.size()>0){
|
|
|
+ eml=emails.get(0);
|
|
|
+ }else {
|
|
|
+ List<String> ema = sysUserService.emails(email.split("@")[0],null);
|
|
|
+ if (ema!=null&&ema.size()>1){
|
|
|
+ String[] split = ema.get(0).split("@");
|
|
|
+ String el = split[0].substring(0, split[0].length() - 2);
|
|
|
+ String substring = split[0].substring(split[0].length() - 2, split[0].length());
|
|
|
+ int i = Integer.parseInt(split[0].substring(split[0].length() - 2, split[0].length()));
|
|
|
+ i++;
|
|
|
+ String sum=String.valueOf(i);
|
|
|
+ if (i<10){
|
|
|
+ sum="0"+i;
|
|
|
+ }
|
|
|
+ eml=el+sum+"@"+split[1];
|
|
|
+ }else if (ema!=null&&ema.size()==1){
|
|
|
+ String[] split = ema.get(0).split("@");
|
|
|
+ eml=split[0]+"01"+"@"+split[1];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ List<String> emails = sysUserService.emails(email.split("@")[0],null);
|
|
|
+ if (emails!=null&&emails.size()>1){
|
|
|
+ String[] split = emails.get(0).split("@");
|
|
|
+ String el = split[0].substring(0, split[0].length() - 2);
|
|
|
+ String substring = split[0].substring(split[0].length() - 2, split[0].length());
|
|
|
+ int i = Integer.parseInt(split[0].substring(split[0].length() - 2, split[0].length()));
|
|
|
+ i++;
|
|
|
+ String sum=String.valueOf(i);
|
|
|
+ if (i<10){
|
|
|
+ sum="0"+i;
|
|
|
+ }
|
|
|
+ eml=el+sum+"@"+split[1];
|
|
|
+ }else if (emails!=null&&emails.size()==1){
|
|
|
+ String[] split = emails.get(0).split("@");
|
|
|
+ eml=split[0]+"01"+"@"+split[1];
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
+ return eml;
|
|
|
+ }
|
|
|
}
|