Compare commits

...

2 Commits

Author SHA1 Message Date
dongdingding 6e4c5ea80d Merge branch 'dongdingding' of http://39.101.188.84:7000/suzhou-jichuang-lanhai/zhiyuanzheJava
1 year ago
dongdingding 5b521da1ea 定时任务
1 year ago

@ -23,7 +23,6 @@ import javax.annotation.Resource;
@RestController @RestController
@Api(tags = "测试数据上链") @Api(tags = "测试数据上链")
@RequestMapping("/zhiyuanzhe/demo") @RequestMapping("/zhiyuanzhe/demo")
@Transactional(rollbackFor = Exception.class)
public class DemoController extends BaseController { public class DemoController extends BaseController {
@Resource @Resource

@ -12,11 +12,7 @@ import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.system.domain.SysPost; import com.ruoyi.system.domain.SysPost;
import com.ruoyi.system.domain.SysUserPost; import com.ruoyi.system.domain.SysUserPost;
import com.ruoyi.system.domain.SysUserRole; import com.ruoyi.system.domain.SysUserRole;
import com.ruoyi.system.mapper.SysPostMapper; import com.ruoyi.system.mapper.*;
import com.ruoyi.system.mapper.SysRoleMapper;
import com.ruoyi.system.mapper.SysUserMapper;
import com.ruoyi.system.mapper.SysUserPostMapper;
import com.ruoyi.system.mapper.SysUserRoleMapper;
import com.ruoyi.system.service.ISysConfigService; import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.ISysUserService;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -489,17 +485,45 @@ public class SysUserServiceImpl implements ISysUserService {
*/ */
@Override @Override
public void addAll(List<SysUser> userList) { public void addAll(List<SysUser> userList) {
// 新增用户信息 int batchSize = 50;
userMapper.addAll(userList); int totalSize = userList.size();
// 新增用户与角色管理 int fullBatches = totalSize / batchSize;
List<SysUserRole> list = new ArrayList<>(userList.size()); int remainingItems = totalSize % batchSize;
for (SysUser user : userList) { // 处理完整的批次
SysUserRole ur = new SysUserRole(); for (int i = 0; i < fullBatches; i++) {
ur.setUserId(user.getUserId()); int startIndex = i * batchSize;
ur.setRoleId(user.getRoleId()); int endIndex = (i + 1) * batchSize;
list.add(ur); List<SysUser> subList = userList.subList(startIndex, endIndex);
// 批量新增用户信息
userMapper.addAll(subList);
// 批量新增用户与角色关联信息
List<SysUserRole> userRoleList = new ArrayList<>();
for (SysUser user : subList) {
SysUserRole ur = new SysUserRole();
ur.setUserId(user.getUserId());
ur.setRoleId(user.getRoleId());
userRoleList.add(ur);
}
userRoleMapper.batchUserRole(userRoleList);
} }
userRoleMapper.batchUserRole(list);
// 处理余数的数据
if (remainingItems > 0) {
int startIndex = fullBatches * batchSize;
List<SysUser> remainingList = userList.subList(startIndex, totalSize);
// 批量新增用户信息
userMapper.addAll(remainingList);
// 批量新增用户与角色关联信息
List<SysUserRole> userRoleList = new ArrayList<>();
for (SysUser user : remainingList) {
SysUserRole ur = new SysUserRole();
ur.setUserId(user.getUserId());
ur.setRoleId(user.getRoleId());
userRoleList.add(ur);
}
userRoleMapper.batchUserRole(userRoleList);
}
} }
/** /**

Loading…
Cancel
Save