From 8c494c3c047d35b00dab7e5644cbced0e7f8cdbe Mon Sep 17 00:00:00 2001 From: hui Date: Mon, 9 Dec 2024 18:53:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=9B=BF=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/xboe/api/ThirdApi.java | 99 ++++++++++++------- 1 file changed, 62 insertions(+), 37 deletions(-) diff --git a/servers/boe-server-all/src/main/java/com/xboe/api/ThirdApi.java b/servers/boe-server-all/src/main/java/com/xboe/api/ThirdApi.java index 8897ed04..3fae5d76 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/api/ThirdApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/api/ThirdApi.java @@ -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 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 dictList = dictRemoteClient.getList(searcher); + String responseBody = JSON.toJSONString(dictList); log.info("正在获取例外人员工号 responseBody = " + responseBody); try { Optional dictResultOptional = Optional.of(responseBody) @@ -111,35 +117,49 @@ public class ThirdApi { //获取离职教师信息 public List getTeacherInfo(List 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> 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 getTeacherInfoByCode(List 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> 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 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> 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 list = userInfoListRootBean1.getResult().getList(); @@ -155,7 +175,13 @@ public class ThirdApi { private void getAllUserList(UserListParam userListParam, String token, List 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> 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> 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 basicInfos = userBasicInfoResult.getResult();