Merge remote-tracking branch 'origin/main'

main
wanglei 2 months ago
commit 20e0069162

@ -158,7 +158,13 @@ public class SysUserController extends BaseController
HashSet<String> accounts = new HashSet<>(); HashSet<String> accounts = new HashSet<>();
while (accounts.size() < num) { while (accounts.size() < num) {
String randomUserName = RandomStringUtils.randomAlphanumeric(8); String randomUserName = RandomStringUtils.randomAlphanumeric(8);
accounts.add(randomUserName); //查询是否有相同账号
SysUser param = new SysUser();
param.setUserName(randomUserName);
if(!userService.checkUserNameUnique(param)){
}else{
accounts.add(randomUserName);
}
} }
for(String account : accounts) { for(String account : accounts) {
SysUser nuser = new SysUser(); SysUser nuser = new SysUser();

@ -70,7 +70,7 @@ public class UserConstants
/** /**
* *
*/ */
public static final int USERNAME_MIN_LENGTH = 2; public static final int USERNAME_MIN_LENGTH = 1;
public static final int USERNAME_MAX_LENGTH = 20; public static final int USERNAME_MAX_LENGTH = 20;
/** /**

@ -68,7 +68,7 @@ public class KhEmployeeController extends BaseController
@PostMapping("/importData") @PostMapping("/importData")
public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception
{ {
ExcelUtil<KhEmployee> util = new ExcelUtil<KhEmployee>(KhEmployee.class); ExcelUtil<KhEmployee> util = new ExcelUtil<>(KhEmployee.class);
List<KhEmployee> empList = util.importExcel(file.getInputStream()); List<KhEmployee> empList = util.importExcel(file.getInputStream());
String operName = getUsername(); String operName = getUsername();
String message = khEmployeeService.importEmp(empList, updateSupport, operName); String message = khEmployeeService.importEmp(empList, updateSupport, operName);
@ -100,7 +100,7 @@ public class KhEmployeeController extends BaseController
@PostMapping @PostMapping
public AjaxResult add(@RequestBody KhEmployee khEmployee) public AjaxResult add(@RequestBody KhEmployee khEmployee)
{ {
return toAjax(khEmployeeService.insertKhEmployee(khEmployee)); return khEmployeeService.insertKhEmployee(khEmployee);
} }
/** /**

@ -28,7 +28,7 @@ public class KhEmployee extends BaseEntity {
/** /**
* ID * ID
*/ */
@Excel(name = "部门ID") @Excel(name = "*部门ID")
private Long deptId; private Long deptId;
/** /**
@ -40,13 +40,13 @@ public class KhEmployee extends BaseEntity {
/** /**
* *
*/ */
@Excel(name = "职工姓名") @Excel(name = "*职工姓名")
private String empName; private String empName;
/** /**
* *
*/ */
@Excel(name = "工号") @Excel(name = "*工号")
private String wordId; private String wordId;
/** /**

@ -1,6 +1,8 @@
package com.ruoyi.kaohe.service; package com.ruoyi.kaohe.service;
import java.util.List; import java.util.List;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.kaohe.domain.KhEmployee; import com.ruoyi.kaohe.domain.KhEmployee;
/** /**
@ -33,7 +35,7 @@ public interface IKhEmployeeService
* @param khEmployee * @param khEmployee
* @return * @return
*/ */
public int insertKhEmployee(KhEmployee khEmployee); public AjaxResult insertKhEmployee(KhEmployee khEmployee);
/** /**
* *

@ -1,7 +1,9 @@
package com.ruoyi.kaohe.service.impl; package com.ruoyi.kaohe.service.impl;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.exception.ServiceException;
@ -10,6 +12,7 @@ import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.BeanValidators; import com.ruoyi.common.utils.bean.BeanValidators;
import com.ruoyi.system.mapper.SysDeptMapper; import com.ruoyi.system.mapper.SysDeptMapper;
import com.ruoyi.system.service.ISysUserService;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -17,9 +20,12 @@ import org.springframework.stereotype.Service;
import com.ruoyi.kaohe.mapper.KhEmployeeMapper; import com.ruoyi.kaohe.mapper.KhEmployeeMapper;
import com.ruoyi.kaohe.domain.KhEmployee; import com.ruoyi.kaohe.domain.KhEmployee;
import com.ruoyi.kaohe.service.IKhEmployeeService; import com.ruoyi.kaohe.service.IKhEmployeeService;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import static com.ruoyi.common.utils.SecurityUtils.getUsername;
/** /**
* Service * Service
* *
@ -32,6 +38,8 @@ public class KhEmployeeServiceImpl implements IKhEmployeeService {
private KhEmployeeMapper khEmployeeMapper; private KhEmployeeMapper khEmployeeMapper;
@Resource @Resource
private SysDeptMapper deptMapper; private SysDeptMapper deptMapper;
@Autowired
private ISysUserService userService;
private static final Logger log = LoggerFactory.getLogger(KhEmployeeServiceImpl.class); private static final Logger log = LoggerFactory.getLogger(KhEmployeeServiceImpl.class);
@ -64,9 +72,33 @@ public class KhEmployeeServiceImpl implements IKhEmployeeService {
* @return * @return
*/ */
@Override @Override
public int insertKhEmployee(KhEmployee khEmployee) { @Transactional
public AjaxResult insertKhEmployee(KhEmployee khEmployee) {
khEmployee.setCreateTime(DateUtils.getNowDate()); khEmployee.setCreateTime(DateUtils.getNowDate());
return khEmployeeMapper.insertKhEmployee(khEmployee); // 验证是否存在这个职工 工号唯一性
KhEmployee param = new KhEmployee();
param.setWordId(khEmployee.getWordId());
List<KhEmployee> e = khEmployeeMapper.selectKhEmployeeList(param);
if (StringUtils.isNull(e) || e.size() == 0) {
int r = khEmployeeMapper.insertKhEmployee(khEmployee);
///生成对应的用户账号,工号为账号
SysUser user= new SysUser();
user.setUserName(khEmployee.getWordId());
if (userService.checkUserNameUnique(user))
{
user.setCreateBy(getUsername());
user.setNickName(khEmployee.getEmpName());
user.setPassword(SecurityUtils.encryptPassword("111111"));
user.setDeptId(khEmployee.getDeptId());
Long[] roleIds = {102L}; //固定的评分账号角色id
user.setRoleIds(roleIds);
userService.insertUser(user);
}
return r>0 ? AjaxResult.success() : AjaxResult.error();
}else{
return AjaxResult.error("工号已存在!");
}
} }
/** /**
@ -104,40 +136,57 @@ public class KhEmployeeServiceImpl implements IKhEmployeeService {
} }
@Override @Override
@Transactional
public String importEmp(List<KhEmployee> empList, boolean updateSupport, String operName) { public String importEmp(List<KhEmployee> empList, boolean updateSupport, String operName) {
if (StringUtils.isNull(empList) || empList.size() == 0) { if (StringUtils.isNull(empList) || empList.size() == 0) {
throw new ServiceException("导入职工数据不能为空!"); throw new ServiceException("导入职工数据不能为空!");
} }
List<KhEmployee> userEmp = new ArrayList<KhEmployee>();//存放需要生成用户的
int successNum = 0; int successNum = 0;
int failureNum = 0; int failureNum = 0;
StringBuilder successMsg = new StringBuilder(); StringBuilder successMsg = new StringBuilder();
StringBuilder failureMsg = new StringBuilder(); StringBuilder failureMsg = new StringBuilder();
for (KhEmployee employee : empList) { for (KhEmployee employee : empList) {
try { try {
if(StringUtils.isEmpty(employee.getSex())){
employee.setSex("2");
}
//根据deptId查询deptName //根据deptId查询deptName
SysDept sysDept = deptMapper.selectDeptById(employee.getDeptId()); SysDept sysDept = deptMapper.selectDeptById(employee.getDeptId());
employee.setDeptName(sysDept.getDeptName()); employee.setDeptName(sysDept.getDeptName());
// 验证是否存在这个职工 // 验证是否存在这个职工 工号唯一性
KhEmployee param = new KhEmployee(); KhEmployee param = new KhEmployee();
param.setEmpName(employee.getEmpName()); param.setWordId(employee.getWordId());
param.setDeptId(employee.getDeptId());
List<KhEmployee> e = khEmployeeMapper.selectKhEmployeeList(param); List<KhEmployee> e = khEmployeeMapper.selectKhEmployeeList(param);
if (StringUtils.isNull(e) || e.size() == 0) { if (StringUtils.isNull(e) || e.size() == 0) {
khEmployeeMapper.insertKhEmployee(employee); khEmployeeMapper.insertKhEmployee(employee);
successNum++; successNum++;
successMsg.append("<br/>" + successNum + "、账号 " + employee.getEmpName() + " 导入成功"); successMsg.append("<br/>" + successNum + "、工号 " + employee.getWordId() + " 导入成功");
///生成对应的用户账号,工号为账号
SysUser user= new SysUser();
user.setUserName(employee.getWordId());
if (userService.checkUserNameUnique(user))
{
user.setCreateBy(getUsername());
user.setNickName(employee.getEmpName());
user.setPassword(SecurityUtils.encryptPassword("111111"));
user.setDeptId(employee.getDeptId());
Long[] roleIds = {102L}; //固定的评分账号角色id
user.setRoleIds(roleIds);
userService.insertUser(user);
}
} else if (updateSupport) { } else if (updateSupport) {
employee.setId(e.get(0).getId()); employee.setId(e.get(0).getId());
khEmployeeMapper.updateKhEmployee(employee); khEmployeeMapper.updateKhEmployee(employee);
successNum++; successNum++;
successMsg.append("<br/>" + successNum + "、账号 " + employee.getEmpName() + " 更新成功"); successMsg.append("<br/>" + successNum + "、工号 " + employee.getWordId() + " 更新成功");
} else { } else {
failureNum++; failureNum++;
failureMsg.append("<br/>" + failureNum + "、账号 " + employee.getEmpName() + " 已存在"); failureMsg.append("<br/>" + failureNum + "、工号 " + employee.getWordId() + " 已存在");
} }
} catch (Exception e) { } catch (Exception e) {
failureNum++; failureNum++;
String msg = "<br/>" + failureNum + "、账号 " + employee.getEmpName() + " 导入失败:"; String msg = "<br/>" + failureNum + "、工号 " + employee.getWordId() + " 导入失败:";
failureMsg.append(msg + e.getMessage()); failureMsg.append(msg + e.getMessage());
log.error(msg, e); log.error(msg, e);
} }

Loading…
Cancel
Save