debug,用户导入
This commit is contained in:
parent
431a718d2e
commit
30a9545e0e
|
@ -1,5 +1,25 @@
|
|||
package com.ruoyi.system.service.impl;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.ScheduledExecutorService;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import javax.validation.Validator;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.transaction.support.TransactionTemplate;
|
||||
import org.springframework.web.context.request.RequestContextHolder;
|
||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.ruoyi.common.annotation.DataScope;
|
||||
import com.ruoyi.common.auth.wx.WxAuthService;
|
||||
|
@ -38,22 +58,6 @@ import com.ruoyi.yh.logImport.domain.enums.LogImportType;
|
|||
import com.ruoyi.yh.logImport.service.LogImportService;
|
||||
import com.ruoyi.yh.logImportDetail.domain.enums.LogImportDetailType;
|
||||
import com.ruoyi.yh.logImportDetail.service.ILogImportDetailService;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.transaction.support.TransactionTemplate;
|
||||
|
||||
import javax.validation.Validator;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.ScheduledExecutorService;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 用户 业务层处理
|
||||
|
@ -563,11 +567,26 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
// 获取Security上下文
|
||||
Authentication auth = SecurityUtils.getAuthentication();
|
||||
|
||||
// 保存当前请求上下文(如果存在)
|
||||
ServletRequestAttributes requestAttributes = null;
|
||||
try {
|
||||
requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
|
||||
} catch (Exception e) {
|
||||
log.debug("无法获取当前请求上下文", e);
|
||||
}
|
||||
final ServletRequestAttributes finalRequestAttributes = requestAttributes;
|
||||
|
||||
// 开始异步导入
|
||||
scheduledExecutorService.schedule(() -> {
|
||||
try {
|
||||
// 设置当前Security上下文
|
||||
SecurityUtils.setAuthentication(auth);
|
||||
|
||||
// 恢复请求上下文(如果之前保存了)
|
||||
if (finalRequestAttributes != null) {
|
||||
RequestContextHolder.setRequestAttributes(finalRequestAttributes, true);
|
||||
}
|
||||
|
||||
// 查询部门列表
|
||||
List<SysDept> deptList = deptService.selectDeptListByNames(CollectionUtils.map(userList, SysUserVO::getDeptName));
|
||||
SysDept defaultDept = new SysDept();
|
||||
|
@ -626,9 +645,12 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
// 修改导入状态为处理完成
|
||||
logImportService.updateLogToFinished(importLog.getLogId());
|
||||
|
||||
} finally {
|
||||
// 清理请求上下文,避免内存泄漏
|
||||
RequestContextHolder.resetRequestAttributes();
|
||||
}
|
||||
}, 0, TimeUnit.SECONDS);
|
||||
|
||||
|
||||
return userList.size();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user