fix:同步利元亨用户岗位数据
This commit is contained in:
@@ -93,7 +93,7 @@ public class SpdmTenantController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/queryUserList")
|
@PostMapping("/queryUserList")
|
||||||
public R<List<LyricUserDto>> queryUserList(@RequestParam String workType) {
|
public R<List<LyricUserDto>> queryUserList(@RequestParam(required = false) String workType) {
|
||||||
ResponseR sdmResponse = spdmServiceFeignClient.queryUserList(workType);
|
ResponseR sdmResponse = spdmServiceFeignClient.queryUserList(workType);
|
||||||
log.info("[queryUserList] sdmResponse:{}", sdmResponse);
|
log.info("[queryUserList] sdmResponse:{}", sdmResponse);
|
||||||
if (sdmResponse.isSuccess() && sdmResponse.getData() != null) {
|
if (sdmResponse.isSuccess() && sdmResponse.getData() != null) {
|
||||||
|
|||||||
@@ -80,21 +80,31 @@ public class SpdmUserController {
|
|||||||
@Operation(summary = "条件查询用户列表")
|
@Operation(summary = "条件查询用户列表")
|
||||||
@PostMapping(value = "/listUser")
|
@PostMapping(value = "/listUser")
|
||||||
public ResponseR listUser(@RequestBody UserPageQueryDto userPageQueryDto) {
|
public ResponseR listUser(@RequestBody UserPageQueryDto userPageQueryDto) {
|
||||||
R<Page<StaffPageResultDto>> sysStaffPageR = remoteTenantServiceFeign.listStaffForPage(
|
// R<Page<StaffPageResultDto>> sysStaffPageR = remoteTenantServiceFeign.listStaffForPage(
|
||||||
StaffPageQueryDto.builder()
|
// StaffPageQueryDto.builder()
|
||||||
.tenantId(userPageQueryDto.getTenantId())
|
// .tenantId(userPageQueryDto.getTenantId())
|
||||||
.nickname(userPageQueryDto.getNickname())
|
// .nickname(userPageQueryDto.getNickname())
|
||||||
.current(userPageQueryDto.getCurrent()).size(userPageQueryDto.getSize())
|
// .current(userPageQueryDto.getCurrent()).size(userPageQueryDto.getSize())
|
||||||
.build(),
|
// .build(),
|
||||||
userPageQueryDto.getTenantId());
|
// userPageQueryDto.getTenantId());
|
||||||
Page<StaffPageResultDto> staffPage = sysStaffPageR.getData();
|
// Page<StaffPageResultDto> staffPage = sysStaffPageR.getData();
|
||||||
if (staffPage != null) {
|
// if (staffPage != null) {
|
||||||
List<SysUserVO> userVOList = new ArrayList<>();
|
// List<SysUserVO> userVOList = new ArrayList<>();
|
||||||
staffPage.getRecords().forEach(i -> {
|
// staffPage.getRecords().forEach(i -> {
|
||||||
R<SysUserVO> sysUserVO = remoteUserServiceFeign.getUserByUserId(Long.valueOf(i.getUserId()), SecurityConstants.FROM_IN, userPageQueryDto.getTenantId());
|
// R<SysUserVO> sysUserVO = remoteUserServiceFeign.getUserByUserId(Long.valueOf(i.getUserId()), SecurityConstants.FROM_IN, userPageQueryDto.getTenantId());
|
||||||
userVOList.add(sysUserVO.getData());
|
// userVOList.add(sysUserVO.getData());
|
||||||
});
|
// });
|
||||||
return ResponseR.ok(PageResult.of(staffPage.getTotal(), staffPage.getCurrent(), staffPage.getSize(), userVOList));
|
// return ResponseR.ok(PageResult.of(staffPage.getTotal(), staffPage.getCurrent(), staffPage.getSize(), userVOList));
|
||||||
|
// }
|
||||||
|
UserPageQueryDto queryDto = new UserPageQueryDto();
|
||||||
|
queryDto.setNickname(userPageQueryDto.getNickname());
|
||||||
|
queryDto.setTenantId(userPageQueryDto.getTenantId());
|
||||||
|
queryDto.setCurrent(userPageQueryDto.getCurrent());
|
||||||
|
queryDto.setSize(userPageQueryDto.getSize());
|
||||||
|
R<Page<SysUserVO>> listUserForPageR = remoteUserServiceFeign.listUserForPage(queryDto, userPageQueryDto.getTenantId());
|
||||||
|
if (listUserForPageR.isSuccess() && listUserForPageR.getData() != null) {
|
||||||
|
Page<SysUserVO> listUserForPage = listUserForPageR.getData();
|
||||||
|
return ResponseR.ok(PageResult.of(listUserForPage.getTotal(), listUserForPage.getCurrent(), listUserForPage.getSize(), listUserForPage.getRecords()));
|
||||||
}
|
}
|
||||||
return ResponseR.ok();
|
return ResponseR.ok();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ public interface RemoteUserServiceFeign {
|
|||||||
@GetMapping("/user/infoByAccount/{phone}")
|
@GetMapping("/user/infoByAccount/{phone}")
|
||||||
R<SysUserInfoVO> infoByAccount(@PathVariable String phone, @RequestHeader(SecurityConstants.FROM) String from, @RequestHeader(CommonConstants.TENANT_ID) String tenantId);
|
R<SysUserInfoVO> infoByAccount(@PathVariable String phone, @RequestHeader(SecurityConstants.FROM) String from, @RequestHeader(CommonConstants.TENANT_ID) String tenantId);
|
||||||
@GetMapping("/user/page/inner")
|
@GetMapping("/user/page/inner")
|
||||||
R<Page<UserPageResultDto>> listUserForPage(@SpringQueryMap UserPageQueryDto sysUser);
|
R<Page<SysUserVO>> listUserForPage(@SpringQueryMap UserPageQueryDto sysUser, @RequestHeader(CommonConstants.TENANT_ID) String tenantId);
|
||||||
@GetMapping("/user/getUserListByUserName")
|
@GetMapping("/user/getUserListByUserName")
|
||||||
R<List<SysUserVO>> getUserListByUserName(@RequestParam("username") String userName);
|
R<List<SysUserVO>> getUserListByUserName(@RequestParam("username") String userName);
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,6 @@ public interface SpdmServiceFeignClient {
|
|||||||
ResponseR initNewTenant(@RequestParam Long tenantId);
|
ResponseR initNewTenant(@RequestParam Long tenantId);
|
||||||
|
|
||||||
@PostMapping("/lyricUser/queryUserList")
|
@PostMapping("/lyricUser/queryUserList")
|
||||||
ResponseR queryUserList(@RequestParam String workType);
|
ResponseR queryUserList(@RequestParam(required = false) String workType);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,6 +17,6 @@ public interface RemoteSpdmService {
|
|||||||
void initNewTenant(@RequestParam Long tenantId);
|
void initNewTenant(@RequestParam Long tenantId);
|
||||||
|
|
||||||
@PostMapping("/honeycom-spdm/spdm-tenant/queryUserList")
|
@PostMapping("/honeycom-spdm/spdm-tenant/queryUserList")
|
||||||
R<List<LyricUserDto>> queryUserList(@RequestParam String workType);
|
R<List<LyricUserDto>> queryUserList(@RequestParam(required = false) String workType);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import com.honeycombis.honeycom.common.core.exception.HoneycomException;
|
|||||||
import com.honeycombis.honeycom.common.core.util.R;
|
import com.honeycombis.honeycom.common.core.util.R;
|
||||||
import com.honeycombis.honeycom.common.security.annotation.Inner;
|
import com.honeycombis.honeycom.common.security.annotation.Inner;
|
||||||
import com.honeycombis.honeycom.tenant.entity.SysHrSyncLogEntity;
|
import com.honeycombis.honeycom.tenant.entity.SysHrSyncLogEntity;
|
||||||
|
import com.honeycombis.honeycom.tenant.feign.RemoteSpdmService;
|
||||||
import com.honeycombis.honeycom.tenant.service.SysHrSyncLogService;
|
import com.honeycombis.honeycom.tenant.service.SysHrSyncLogService;
|
||||||
import com.honeycombis.honeycom.tenant.service.SysTKMoldService;
|
import com.honeycombis.honeycom.tenant.service.SysTKMoldService;
|
||||||
import com.honeycombis.honeycom.tenant.vo.hr.HrUserInfoAddDataVO;
|
import com.honeycombis.honeycom.tenant.vo.hr.HrUserInfoAddDataVO;
|
||||||
@@ -28,6 +29,7 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@RestController
|
@RestController
|
||||||
@@ -39,10 +41,11 @@ public class SysHrSyncController {
|
|||||||
|
|
||||||
private final SysTKMoldService tkMoldService;
|
private final SysTKMoldService tkMoldService;
|
||||||
private final SysHrSyncLogService sysHrSyncLogService;
|
private final SysHrSyncLogService sysHrSyncLogService;
|
||||||
|
private final RemoteSpdmService remoteSpdmService;
|
||||||
|
|
||||||
public static final List<String> WORK_TYPES = Arrays.asList(
|
// public static final List<String> WORK_TYPES = Arrays.asList(
|
||||||
"设计", "仿真", "产品工艺", "方案", "程序", "激光"
|
// "设计", "仿真", "产品工艺", "方案", "程序", "激光"
|
||||||
);
|
// );
|
||||||
/**
|
/**
|
||||||
* 分页查询
|
* 分页查询
|
||||||
* @param page 分页对象
|
* @param page 分页对象
|
||||||
@@ -111,12 +114,18 @@ public class SysHrSyncController {
|
|||||||
@Inner(value = false)
|
@Inner(value = false)
|
||||||
@PostMapping("/allSyncLyricUsers")
|
@PostMapping("/allSyncLyricUsers")
|
||||||
public R<Boolean> allSyncLyricUsers(@RequestBody List<LyricUserDto> userDtoList) {
|
public R<Boolean> allSyncLyricUsers(@RequestBody List<LyricUserDto> userDtoList) {
|
||||||
for (String workType : WORK_TYPES) {
|
// 获取利元亨用户数据(带部门)
|
||||||
try {
|
R<List<LyricUserDto>> userListR = remoteSpdmService.queryUserList(null);
|
||||||
tkMoldService.allSyncLyricUsers(userDtoList, workType);
|
if (userListR.getData() != null) {
|
||||||
} catch (Exception e) {
|
Map<String, List<LyricUserDto>> userMapByWorkType = userListR.getData().stream().collect(Collectors.groupingBy(LyricUserDto::getWork_type_name));
|
||||||
log.error("全量同步用户数据失败", e);
|
for (String workType : userMapByWorkType.keySet()) {
|
||||||
throw new HoneycomException(e.getMessage());
|
log.info("-------------------------开始同步{}的用户数据----------------------", workType);
|
||||||
|
try {
|
||||||
|
tkMoldService.allSyncLyricUsers(userDtoList, workType);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("全量同步用户数据失败", e);
|
||||||
|
throw new HoneycomException(e.getMessage());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return R.ok();
|
return R.ok();
|
||||||
|
|||||||
@@ -52,7 +52,6 @@ public class SysTKMoldServiceImpl implements SysTKMoldService {
|
|||||||
private final SysHrSyncLogService sysHrSyncLogService;
|
private final SysHrSyncLogService sysHrSyncLogService;
|
||||||
private final SysRoleService sysRoleService;
|
private final SysRoleService sysRoleService;
|
||||||
private final SysStaffRoleService sysStaffRoleService;
|
private final SysStaffRoleService sysStaffRoleService;
|
||||||
private final RemoteSpdmService remoteSpdmService;
|
|
||||||
|
|
||||||
@Async("tenantAsyncTask")
|
@Async("tenantAsyncTask")
|
||||||
@Override
|
@Override
|
||||||
@@ -362,88 +361,87 @@ public class SysTKMoldServiceImpl implements SysTKMoldService {
|
|||||||
sysHrSyncLogService.save(sysHrSyncLogEntity);
|
sysHrSyncLogService.save(sysHrSyncLogEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
// @Async("tenantAsyncTask")
|
@Async("tenantAsyncTask")
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void allSyncLyricUsers(List<LyricUserDto> userList, String workType) {
|
public void allSyncLyricUsers(List<LyricUserDto> userList, String workType) {
|
||||||
// Long tenantId = 2001184963854700545L;
|
// Long tenantId = 2001184963854700545L;
|
||||||
Long tenantId = 7244250568405852160L;
|
Long tenantId = 7244250568405852160L;
|
||||||
// 获取利元亨用户数据(带部门)
|
|
||||||
// R<List<LyricUserDto>> userListR = remoteSpdmService.queryUserList(workType);
|
|
||||||
// List<LyricUserDto> userList = userListR.getData();
|
|
||||||
if (!userList.isEmpty()) {
|
if (!userList.isEmpty()) {
|
||||||
// 筛选新用户
|
// 筛选新用户
|
||||||
userList = filerNewUserList(userList);
|
userList = filerNewUserList(userList);
|
||||||
|
if (userList.size() > 0) {
|
||||||
|
log.info("开始同步,租户{}",tenantId);
|
||||||
|
StringBuilder message = new StringBuilder("全量同步:");
|
||||||
|
|
||||||
log.info("开始同步,租户{}",tenantId);
|
SysRoleVO sysRole = sysRoleService.getByRoleCodeAndTenantId(TenantConstants.ROLE_NORMAL_USER_CODE, tenantId);
|
||||||
StringBuilder message = new StringBuilder("全量同步:");
|
if (sysRole != null) {
|
||||||
|
Map<String,Long> empIdAndUserIds = new HashMap<>();
|
||||||
|
List<TenantUserDto> tenantUserDtos = tkMoldHrConverter.lyricUserToTenantUserDto(userList, empIdAndUserIds);
|
||||||
|
List<List<TenantUserDto>> lists = ListUtil.split(tenantUserDtos, 500);
|
||||||
|
int index = 0;
|
||||||
|
for (List<TenantUserDto> tenantUserDtoList : lists) {
|
||||||
|
log.info("执行第{}到{}用户",index+1,index += tenantUserDtoList.size());
|
||||||
|
//生成用户信息
|
||||||
|
honeycomUserServiceFeign.hrBatchAdd(tenantUserDtoList, SecurityConstants.FROM_IN, new Request.Options(300, TimeUnit.SECONDS, 300, TimeUnit.SECONDS, true));
|
||||||
|
}
|
||||||
|
message.append(String.format("新增用户%s;",tenantUserDtos.size()));
|
||||||
|
log.info("新增用户{}",tenantUserDtos.size());
|
||||||
|
|
||||||
SysRoleVO sysRole = sysRoleService.getByRoleCodeAndTenantId(TenantConstants.ROLE_NORMAL_USER_CODE, tenantId);
|
// 生成部门信息 按工种分组 挂租户下面
|
||||||
if (sysRole != null) {
|
// 获取去重后的一级部门列表
|
||||||
Map<String,Long> empIdAndUserIds = new HashMap<>();
|
|
||||||
List<TenantUserDto> tenantUserDtos = tkMoldHrConverter.lyricUserToTenantUserDto(userList, empIdAndUserIds);
|
|
||||||
List<List<TenantUserDto>> lists = ListUtil.split(tenantUserDtos, 500);
|
|
||||||
int index = 0;
|
|
||||||
for (List<TenantUserDto> tenantUserDtoList : lists) {
|
|
||||||
log.info("执行第{}到{}用户",index+1,index += tenantUserDtoList.size());
|
|
||||||
//生成用户信息
|
|
||||||
honeycomUserServiceFeign.hrBatchAdd(tenantUserDtoList, SecurityConstants.FROM_IN, new Request.Options(300, TimeUnit.SECONDS, 300, TimeUnit.SECONDS, true));
|
|
||||||
}
|
|
||||||
message.append(String.format("新增用户%s;",tenantUserDtos.size()));
|
|
||||||
log.info("新增用户{}",tenantUserDtos.size());
|
|
||||||
|
|
||||||
// 生成部门信息 按工种分组 挂租户下面
|
|
||||||
// 获取去重后的一级部门列表
|
|
||||||
// List<LyricUserDto> deptList = getDistinctDeptByDeptCode1(userList);
|
// List<LyricUserDto> deptList = getDistinctDeptByDeptCode1(userList);
|
||||||
Map<String,Long> deptIdAndDeptIds = new HashMap<>();
|
Map<String,Long> deptIdAndDeptIds = new HashMap<>();
|
||||||
List<SysDeptEntity> sysDeptEntities = tkMoldHrConverter.lyricDeptToTenantDept2(workType, deptIdAndDeptIds, tenantId);
|
List<SysDeptEntity> sysDeptEntities = tkMoldHrConverter.lyricDeptToTenantDept2(workType, deptIdAndDeptIds, tenantId);
|
||||||
sysDeptService.saveBatch(sysDeptEntities);
|
sysDeptService.saveBatch(sysDeptEntities);
|
||||||
message.append(String.format("新增部门%s;",sysDeptEntities.size()));
|
message.append(String.format("新增部门%s;",sysDeptEntities.size()));
|
||||||
log.info("新增部门{}",sysDeptEntities.size());
|
log.info("新增部门{}",sysDeptEntities.size());
|
||||||
|
|
||||||
//生成岗位信息
|
//生成岗位信息
|
||||||
List<LyricUserDto> jobList = getDistinctJobByJobCode(userList);
|
List<LyricUserDto> jobList = getDistinctJobByJobCode(userList);
|
||||||
Map<String,Long> jobIdAndPostIds = new HashMap<>();
|
Map<String,Long> jobIdAndPostIds = new HashMap<>();
|
||||||
List<SysPostEntity> sysPostEntities = tkMoldHrConverter.lyricJobToPost(jobList, jobIdAndPostIds, tenantId);
|
List<SysPostEntity> sysPostEntities = tkMoldHrConverter.lyricJobToPost(jobList, jobIdAndPostIds, tenantId);
|
||||||
sysPostService.saveBatch(sysPostEntities);
|
sysPostService.saveBatch(sysPostEntities);
|
||||||
message.append(String.format("新增职位%s;",sysPostEntities.size()));
|
message.append(String.format("新增职位%s;",sysPostEntities.size()));
|
||||||
log.info("新增职位{}",sysPostEntities.size());
|
log.info("新增职位{}",sysPostEntities.size());
|
||||||
|
|
||||||
//生成员工信息
|
//生成员工信息
|
||||||
List<SysStaffEntity> sysStaffEntities = new ArrayList<>(userList.size());
|
List<SysStaffEntity> sysStaffEntities = new ArrayList<>(userList.size());
|
||||||
// cid部门id和员工id映射
|
// cid部门id和员工id映射
|
||||||
Map<Long,Long> deptMap = new HashMap<>();
|
Map<Long,Long> deptMap = new HashMap<>();
|
||||||
Map<Long,Long> postMap = new HashMap<>();
|
Map<Long,Long> postMap = new HashMap<>();
|
||||||
List<SysStaffRoleEntity> staffRoleList = new ArrayList<>();
|
List<SysStaffRoleEntity> staffRoleList = new ArrayList<>();
|
||||||
userList.forEach(emp -> {
|
userList.forEach(emp -> {
|
||||||
SysStaffEntity sysStaffEntity = new SysStaffEntity();
|
SysStaffEntity sysStaffEntity = new SysStaffEntity();
|
||||||
sysStaffEntity.setUserId(empIdAndUserIds.get(emp.getPsn_code()));
|
sysStaffEntity.setUserId(empIdAndUserIds.get(emp.getPsn_code()));
|
||||||
sysStaffEntity.setLoginDefault(CommonConstants.FALSE_S);
|
sysStaffEntity.setLoginDefault(CommonConstants.FALSE_S);
|
||||||
sysStaffEntity.setTenantId(tenantId);
|
sysStaffEntity.setTenantId(tenantId);
|
||||||
// 用户状态默认正常
|
// 用户状态默认正常
|
||||||
sysStaffEntity.setStatus(CommonConstants.STATUS_NORMAL);
|
sysStaffEntity.setStatus(CommonConstants.STATUS_NORMAL);
|
||||||
long staffId = IdWorker.getId(sysStaffEntity);
|
long staffId = IdWorker.getId(sysStaffEntity);
|
||||||
sysStaffEntity.setStaffId(staffId);
|
sysStaffEntity.setStaffId(staffId);
|
||||||
sysStaffEntity.setStaffCode(TenantConstants.STAFF_CODE_PREFIX + staffId);
|
sysStaffEntity.setStaffCode(TenantConstants.STAFF_CODE_PREFIX + staffId);
|
||||||
sysStaffEntity.setCreateBy(0L);
|
sysStaffEntity.setCreateBy(0L);
|
||||||
sysStaffEntity.setUpdateBy(0L);
|
sysStaffEntity.setUpdateBy(0L);
|
||||||
// deptMap.put(staffId, deptIdAndDeptIds.get(emp.getDept_grp_code1()));
|
// deptMap.put(staffId, deptIdAndDeptIds.get(emp.getDept_grp_code1()));
|
||||||
deptMap.put(staffId, deptIdAndDeptIds.get(workType));
|
deptMap.put(staffId, deptIdAndDeptIds.get(workType));
|
||||||
postMap.put(staffId, jobIdAndPostIds.get(emp.getJob_code()));
|
postMap.put(staffId, jobIdAndPostIds.get(emp.getJob_code()));
|
||||||
sysStaffEntities.add(sysStaffEntity);
|
sysStaffEntities.add(sysStaffEntity);
|
||||||
SysStaffRoleEntity sysStaffRoleEntity = new SysStaffRoleEntity();
|
SysStaffRoleEntity sysStaffRoleEntity = new SysStaffRoleEntity();
|
||||||
sysStaffRoleEntity.setStaffId(staffId);
|
sysStaffRoleEntity.setStaffId(staffId);
|
||||||
sysStaffRoleEntity.setRoleId(sysRole.getRoleId());
|
sysStaffRoleEntity.setRoleId(sysRole.getRoleId());
|
||||||
staffRoleList.add(sysStaffRoleEntity);
|
staffRoleList.add(sysStaffRoleEntity);
|
||||||
});
|
});
|
||||||
//保存员工信息
|
//保存员工信息
|
||||||
sysStaffService.saveBatch(sysStaffEntities);
|
sysStaffService.saveBatch(sysStaffEntities);
|
||||||
//处理员工关联关系
|
//处理员工关联关系
|
||||||
List<SysStaffDeptEntity> sysStaffDeptEntities = tkMoldHrConverter.convertStaffDept(deptMap);
|
List<SysStaffDeptEntity> sysStaffDeptEntities = tkMoldHrConverter.convertStaffDept(deptMap);
|
||||||
List<SysStaffPostEntity> sysStaffPostEntities = tkMoldHrConverter.convertStaffPost(postMap);
|
List<SysStaffPostEntity> sysStaffPostEntities = tkMoldHrConverter.convertStaffPost(postMap);
|
||||||
sysStaffDeptService.saveBatch(sysStaffDeptEntities);
|
sysStaffDeptService.saveBatch(sysStaffDeptEntities);
|
||||||
sysStaffPostService.saveBatch(sysStaffPostEntities);
|
sysStaffPostService.saveBatch(sysStaffPostEntities);
|
||||||
sysStaffRoleService.saveBatch(staffRoleList);
|
sysStaffRoleService.saveBatch(staffRoleList);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -489,8 +487,8 @@ public class SysTKMoldServiceImpl implements SysTKMoldService {
|
|||||||
LyricUserDto::getJob_code,
|
LyricUserDto::getJob_code,
|
||||||
dto -> {
|
dto -> {
|
||||||
LyricUserDto newDto = new LyricUserDto();
|
LyricUserDto newDto = new LyricUserDto();
|
||||||
newDto.setDept_grp_code1(dto.getJob_code());
|
newDto.setJob_code(dto.getJob_code());
|
||||||
newDto.setDept_grp_name1(dto.getJob_name());
|
newDto.setJob_name(dto.getJob_name());
|
||||||
return newDto;
|
return newDto;
|
||||||
},
|
},
|
||||||
(existing, replacement) -> existing // 重复时保留第一个,避免覆盖
|
(existing, replacement) -> existing // 重复时保留第一个,避免覆盖
|
||||||
|
|||||||
@@ -14,4 +14,6 @@ public class UserApiProperties {
|
|||||||
*/
|
*/
|
||||||
private String defaultPassword = "honeycom@2025.";
|
private String defaultPassword = "honeycom@2025.";
|
||||||
|
|
||||||
|
private String defaultLyricPassword = "lyric@2026.";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -87,8 +87,8 @@ public class SysUserController {
|
|||||||
@Inner(false)
|
@Inner(false)
|
||||||
@Operation(summary = "分页查询" , description = "分页查询" )
|
@Operation(summary = "分页查询" , description = "分页查询" )
|
||||||
@GetMapping("/page/inner" )
|
@GetMapping("/page/inner" )
|
||||||
public R<IPage<SysUserPageQueryVO>> getSysUserPageInner(@ParameterObject Page<SysUserEntity> page, @ParameterObject SysUserPageQueryDTO sysUser) {
|
public R<IPage<SysUserVO>> getSysUserPageInner(@ParameterObject Page<SysUserEntity> page, @ParameterObject SysUserPageQueryDTO sysUser) {
|
||||||
return R.ok(sysUserService.page(page, sysUser));
|
return R.ok(sysUserService.pageInner(page, sysUser));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -32,6 +32,8 @@ public interface SysUserService extends IService<SysUserEntity> {
|
|||||||
|
|
||||||
IPage<SysUserPageQueryVO> page(Page<SysUserEntity> page, SysUserPageQueryDTO sysUser);
|
IPage<SysUserPageQueryVO> page(Page<SysUserEntity> page, SysUserPageQueryDTO sysUser);
|
||||||
|
|
||||||
|
IPage<SysUserVO> pageInner(Page<SysUserEntity> page, SysUserPageQueryDTO sysUser);
|
||||||
|
|
||||||
void changeStatus(SysUserChangeStatusDTO sysUser);
|
void changeStatus(SysUserChangeStatusDTO sysUser);
|
||||||
|
|
||||||
List<SysUserVO> findLikeUsername(String username);
|
List<SysUserVO> findLikeUsername(String username);
|
||||||
|
|||||||
@@ -185,7 +185,7 @@ public class SysHrSyncUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser
|
|||||||
public Boolean batchAdd(List<TenantUserDto> tenantUserDtoList) {
|
public Boolean batchAdd(List<TenantUserDto> tenantUserDtoList) {
|
||||||
List<SysUserEntity> sysUserEntitySaveList = new ArrayList<>();
|
List<SysUserEntity> sysUserEntitySaveList = new ArrayList<>();
|
||||||
List<SysPersonSaveOrUpdateDTO> sysPersonSaveOrUpdateDTOList = new ArrayList<>();
|
List<SysPersonSaveOrUpdateDTO> sysPersonSaveOrUpdateDTOList = new ArrayList<>();
|
||||||
String password = ENCODER.encode(userApiProperties.getDefaultPassword());
|
String password = ENCODER.encode(userApiProperties.getDefaultLyricPassword());
|
||||||
for (TenantUserDto tenantUserDto : tenantUserDtoList) {
|
for (TenantUserDto tenantUserDto : tenantUserDtoList) {
|
||||||
SysUserEntity sysUserEntity = new SysUserEntity();
|
SysUserEntity sysUserEntity = new SysUserEntity();
|
||||||
if(tenantUserDto.getUserId()!=null){
|
if(tenantUserDto.getUserId()!=null){
|
||||||
|
|||||||
@@ -264,6 +264,54 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUserEntity
|
|||||||
return pageData.convert(SysUserPageQueryVO::new);
|
return pageData.convert(SysUserPageQueryVO::new);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IPage<SysUserVO> pageInner(Page<SysUserEntity> page, SysUserPageQueryDTO sysUser) {
|
||||||
|
if (Objects.isNull(page)) {
|
||||||
|
throw new HoneycomException(ErrorType.PARAM_ERROR.getCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
LambdaQueryWrapper<SysUserEntity> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
if (!Objects.isNull(sysUser)) {
|
||||||
|
if (ObjectUtil.isNotNull(sysUser.getUserId())) {
|
||||||
|
queryWrapper.like(SysUserEntity::getUserId, sysUser.getUserId());
|
||||||
|
}
|
||||||
|
if (ObjectUtil.isNotNull(sysUser.getUserName())) {
|
||||||
|
queryWrapper.like(SysUserEntity::getUsername, sysUser.getUserName());
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(sysUser.getPhone())) {
|
||||||
|
queryWrapper.like(SysUserEntity::getPhone, sysUser.getPhone());
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(sysUser.getNickname())) {
|
||||||
|
queryWrapper.like(SysUserEntity::getNickname, sysUser.getNickname());
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(sysUser.getEmail())) {
|
||||||
|
queryWrapper.like(SysUserEntity::getEmail, sysUser.getEmail());
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(sysUser.getStatus())) {
|
||||||
|
queryWrapper.like(SysUserEntity::getStatus, sysUser.getStatus());
|
||||||
|
}
|
||||||
|
if (!Objects.isNull(sysUser.getStartCreateTime())) {
|
||||||
|
queryWrapper.ge(SysUserEntity::getCreateTime, sdf.format(new Date(sysUser.getStartCreateTime())));
|
||||||
|
}
|
||||||
|
if (!Objects.isNull(sysUser.getEndCreateTime())) {
|
||||||
|
queryWrapper.le(SysUserEntity::getCreateTime, sdf.format(new Date(sysUser.getEndCreateTime())));
|
||||||
|
}
|
||||||
|
if (!Objects.isNull(sysUser.getStartUpdateTime())) {
|
||||||
|
queryWrapper.ge(SysUserEntity::getUpdateTime, sdf.format(new Date(sysUser.getStartUpdateTime())));
|
||||||
|
}
|
||||||
|
if (!Objects.isNull(sysUser.getEndUpdateTime())) {
|
||||||
|
queryWrapper.le(SysUserEntity::getUpdateTime, sdf.format(new Date(sysUser.getEndUpdateTime())));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Page<SysUserEntity> pageData = this.page(page, queryWrapper);
|
||||||
|
if (Objects.isNull(pageData)) {
|
||||||
|
throw new HoneycomException(UserErrorType.QUERY_USER_PAGE_ERROR.getCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
return pageData.convert(SysUserVO::new);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void changeStatus(SysUserChangeStatusDTO sysUser) {
|
public void changeStatus(SysUserChangeStatusDTO sysUser) {
|
||||||
|
|||||||
Reference in New Issue
Block a user