案例推荐-发起推送 调用用户中心接口更改

This commit is contained in:
joshen@zcwytd.com
2023-09-12 10:32:04 +08:00
parent 0bfc7dd661
commit bac127a22b
5 changed files with 25 additions and 12 deletions

View File

@@ -34,10 +34,14 @@ public class ThirdApi {
@Value("${statApi.userdynamicList}") @Value("${statApi.userdynamicList}")
private String userdynamicListUrl; private String userdynamicListUrl;
@Value("${audience.getOrgUsers}")
private String searchOrgUsersUrl;
public List<UserInfoListVo> getAllUserList(UserListParam userListParam, String token) { public List<UserInfoListVo> getAllUserList(UserListParam userListParam, String token) {
log.info("获取用户:url:{}|params:{}|token:{}", searchUserListUrl, JSONUtil.toJsonStr(userListParam), token); log.info("获取用户:url:{}", searchOrgUsersUrl);
String resp = Optional.ofNullable(HttpRequest.post(searchUserListUrl).body(JSONUtil.toJsonStr(userListParam)).header("token", token).execute().body()).orElseThrow(() -> new RuntimeException("token校验失败")); log.info("获取用户:params:{}", JSONUtil.toJsonStr(userListParam));
String resp = Optional.ofNullable(HttpRequest.post(searchOrgUsersUrl).body(JSONUtil.toJsonStr(userListParam)).header("token", token).execute().body()).orElseThrow(() -> new RuntimeException("token校验失败"));
UserInfoListRootBean userInfoListRootBean1 = JSONUtil.toBean(resp, UserInfoListRootBean.class); UserInfoListRootBean userInfoListRootBean1 = JSONUtil.toBean(resp, UserInfoListRootBean.class);
log.info("userInfoListRootBean1 = " + userInfoListRootBean1); log.info("userInfoListRootBean1 = " + userInfoListRootBean1);
List<UserInfoListVo> list = userInfoListRootBean1.getResult().getList(); List<UserInfoListVo> list = userInfoListRootBean1.getResult().getList();
@@ -53,14 +57,14 @@ public class ThirdApi {
private void getAllUserList(UserListParam userListParam, String token, List<UserInfoListVo> userInfoLists) { private void getAllUserList(UserListParam userListParam, String token, List<UserInfoListVo> userInfoLists) {
log.info("获取用户2"); log.info("获取用户2");
String resp = Optional.ofNullable(HttpRequest.post(searchUserListUrl).body(JSONUtil.toJsonStr(userListParam)).header("token", token).execute().body()).orElseThrow(() -> new RuntimeException("token校验失败")); String resp = Optional.ofNullable(HttpRequest.post(searchOrgUsersUrl).body(JSONUtil.toJsonStr(userListParam)).header("token", token).execute().body()).orElseThrow(() -> new RuntimeException("token校验失败"));
log.info("获取用户返回值2 {}",resp); log.info("获取用户返回值2 {}",resp);
Opt.ofBlankAble(resp).map(t -> JSONUtil.toBean(t, UserInfoListRootBean.class).success()).map(UserInfoListRootBean::getResult).map(UserInfoListRootBean.ResultData::getList).stream().flatMap(Collection::stream).forEach(userInfoLists::add); Opt.ofBlankAble(resp).map(t -> JSONUtil.toBean(t, UserInfoListRootBean.class).success()).map(UserInfoListRootBean::getResult).map(UserInfoListRootBean.ResultData::getList).stream().flatMap(Collection::stream).forEach(userInfoLists::add);
} }
private void nextPage(UserListParam userListParam, String token, List<UserInfoListVo> userInfoLists, UserInfoListRootBean.ResultData t) { private void nextPage(UserListParam userListParam, String token, List<UserInfoListVo> userInfoLists, UserInfoListRootBean.ResultData t) {
log.info("获取用户--" + userListParam.getPageNo()); log.info("nextPage 获取用户--" + userListParam.getPageNo());
if (t.getTotalPage() > userListParam.getPageNo()) { if (t.getTotalPage() > userListParam.getPageNo()) {
REQUEST_TASK.submit(() -> IntStream.range(userListParam.getPageNo(), t.getTotalPage()).parallel().forEach(i -> getAllUserList(userListParam.withPageNo(i + 1), token, userInfoLists))).join(); REQUEST_TASK.submit(() -> IntStream.range(userListParam.getPageNo(), t.getTotalPage()).parallel().forEach(i -> getAllUserList(userListParam.withPageNo(i + 1), token, userInfoLists))).join();
} }

View File

@@ -5,8 +5,10 @@ import lombok.Data;
@Data @Data
public class UserInfoListVo { public class UserInfoListVo {
private String userId;
private long id; private String workNum;
private String userName;
/*private long id;
private String bandCode; private String bandCode;
private String bandDesc; private String bandDesc;
private Boolean deleted; private Boolean deleted;
@@ -38,6 +40,6 @@ public class UserInfoListVo {
private String userNo; private String userNo;
private String email; private String email;
private String avatar; private String avatar;
private String positionList; private String positionList;*/
} }

View File

@@ -82,15 +82,17 @@ public class CasesRecommendPushRecordServiceImpl implements ICasesRecommendPushR
} }
// 组织 // 组织
if (CollectionUtil.isNotEmpty(casesRecommendLaunch.getDeptIds())) { if (CollectionUtil.isNotEmpty(casesRecommendLaunch.getDeptIds())) {
log.info("--------开始查询组织下用户信息--------- 组织id: {}",casesRecommendLaunch.getDeptIds());
long tt = System.currentTimeMillis(); long tt = System.currentTimeMillis();
for (String orgId : casesRecommendLaunch.getDeptIds()) { for (String orgId : casesRecommendLaunch.getDeptIds()) {
UserListParam build = UserListParam.builder().departId(orgId).pageSize(100).build(); UserListParam build = UserListParam.builder().departId(orgId).pageSize(100).build();
List<UserInfoListVo> allUserList = thirdApi.getAllUserList(build, token); List<UserInfoListVo> allUserList = thirdApi.getAllUserList(build, token);
log.info("---------组织查询到数量 {}", allUserList.size());
log.info("---------组织查询 {}", allUserList); log.info("---------组织查询 {}", allUserList);
if (CollectionUtil.isNotEmpty(allUserList)) { if (CollectionUtil.isNotEmpty(allUserList)) {
for (UserInfoListVo userInfo : allUserList) { for (UserInfoListVo userInfo : allUserList) {
log.info("---------userInfo.getId() {}", userInfo.getId()); log.info("---------userInfo.getId() {}", userInfo.getUserId());
userIds.add(String.valueOf(userInfo.getId())); userIds.add(String.valueOf(userInfo.getUserId()));
} }
} }
} }

View File

@@ -78,4 +78,6 @@ xboe.elasticsearch.server.password=Boe@es123
xboe.email.url=https://u-pre.boe.com/api/b1/email/send xboe.email.url=https://u-pre.boe.com/api/b1/email/send
xboe.email.from=boeu_learning@boe.com.cn xboe.email.from=boeu_learning@boe.com.cn
xboe.email.user= xboe.email.user=
xboe.email.security= xboe.email.security=
boe.domain=https://u-pre.boe.com

View File

@@ -1,4 +1,5 @@
spring.profiles.active=@profileActive@ spring.profiles.active= test
#@profileActive@
spring.application.name=boe-server-all spring.application.name=boe-server-all
server.port=9090 server.port=9090
server.servlet.session.timeout=30m server.servlet.session.timeout=30m
@@ -63,4 +64,6 @@ orgTree.orgChildTreeList=${boe.domain}/userbasic/org/childOrgs
userBasic.searchUserList=${boe.domain}/userbasic/user/list userBasic.searchUserList=${boe.domain}/userbasic/user/list
audience.usersByAudienceList=${boe.domain}/userbasic/audience/memberList audience.usersByAudienceList=${boe.domain}/userbasic/audience/memberList
#获取用户学习课程数据 #获取用户学习课程数据
statApi.userdynamicList=${boe.domain}/statApi/xboe/m/stat/userdynamic/list statApi.userdynamicList=${boe.domain}/statApi/xboe/m/stat/userdynamic/list
#用户中心根据组织id查询用户信息接口递归子组织
audience.getOrgUsers=${boe.domain}/userbasic/user/getOrgUsers