From 78ce920fa8a3f06cf40ee936b7b33c457206ecb6 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 28 二月 2024 10:51:57 +0800
Subject: [PATCH] 整理
---
server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java | 163 +++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 130 insertions(+), 33 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..9ccafcb 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
@@ -1,7 +1,9 @@
package com.doumee.core.erp;
+import com.alibaba.fastjson.JSONArray;
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,30 +12,85 @@
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.Constants;
import com.doumee.core.utils.HttpsUtil;
+import com.doumee.dao.business.model.InterfaceLog;
+import com.doumee.dao.business.model.Member;
+import com.doumee.service.business.InterfaceLogService;
+import com.github.pagehelper.PageInfo;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.Date;
import java.util.List;
+@Service
public class ErpTool {
+
+ @Autowired
+ private InterfaceLogService interfaceLogService;
+
+ public void saveInterfaceLog(Object param, String path,String result,Integer type) {
+ InterfaceLog interfaceLog=new InterfaceLog();
+ interfaceLog.setType(type);
+ interfaceLog.setCreateDate(new Date());
+ interfaceLog.setIsdeleted(Constants.ZERO);
+ if(param!=null){
+ interfaceLog.setRequest(JSONObject.toJSONString(param));
+ }
+ interfaceLog.setPlat(Constants.ONE);
+ interfaceLog.setRepose(result);
+ interfaceLog.setName(path);
+ interfaceLog.setUrl(path);
+ interfaceLogService.create(interfaceLog);
+ }
+
+
+
/**
* 鍚屾缁勭粐
* @param url
* @param param
* @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();
+ public List<ErpOrgListResponse> getErpOrgList(String url, OrgListRequest param){
+ List<ErpOrgListResponse> list = new ArrayList<>();
+ try {
+ 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++;
+ }
+ }
}
+ }catch (Exception e){
+ throw e;
+ }finally {
+ saveInterfaceLog(param,url,JSONArray.toJSONString(list),Constants.ZERO);
}
- return null;
-
+ return list;
}
/**
@@ -42,17 +99,40 @@
* @param param
* @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();
+ public List<ErpUserListResponse> getErpUserList(String url, UserListRequest param){
+
+ List<ErpUserListResponse> list = new ArrayList<>();
+ try{
+ 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++;
+ }
+ }
}
+ }catch (Exception e){
+ throw e;
+ }finally {
+ saveInterfaceLog(param,url, JSONArray.toJSONString(list),Constants.ZERO);
}
- return null;
+ return list;
+
}
/**
@@ -61,15 +141,26 @@
* @param param
* @return
*/
- public static ApproveInfoResponse submitApprove(String url, ApproveAddRequest param){
+ public 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());
- if(response!=null && response.isSuccess()){
- return response.getData();
+ try{
+ if(StringUtils.isNotBlank(result)){
+ TypeReference typeReference =
+ new TypeReference<ERPApiResponse<String>>(){};
+ ERPApiResponse<String> response = JSONObject.parseObject(result, typeReference.getType());
+ if(response!=null && response.isSuccess()){
+ 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());
+ }
}
+ }catch (Exception e){
+ throw e;
+ }finally {
+ saveInterfaceLog(param,url,JSONObject.toJSONString(result),Constants.ZERO);
}
return null;
}
@@ -80,15 +171,21 @@
* @param param
* @return
*/
- public static ERPApiResponse noticeUserStatus(String url, UserFailRequest param){
+ public ERPApiResponse noticeUserStatus(String url, UserFailRequest param){
String result = HttpsUtil.postJson(url, JSONObject.toJSONString(param));
- if(StringUtils.isNotBlank(result)){
- TypeReference typeReference =
- new TypeReference<ERPApiResponse>(){};
- ERPApiResponse response = JSONObject.parseObject(result, typeReference.getType());
- if(response!=null){
- return response;
+ try{
+ if(StringUtils.isNotBlank(result)){
+ TypeReference typeReference =
+ new TypeReference<ERPApiResponse>(){};
+ ERPApiResponse response = JSONObject.parseObject(result, typeReference.getType());
+ if(response!=null){
+ return response;
+ }
}
+ }catch (Exception e){
+ throw e;
+ }finally {
+ saveInterfaceLog(param,url,JSONObject.toJSONString(result),Constants.ZERO);
}
return null;
}
--
Gitblit v1.9.3