From 7da512973b40df83aa48fa9b57b4f365466e253b Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 10 一月 2024 14:38:11 +0800
Subject: [PATCH] 整理
---
server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java | 86 ++++++++++++++++++++++++++++++++----------
1 files changed, 65 insertions(+), 21 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java b/server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java
index c7a57ca..b92f758 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java
@@ -2,6 +2,7 @@
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
+import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.erp.model.openapi.request.erp.ApproveAddRequest;
import com.doumee.core.erp.model.openapi.request.erp.OrgListRequest;
import com.doumee.core.erp.model.openapi.request.erp.UserFailRequest;
@@ -10,9 +11,15 @@
import com.doumee.core.erp.model.openapi.response.erp.ERPApiResponse;
import com.doumee.core.erp.model.openapi.response.erp.ErpOrgListResponse;
import com.doumee.core.erp.model.openapi.response.erp.ErpUserListResponse;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.HttpsUtil;
+import com.doumee.dao.business.model.Member;
+import com.github.pagehelper.PageInfo;
import org.apache.commons.lang3.StringUtils;
+import java.util.ArrayList;
import java.util.List;
public class ErpTool {
@@ -23,17 +30,32 @@
* @return
*/
public static List<ErpOrgListResponse> getErpOrgList(String url, OrgListRequest param){
- String result = HttpsUtil.postJson(url, JSONObject.toJSONString(param));
- if(StringUtils.isNotBlank(result)){
- TypeReference typeReference =
- new TypeReference<ERPApiResponse<List<ErpOrgListResponse>>>(){};
- ERPApiResponse<List<ErpOrgListResponse>> response = JSONObject.parseObject(result, typeReference.getType());
- if(response!=null){
- return response.getData();
- }
- }
- return null;
+ List<ErpOrgListResponse> list = new ArrayList<>();
+ int page =1;
+ int pageSize = 100;
+ boolean hasLast = true;
+ while (hasLast){
+ hasLast = false;
+ PageWrap<OrgListRequest> pageWrap = new PageWrap<>();
+ pageWrap.setModel(param);
+ pageWrap.setPage(page);
+ pageWrap.setCapacity(pageSize);
+ String result = HttpsUtil.postJson(url, JSONObject.toJSONString(pageWrap));
+ if(StringUtils.isNotBlank(result)){
+ TypeReference typeReference =
+ new TypeReference<ERPApiResponse<PageData<ErpOrgListResponse>>>(){};
+ ERPApiResponse<PageData<ErpOrgListResponse>> response = JSONObject.parseObject(result, typeReference.getType());
+ if(response!=null && response.getData()!=null&& response.getData().getRecords()!=null){
+ list.addAll(response.getData().getRecords());
+ if(page*pageSize < response.getData().getTotal() ){
+ hasLast =true;//杩樻湁涓嬩竴椤�
+ }
+ page++;
+ }
+ }
+ }
+ return list;
}
/**
@@ -43,16 +65,33 @@
* @return
*/
public static List<ErpUserListResponse> getErpUserList(String url, UserListRequest param){
- String result = HttpsUtil.postJson(url, JSONObject.toJSONString(param));
- if(StringUtils.isNotBlank(result)){
- TypeReference typeReference =
- new TypeReference<ERPApiResponse<List<ErpUserListResponse>>>(){};
- ERPApiResponse<List<ErpUserListResponse>> response = JSONObject.parseObject(result, typeReference.getType());
- if(response!=null){
- return response.getData();
+
+ List<ErpUserListResponse> list = new ArrayList<>();
+ int page =1;
+ int pageSize = 100;
+ boolean hasLast = true;
+ while (hasLast){
+ hasLast = false;
+ PageWrap<UserListRequest> pageWrap = new PageWrap<>();
+ pageWrap.setModel(param);
+ pageWrap.setPage(page);
+ pageWrap.setCapacity(pageSize);
+ String result = HttpsUtil.postJson(url, JSONObject.toJSONString(pageWrap));
+ if(StringUtils.isNotBlank(result)){
+ TypeReference typeReference =
+ new TypeReference<ERPApiResponse<PageData<ErpUserListResponse>>>(){};
+ ERPApiResponse<PageData <ErpUserListResponse>> response = JSONObject.parseObject(result, typeReference.getType());
+ if(response!=null && response.getData()!=null && response.getData().getRecords()!=null){
+ list.addAll(response.getData().getRecords());
+ if(pageSize*page < response.getData().getTotal() ){
+ hasLast =false;//杩樻湁涓嬩竴椤�
+ }
+ page++;
+ }
}
}
- return null;
+ return list;
+
}
/**
@@ -62,13 +101,18 @@
* @return
*/
public static ApproveInfoResponse submitApprove(String url, ApproveAddRequest param){
+ System.out.println(JSONObject.toJSONString(param));
String result = HttpsUtil.postJson(url, JSONObject.toJSONString(param));
if(StringUtils.isNotBlank(result)){
TypeReference typeReference =
- new TypeReference<ERPApiResponse<ApproveInfoResponse>>(){};
- ERPApiResponse<ApproveInfoResponse> response = JSONObject.parseObject(result, typeReference.getType());
+ new TypeReference<ERPApiResponse<String>>(){};
+ ERPApiResponse<String> response = JSONObject.parseObject(result, typeReference.getType());
if(response!=null && response.isSuccess()){
- return response.getData();
+ ApproveInfoResponse approveInfoResponse = new ApproveInfoResponse();
+ approveInfoResponse.setId(response.getData());
+ return approveInfoResponse;
+ }else if(response!=null && !response.isSuccess()){
+ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),response.getMessage());
}
}
return null;
--
Gitblit v1.9.3