|
|
|
@ -2,7 +2,8 @@ package org.dromara.system.listener; |
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import cn.hutool.core.util.ObjectUtil; |
|
|
|
import cn.hutool.crypto.digest.BCrypt; |
|
|
|
import cn.hutool.core.util.RandomUtil; |
|
|
|
import cn.hutool.crypto.digest.DigestUtil; |
|
|
|
import cn.hutool.http.HtmlUtil; |
|
|
|
import cn.idev.excel.context.AnalysisContext; |
|
|
|
import cn.idev.excel.event.AnalysisEventListener; |
|
|
|
@ -11,6 +12,7 @@ import jakarta.validation.ConstraintViolationException; |
|
|
|
import org.dromara.common.core.exception.ServiceException; |
|
|
|
import org.dromara.common.core.utils.SpringUtils; |
|
|
|
import org.dromara.common.core.utils.StreamUtils; |
|
|
|
import org.dromara.common.core.utils.StringUtils; |
|
|
|
import org.dromara.common.core.utils.ValidatorUtils; |
|
|
|
import org.dromara.common.excel.core.ExcelListener; |
|
|
|
import org.dromara.common.excel.core.ExcelResult; |
|
|
|
@ -34,7 +36,7 @@ public class SysUserImportListener extends AnalysisEventListener<SysUserImportVo |
|
|
|
|
|
|
|
private final ISysUserService userService; |
|
|
|
|
|
|
|
private final String password; |
|
|
|
private final String initPassword; |
|
|
|
|
|
|
|
private final Boolean isUpdateSupport; |
|
|
|
|
|
|
|
@ -48,7 +50,7 @@ public class SysUserImportListener extends AnalysisEventListener<SysUserImportVo |
|
|
|
public SysUserImportListener(Boolean isUpdateSupport) { |
|
|
|
String initPassword = SpringUtils.getBean(ISysConfigService.class).selectConfigByKey("sys.user.initPassword"); |
|
|
|
this.userService = SpringUtils.getBean(ISysUserService.class); |
|
|
|
this.password = BCrypt.hashpw(initPassword); |
|
|
|
this.initPassword = initPassword; |
|
|
|
this.isUpdateSupport = isUpdateSupport; |
|
|
|
this.operUserId = LoginHelper.getUserId(); |
|
|
|
} |
|
|
|
@ -61,7 +63,9 @@ public class SysUserImportListener extends AnalysisEventListener<SysUserImportVo |
|
|
|
if (ObjectUtil.isNull(sysUser)) { |
|
|
|
SysUserBo user = BeanUtil.toBean(userVo, SysUserBo.class); |
|
|
|
ValidatorUtils.validate(user); |
|
|
|
user.setPassword(password); |
|
|
|
user.randomSalt(); |
|
|
|
String loginAccount = StringUtils.isNotBlank(user.getLoginName()) ? user.getLoginName() : user.getUserName(); |
|
|
|
user.setPassword(DigestUtil.md5Hex(loginAccount + initPassword + user.getSalt())); |
|
|
|
user.setCreateBy(operUserId); |
|
|
|
userService.insertUser(user); |
|
|
|
successNum++; |
|
|
|
|