You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
332 lines
13 KiB
Java
332 lines
13 KiB
Java
package com.glxp.api.http.sync;
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.TypeReference;
|
|
import com.glxp.api.common.res.BaseResponse;
|
|
import com.glxp.api.common.util.ResultVOUtils;
|
|
import com.glxp.api.entity.sync.BasicExportStatusEntity;
|
|
import com.glxp.api.entity.sync.IOOrderStatusEntity;
|
|
import com.glxp.api.entity.system.SyncDataSetEntity;
|
|
import com.glxp.api.req.inout.ReviewFinishRequest;
|
|
import com.glxp.api.req.inout.ReviewSpmsRequest;
|
|
import com.glxp.api.req.sync.BasicExportStatusRequest;
|
|
import com.glxp.api.req.sync.OrderStatusFilterRequest;
|
|
import com.glxp.api.res.PageSimpleResponse;
|
|
import com.glxp.api.res.sync.*;
|
|
import com.glxp.api.service.sync.SyncDataSetService;
|
|
import com.glxp.api.util.OkHttpCli;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
import javax.annotation.Resource;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
@Service
|
|
public class SpGetHttpClient {
|
|
|
|
@Resource
|
|
private OkHttpCli okHttpCli;
|
|
|
|
@Resource
|
|
SyncDataSetService syncDataSetService;
|
|
|
|
@Value("${API_KEY}")
|
|
private String apiKey;
|
|
@Value("${API_SECRET}")
|
|
private String apiSecret;
|
|
|
|
public String getIpUrl() {
|
|
SyncDataSetEntity syncDataSetEntity = syncDataSetService.findSet();
|
|
return syncDataSetEntity.getSyncIp();
|
|
}
|
|
|
|
public String[] buildHeader() {
|
|
String[] headers = {"api_key", apiKey, "secret_key", apiSecret};
|
|
return headers;
|
|
}
|
|
|
|
|
|
//上传扫码单据
|
|
public BaseResponse<String> postAllOrder(SpsSyncOrderResponse spsSyncOrderResponse) {
|
|
String json = JSONUtil.toJsonStr(spsSyncOrderResponse);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/orderApi/sps/sync/order/upload", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
//上传业务单据
|
|
public BaseResponse<String> postAllBusOrder(SpsSyncBusOrderResponse spsSyncOrderResponse) {
|
|
String json = JSONUtil.toJsonStr(spsSyncOrderResponse);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/busOrderApi/sps/sync/busOrder/upload", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
|
|
//上传单据类型
|
|
public BaseResponse<String> postAllBusType(SpsSyncBusResponse spsSyncBusResponse) {
|
|
String json = JSONUtil.toJsonStr(spsSyncBusResponse);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/sps/sync/busType/upload", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
|
|
//上传单据类型
|
|
public BaseResponse<String> postAllUser(SpsSyncDataResponse syncDataResponse) {
|
|
String json = JSONUtil.toJsonStr(syncDataResponse);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/sps/sync/allUser/upload", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
|
|
//获取自助平台验收单据---直连接口
|
|
public BaseResponse<SpsSyncOrderResponse> getReviewOrder(ReviewSpmsRequest reviewSpmsRequest) {
|
|
String json = JSONUtil.toJsonStr(reviewSpmsRequest);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/udiwms/order/getReviews", json, buildHeader());
|
|
BaseResponse<SpsSyncOrderResponse> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<SpsSyncOrderResponse>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
//验收自助平台单据--直连接口
|
|
public BaseResponse<String> reviewOrder(ReviewFinishRequest reviewFinishRequest) {
|
|
String json = JSONUtil.toJsonStr(reviewFinishRequest);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/spms/inout/order/web/updateStatus", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
|
|
public BaseResponse<PageSimpleResponse<IOOrderStatusEntity>> getOrderStatus() {
|
|
Map<String, String> paramMap = new HashMap<>(16);
|
|
paramMap.put("status", 1 + "");
|
|
String response = okHttpCli.doGet(getIpUrl() + "/spms/inout/order/status", paramMap, buildHeader());
|
|
try {
|
|
BaseResponse<PageSimpleResponse<IOOrderStatusEntity>> data =
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse<PageSimpleResponse<IOOrderStatusEntity>>>() {
|
|
});
|
|
return data;
|
|
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
return ResultVOUtils.error(500, "下载失败!");
|
|
}
|
|
}
|
|
|
|
|
|
public BaseResponse<List<DlOrderResponse>> getOrders(String orderId) {
|
|
Map<String, String> paramMap = new HashMap<>(16);
|
|
paramMap.put("orderId", orderId);
|
|
String response = okHttpCli.doGet(getIpUrl() + "/spms/inout/order/dlByStatus", paramMap, buildHeader());
|
|
try {
|
|
BaseResponse<List<DlOrderResponse>> data =
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse<List<DlOrderResponse>>>() {
|
|
});
|
|
return data;
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
return ResultVOUtils.error(500, "下载失败!");
|
|
}
|
|
}
|
|
|
|
|
|
public BaseResponse<String> postOrder(String orderId) {
|
|
OrderStatusFilterRequest orderStatusFilterRequest = new OrderStatusFilterRequest();
|
|
orderStatusFilterRequest.setOrderId(orderId);
|
|
orderStatusFilterRequest.setStatus(2);
|
|
String json = JSONUtil.toJsonStr(orderStatusFilterRequest);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/spms/inout/order/updateStatus", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
|
|
public BaseResponse<List<BasicExportStatusEntity>> getBasicStatus(String type) {
|
|
Map<String, String> paramMap = new HashMap<>(16);
|
|
paramMap.put("type", type);
|
|
paramMap.put("status", "3");
|
|
String response = okHttpCli.doGet(getIpUrl() + "/spssync/basic/udiinfo/getStatus", paramMap, buildHeader());
|
|
try {
|
|
BaseResponse<List<BasicExportStatusEntity>> data =
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse<List<BasicExportStatusEntity>>>() {
|
|
});
|
|
return data;
|
|
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
return ResultVOUtils.error(500, "下载失败!");
|
|
}
|
|
}
|
|
|
|
public BaseResponse<String> testConnect() {
|
|
String response = okHttpCli.doGet(getIpUrl() + "/sps/sync/connect/test");
|
|
try {
|
|
BaseResponse<String> data =
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return data;
|
|
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
return ResultVOUtils.error(500, "网络错误!");
|
|
}
|
|
}
|
|
|
|
public BaseResponse<List<BasicExportStatusEntity>> getBasicStatus(BasicExportStatusRequest basicExportStatusRequest) {
|
|
Map<String, String> paramMap = new HashMap<>(16);
|
|
if (basicExportStatusRequest.getType() != null)
|
|
paramMap.put("type", basicExportStatusRequest.getType() + "");
|
|
if (basicExportStatusRequest.getStatus() != null)
|
|
paramMap.put("status", basicExportStatusRequest.getStatus() + "");
|
|
if (basicExportStatusRequest.getId() != null)
|
|
paramMap.put("id", basicExportStatusRequest.getId());
|
|
if (basicExportStatusRequest.getScheduleType() != null)
|
|
paramMap.put("scheduleType", basicExportStatusRequest.getScheduleType() + "");
|
|
String response = okHttpCli.doGet(getIpUrl() + "/spssync/basic/udiinfo/getStatus", paramMap, buildHeader());
|
|
try {
|
|
BaseResponse<List<BasicExportStatusEntity>> data =
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse<List<BasicExportStatusEntity>>>() {
|
|
});
|
|
return data;
|
|
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
return ResultVOUtils.error(500, "下载失败!");
|
|
}
|
|
}
|
|
|
|
|
|
public String getBasicData(String id, String type) {
|
|
BasicExportStatusRequest basicExportStatusRequest = new BasicExportStatusRequest();
|
|
basicExportStatusRequest.setId(id);
|
|
basicExportStatusRequest.setType(type);
|
|
String json = JSONUtil.toJsonStr(basicExportStatusRequest);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/spssync/basic/udiinfo/downloadByStatus", json, buildHeader());
|
|
return result;
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseResponse<String> postBasicStatus(String id) {
|
|
BasicExportStatusRequest basicStatusFilterRequest = new BasicExportStatusRequest();
|
|
basicStatusFilterRequest.setId(id);
|
|
String json = JSONUtil.toJsonStr(basicStatusFilterRequest);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/spssync/basic/udiinfo/deleteByStatus", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
/**
|
|
* 拉取UDI自助平台基础数据
|
|
*
|
|
* @return
|
|
*/
|
|
public String pullBasicData() {
|
|
|
|
String result = okHttpCli.doGet(getIpUrl() + "/sps/sync/basicData", null, buildHeader());
|
|
return result;
|
|
|
|
}
|
|
|
|
/**
|
|
* 拉取UDI自助平台其他数据
|
|
*
|
|
* @return
|
|
*/
|
|
public String pullOtherData() {
|
|
|
|
String result = okHttpCli.doGet(getIpUrl() + "/sps/sync/otherData", null, buildHeader());
|
|
return result;
|
|
|
|
}
|
|
|
|
public void finishTask(String id) {
|
|
BasicExportStatusRequest basicExportStatusRequest = new BasicExportStatusRequest();
|
|
basicExportStatusRequest.setId(id);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/spssync/basic/udiinfo/finishTask"
|
|
, JSONUtil.toJsonStr(basicExportStatusRequest), buildHeader());
|
|
|
|
}
|
|
|
|
/**
|
|
* 上传第三方基础信息数据
|
|
*
|
|
* @param spsSyncThrDataResponse
|
|
* @return
|
|
*/
|
|
public BaseResponse<String> postThrData(SpsSyncThrDataResponse spsSyncThrDataResponse) {
|
|
String json = JSONUtil.toJsonStr(spsSyncThrDataResponse);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/sps/sync/thrData/upload", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
/**
|
|
* 上传第三方产品信息数据
|
|
*
|
|
* @param spsSyncThrProductsResponse
|
|
* @return
|
|
*/
|
|
public BaseResponse<String> postThrProducts(SpsSyncThrProductsResponse spsSyncThrProductsResponse) {
|
|
String json = JSONUtil.toJsonStr(spsSyncThrProductsResponse);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/sps/sync/thrData/products/upload", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
/**
|
|
* 上传系统设置数据
|
|
*
|
|
* @param spsSyncSysSettingResponse
|
|
* @return
|
|
*/
|
|
public BaseResponse<String> postSysSetting(SpsSyncSysSettingResponse spsSyncSysSettingResponse) {
|
|
String json = JSONUtil.toJsonStr(spsSyncSysSettingResponse);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/sps/sync/sys/setting", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
|
|
/**
|
|
* 上传模板文件到中继服务
|
|
*
|
|
* @param fileNameList
|
|
* @return
|
|
*/
|
|
public BaseResponse<String> postTemplateFile(List<Map<String, String>> fileNameList) {
|
|
String json = JSONUtil.toJsonStr(fileNameList);
|
|
String result = okHttpCli.doPostJson(getIpUrl() + "/spssync/file/download", json, buildHeader());
|
|
BaseResponse<String> response =
|
|
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
|
|
});
|
|
return response;
|
|
}
|
|
}
|