From 9ffa4aac7e3ae6b268dbc3567a0749a9898c3708 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期四, 11 一月 2024 18:09:09 +0800 Subject: [PATCH] ERP接口 --- server/dmvisit_service/src/main/java/com/doumee/core/erp/ErpTool.java | 169 +++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 111 insertions(+), 58 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 b92f758..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,5 +1,6 @@ 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; @@ -14,47 +15,81 @@ 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){ - + public List<ErpOrgListResponse> getErpOrgList(String url, OrgListRequest param){ 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;//杩樻湁涓嬩竴椤� + 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 list; } @@ -64,31 +99,37 @@ * @param param * @return */ - public static List<ErpUserListResponse> getErpUserList(String url, UserListRequest param){ + public List<ErpUserListResponse> getErpUserList(String url, UserListRequest param){ 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;//杩樻湁涓嬩竴椤� + 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++; } - page++; } } + }catch (Exception e){ + throw e; + }finally { + saveInterfaceLog(param,url, JSONArray.toJSONString(list),Constants.ZERO); } return list; @@ -100,20 +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<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()); + 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; } @@ -124,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