接口替换

This commit is contained in:
hui
2024-12-09 18:53:14 +08:00
parent cc92edd1d8
commit 8c494c3c04

View File

@@ -5,14 +5,20 @@ import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.lang.Opt;
import cn.hutool.http.HttpRequest;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
import com.boe.feign.api.courseweb.entity.ExamTestDto;
import com.boe.feign.api.courseweb.entity.ProjectStudyDto;
import com.boe.feign.api.courseweb.remote.OffCourseRemoteClient;
import com.boe.feign.api.courseweb.remote.ProjectAdminRemoteClient;
import com.boe.feign.api.courseweb.remote.ProjectRemoteClient;
import com.boe.feign.api.infrastructure.entity.CommonSearchVo;
import com.boe.feign.api.infrastructure.entity.Dict;
import com.boe.feign.api.infrastructure.remote.DictRemoteClient;
import com.boe.feign.api.usercenter.entity.*;
import com.boe.feign.api.usercenter.remote.UserRemoteClient;
import com.boe.feign.api.usercenter.reps.Response;
import com.xboe.api.vo.*;
import com.xboe.module.course.vo.StudyCourseVo;
import com.xboe.module.course.vo.TeacherInfoVo;
import com.xboe.module.course.vo.TeacherVo;
import com.xboe.module.dict.entity.DictDto;
import com.xboe.module.exam.entity.ExamTest;
@@ -57,17 +63,6 @@ public class ThirdApi {
@Autowired
UserDao userDao;
@Value("${infrasApi.dict}")
private String infarasApiUrl;
@Value("${audience.getOrgUsers}")
private String searchOrgUsersUrl;
@Value("${userBasic.getTeacherIds}")
private String getTeacherIds;
@Value("${userBasic.getUserBasicInfo}")
private String getUserBasicInfo;
@Resource
private ProjectAdminRemoteClient projectAdminRemoteClient;
@@ -78,10 +73,21 @@ public class ThirdApi {
@Resource
private ProjectRemoteClient projectRemoteClient;
@Resource
private DictRemoteClient dictRemoteClient;
@Resource
private UserRemoteClient userRemoteClient;
//获取例外人员的id
public List<String> getUserId() {
String responseBody = Optional.ofNullable(HttpRequest.get(infarasApiUrl + "?pid=316&type=1").execute() //prod 316
.body()).orElseThrow(() -> new RuntimeException("token校验失败"));
// String responseBody = Optional.ofNullable(HttpRequest.get(infarasApiUrl + "?pid=316&type=1").execute() //prod 316
// .body()).orElseThrow(() -> new RuntimeException("token校验失败"));
CommonSearchVo searcher = new CommonSearchVo();
searcher.setPid(316L);
searcher.setType(1);
List<Dict> dictList = dictRemoteClient.getList(searcher);
String responseBody = JSON.toJSONString(dictList);
log.info("正在获取例外人员工号 responseBody = " + responseBody);
try {
Optional<DictResult> dictResultOptional = Optional.of(responseBody)
@@ -111,35 +117,49 @@ public class ThirdApi {
//获取离职教师信息
public List<TeacherVo> getTeacherInfo(List<String> teacherIds, String token) {
TeacherInfoVo teacherInfoVo = new TeacherInfoVo();
teacherInfoVo.setTeacherIds(teacherIds);
// TeacherInfoVo teacherInfoVo = new TeacherInfoVo();
// teacherInfoVo.setTeacherIds(teacherIds);
log.info("获取离职教师信息");
log.info(JSONUtil.toJsonStr(teacherInfoVo));
String resp = Optional.ofNullable(
HttpRequest.post(getTeacherIds).body(JSONUtil.toJsonStr(teacherInfoVo)).header("token", token).execute()
.body()).orElseThrow(() -> new RuntimeException("token校验失败"));
// log.info(JSONUtil.toJsonStr(teacherInfoVo));
com.boe.feign.api.usercenter.entity.TeacherInfoVo teacherInfoFeignVo = new com.boe.feign.api.usercenter.entity.TeacherInfoVo();
teacherInfoFeignVo.setTeacherIds(teacherIds);
Response<List<com.boe.feign.api.usercenter.entity.TeacherVo>> response = userRemoteClient.getTeacherInfo(teacherInfoFeignVo);
String resp = JSON.toJSONString(response);
// String resp = Optional.ofNullable(
// HttpRequest.post(getTeacherIds).body(JSONUtil.toJsonStr(teacherInfoVo)).header("token", token).execute()
// .body()).orElseThrow(() -> new RuntimeException("token校验失败"));
GetTeacherIdsResult getTeacherIdsResult = JSONUtil.toBean(resp, GetTeacherIdsResult.class);
log.info("getTeacherIdsResult = " + getTeacherIdsResult.getResult());
return getTeacherIdsResult.getResult();
}
public List<TeacherVo> getTeacherInfoByCode(List<String> teacherCode, String token) {
TeacherInfoVo teacherInfoVo = new TeacherInfoVo();
teacherInfoVo.setTeacherCode(teacherCode);
// TeacherInfoVo teacherInfoVo = new TeacherInfoVo();
// teacherInfoVo.setTeacherCode(teacherCode);
log.info("获取离职教师信息");
log.info("参数为" + JSONUtil.toJsonStr(teacherCode));
String resp = Optional.ofNullable(
HttpRequest.post(getTeacherIds).body(JSONUtil.toJsonStr(teacherInfoVo)).header("token", token).execute()
.body()).orElseThrow(() -> new RuntimeException("token校验失败"));
// log.info("参数为" + JSONUtil.toJsonStr(teacherCode));
com.boe.feign.api.usercenter.entity.TeacherInfoVo teacherInfoFeignVo = new com.boe.feign.api.usercenter.entity.TeacherInfoVo();
teacherInfoFeignVo.setTeacherCode(teacherCode);
Response<List<com.boe.feign.api.usercenter.entity.TeacherVo>> response = userRemoteClient.getTeacherInfo(teacherInfoFeignVo);
String resp = JSON.toJSONString(response);
// String resp = Optional.ofNullable(
// HttpRequest.post(getTeacherIds).body(JSONUtil.toJsonStr(teacherInfoVo)).header("token", token).execute()
// .body()).orElseThrow(() -> new RuntimeException("token校验失败"));
GetTeacherIdsResult getTeacherIdsResult = JSONUtil.toBean(resp, GetTeacherIdsResult.class);
log.info("getTeacherIdsResult = " + getTeacherIdsResult);
return getTeacherIdsResult.getResult();
}
public List<UserInfoListVo> getAllUserList(UserListParam userListParam, String token) {
log.info("获取用户:url:{}", searchOrgUsersUrl);
// log.info("获取用户:url:{}", searchOrgUsersUrl);
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校验失败"));
UserQueryDto userQueryDto = new UserQueryDto();
userQueryDto.setOrganizationId(userListParam.getOrganizationId());
userQueryDto.setPageNo(userListParam.getPageNo());
userQueryDto.setPageSize(userListParam.getPageSize());
Response<PageResult<UserOrgSearchVo>> response = userRemoteClient.getOrgUserForRpc(userQueryDto);
String resp = JSON.toJSONString(response);
// 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);
log.info("userInfoListRootBean1 = " + userInfoListRootBean1);
List<UserInfoListVo> list = userInfoListRootBean1.getResult().getList();
@@ -155,7 +175,13 @@ public class ThirdApi {
private void getAllUserList(UserListParam userListParam, String token, List<UserInfoListVo> userInfoLists) {
log.info("获取用户2");
String resp = Optional.ofNullable(HttpRequest.post(searchOrgUsersUrl).body(JSONUtil.toJsonStr(userListParam)).header("token", token).execute().body()).orElseThrow(() -> new RuntimeException("token校验失败"));
UserQueryDto userQueryDto = new UserQueryDto();
userQueryDto.setOrganizationId(userListParam.getOrganizationId());
userQueryDto.setPageNo(userListParam.getPageNo());
userQueryDto.setPageSize(userListParam.getPageSize());
Response<PageResult<UserOrgSearchVo>> response = userRemoteClient.getOrgUserForRpc(userQueryDto);
String resp = JSON.toJSONString(response);
// String resp = Optional.ofNullable(HttpRequest.post(searchOrgUsersUrl).body(JSONUtil.toJsonStr(userListParam)).header("token", token).execute().body()).orElseThrow(() -> new RuntimeException("token校验失败"));
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);
}
@@ -306,14 +332,13 @@ public class ThirdApi {
}
// 将userIds列表转换为逗号分隔的字符串
String userIdsStr = userIds.stream()
.collect(Collectors.joining(","));
String url = getUserBasicInfo + "?userIds=" + userIdsStr;
String respStr = Optional.ofNullable(HttpRequest
.get(url)
.header("token", token)
.execute().body()).orElseThrow(() -> new RuntimeException("用户中心用户数据获取失败"));
// String userIdsStr = userIds.stream().collect(Collectors.joining(","));
// String url = getUserBasicInfo + "?userIds=" + userIdsStr;
UserBasicInfoDto userBasicInfoDto = new UserBasicInfoDto();
userBasicInfoDto.setUserIds(userIds);
Response<List<UserAccount>> response = userRemoteClient.getUserBasicInfo(userBasicInfoDto);
String respStr = JSON.toJSONString(response);
// String respStr = Optional.ofNullable(HttpRequest .get(url) .header("token", token) .execute().body()).orElseThrow(() -> new RuntimeException("用户中心用户数据获取失败"));
UserBasicInfoResult userBasicInfoResult = JSONUtil.parseObj(respStr).toBean(UserBasicInfoResult.class);
List<UserBasicInfo> basicInfos = userBasicInfoResult.getResult();