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.
udi-wms-java/src/main/java/com/glxp/api/http/ErpInvClient.java

131 lines
6.6 KiB
Java

package com.glxp.api.http;
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.constant.ConstantType;
import com.glxp.api.entity.thrsys.ThrSystemEntity;
import com.glxp.api.req.inv.FilterInvProductRequest;
import com.glxp.api.req.thrsys.ThrOnhandRequest;
import com.glxp.api.req.thrsys.UdiwmsWarehouseRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.inv.ThrInvResultResponse;
import com.glxp.api.res.thrsys.ThrInvProductResponse;
import com.glxp.api.res.thrsys.UdiwmsWarehouseDetail;
import com.glxp.api.service.thrsys.ThrSystemService;
import lombok.extern.slf4j.Slf4j;
import okhttp3.OkHttpClient;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Slf4j
@Service
public class ErpInvClient {
@Resource
HttpOkClient httpOkClient;
@Resource
private OkHttpClient okHttpClient;
@Resource
private ThrSystemService basicThirdSysService;
public BaseResponse<PageSimpleResponse<ThrInvProductResponse>> getInvPrdoductResponse(ThrOnhandRequest onhandRequest, String url) {
Map<String, Object> paramMap = new HashMap<>(16);
if (onhandRequest.getBatchNo() != null && !onhandRequest.getBatchNo().equals(""))
paramMap.put("batchNo", onhandRequest.getBatchNo());
if (onhandRequest.getWarehouseCode() != null && !onhandRequest.getWarehouseCode().equals(""))
paramMap.put("warehouseCode", onhandRequest.getWarehouseCode());
if (onhandRequest.getInventoryCode() != null && !onhandRequest.getInventoryCode().equals(""))
paramMap.put("inventoryCode", onhandRequest.getInventoryCode());
if (onhandRequest.getInventoryName() != null && !onhandRequest.getInventoryName().equals(""))
paramMap.put("inventoryName", onhandRequest.getInventoryName());
if (onhandRequest.getSpec() != null && !onhandRequest.getSpec().equals(""))
paramMap.put("spec", onhandRequest.getSpec());
if (onhandRequest.getRegisterCertNo() != null && !onhandRequest.getRegisterCertNo().equals(""))
paramMap.put("registerCertNo", onhandRequest.getRegisterCertNo());
if (onhandRequest.getManufactory() != null && !onhandRequest.getManufactory().equals(""))
paramMap.put("manufactory", onhandRequest.getManufactory());
if (onhandRequest.getFilterCount() != null && !onhandRequest.getFilterCount().equals(""))
paramMap.put("filterCount", onhandRequest.getFilterCount());
if (onhandRequest.getPage() != null)
paramMap.put("page", onhandRequest.getPage());
if (onhandRequest.getLimit() != null)
paramMap.put("limit", onhandRequest.getLimit());
// String response = HttpClient.mipsGet(url, paramMap);
String response = httpOkClient.uCloudPost(url, onhandRequest);
try {
BaseResponse<PageSimpleResponse<ThrInvProductResponse>> onHandsResponse =
JSONObject.parseObject(response, new TypeReference<BaseResponse<PageSimpleResponse<ThrInvProductResponse>>>() {
});
return onHandsResponse;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public List<ThrInvProductResponse> getInvPrdoduct(ThrOnhandRequest onhandRequest, String url) {
BaseResponse<PageSimpleResponse<ThrInvProductResponse>> responseBaseResponse = getInvPrdoductResponse(onhandRequest, url);
List<ThrInvProductResponse> responseList = responseBaseResponse.getData().getList();
return responseList;
}
public BaseResponse<PageSimpleResponse<ThrInvResultResponse>> getInvSfResult(FilterInvProductRequest invProductRequest) {
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(invProductRequest.getThirdSys());
// String url = basicThirdSysEntity.getThridUrl() + invProductRequest.getThirdSysUrlValue();
String url = "http://192.168.0.166:9997/udiwms/erp/inv/getInvResult";
try {
String response = httpOkClient.uCloudPost(url, invProductRequest);
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> listBaseResponse =
JSONObject.parseObject(response, new TypeReference<BaseResponse<PageSimpleResponse<ThrInvResultResponse>>>() {
});
return listBaseResponse;
} catch (Exception e) {
log.error("获取第三方库存明细异常", e);
return ResultVOUtils.error(500, "连接第三方系统接口服务出错");
}
}
public BaseResponse<PageSimpleResponse<ThrInvResultResponse>> getInvPhResult(FilterInvProductRequest invProductRequest) {
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(invProductRequest.getThirdSys());
// String url = basicThirdSysEntity.getThridUrl() + invProductRequest.getThirdSysUrlValue();
String url = "http://192.168.0.166:9997/udiwms/erp/inv/getInvResult";
try {
String response = httpOkClient.uCloudPost(url, invProductRequest);
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> listBaseResponse =
JSONObject.parseObject(response, new TypeReference<BaseResponse<PageSimpleResponse<ThrInvResultResponse>>>() {
});
return listBaseResponse;
} catch (Exception e) {
log.error("获取第三方库存明细异常", e);
return ResultVOUtils.error(500, "连接第三方系统接口服务出错");
}
}
public BaseResponse<PageSimpleResponse<ThrInvResultResponse>> getInvGhResult(FilterInvProductRequest invProductRequest) {
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(invProductRequest.getThirdSys());
// String url = basicThirdSysEntity.getThridUrl() + invProductRequest.getThirdSysUrlValue();
String url = "http://192.168.0.166:9997/udiwms/erp/inv/getInvResult";
try {
String response = httpOkClient.uCloudPost(url, invProductRequest);
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> listBaseResponse =
JSONObject.parseObject(response, new TypeReference<BaseResponse<PageSimpleResponse<ThrInvResultResponse>>>() {
});
return listBaseResponse;
} catch (Exception e) {
log.error("获取第三方库存明细异常", e);
return ResultVOUtils.error(500, "连接第三方系统接口服务出错");
}
}
}