Commit 65f6bacf by 刘鑫

feat: 提取公共方法根据单个工程师hrId保存工程师信息

1 parent a6acb7a8
......@@ -192,17 +192,29 @@ public class BeanRemoteServiceImpl {
for (BeanAccountInfo account : userlist) {
log.info("开始同步人员信息{}", JsonUtil.toJson(account));
BeanR<BeanUserDetail> beanUserDetailBeanR = beanRemoteService.userDetail(getAccessToken(), account.getHrId());
saveEngineerInfoByHrId(departId, account.getHrId(), account.getUserName());
}
}
/**
* 根据hrId 获取BEAN自有账户(工程师)详情,并存储工程师基本信息和业务信息, (会自动忽略不存在工号的账户信息- 库里如果已有相关账户会被覆盖)
*
* @param departId 部门ID, (这里只能传分部)
* @param hrId bean 用户列表接口提供的 hrId
* @param userName 用户名
*/
public void saveEngineerInfoByHrId(String departId, String hrId, String userName) {
BeanR<BeanUserDetail> beanUserDetailBeanR = beanRemoteService.userDetail(getAccessToken(), hrId);
log.info("[查询BEAN用户详情]【/api/openapi/user/queryDetail】返回值-------------------->{}", JsonUtil.toJson(beanUserDetailBeanR));
BeanUserDetail userDetailInfo = beanUserDetailBeanR.getData();
if (!beanUserDetailBeanR.getSuccess() || Objects.isNull(userDetailInfo)) {
log.error("用户详情列表未获取到用户:{}-{}的详细信息 , 错误信息:{}", account.getUserName(), account.getCenterId(), beanUserDetailBeanR.getMessage());
continue;
log.error("用户详情列表未获取到用户:{}-{}的详细信息 , 错误信息:{}", userName, hrId, beanUserDetailBeanR.getMessage());
return;
}
String engineerCode = userDetailInfo.getWorkNo();
if (StringUtils.isBlank(engineerCode)) {
log.warn("分站:{}工程师{}没有工号", departId, userDetailInfo.getUsername());
continue;
return;
}
final Address address = userDetailInfo.getAddress();
//fixme 正式同步需移除当前逻辑
......@@ -212,9 +224,10 @@ public class BeanRemoteServiceImpl {
engineerInfoDao.flush();
//保存业务属性信息--常用出发地信息
EngineerBusinessEntity engineerBusiness = getEngineerBusiness(engineerCode, address);
if (engineerBusiness == null){ continue;}
engineerBusinessDao.save(engineerBusiness);
if (engineerBusiness == null) {
return;
}
engineerBusinessDao.save(engineerBusiness);
}
private EngineerInfoEntity getEngineerInfoEntity(String departId, String engineerCode, BeanUserDetail userDetailInfo, Address address) {
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!