|
|
|
@ -1,12 +1,14 @@
|
|
|
|
|
package com.glxp.mipsdl.admin.client.http;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
|
import com.alibaba.fastjson.TypeReference;
|
|
|
|
|
import com.glxp.mipsdl.admin.config.ThirdSysConfig;
|
|
|
|
|
import com.glxp.mipsdl.admin.dao.phxyy.BasicThirdSysDetailDao;
|
|
|
|
|
import com.glxp.mipsdl.admin.entity.phxyy.BasicThirdSysBusApiEntity;
|
|
|
|
|
import com.glxp.mipsdl.admin.entity.phxyy.BasicThirdSysDetailEntity;
|
|
|
|
|
import com.glxp.mipsdl.admin.entity.zy.ZaZyHeareRequest;
|
|
|
|
|
import com.glxp.mipsdl.admin.req.UdiwmsOnhandRequest;
|
|
|
|
|
import com.glxp.mipsdl.admin.req.UdiwmsOrderRequest;
|
|
|
|
|
import com.glxp.mipsdl.admin.req.UdiwmsPreInOrderRequest;
|
|
|
|
@ -21,12 +23,14 @@ import com.glxp.mipsdl.admin.service.phxyy.BussinessOriginTypeService;
|
|
|
|
|
import com.glxp.mipsdl.admin.util.HttpClient;
|
|
|
|
|
import com.glxp.mipsdl.common.res.BaseResponse;
|
|
|
|
|
import com.glxp.mipsdl.common.util.ResultVOUtils;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
@Slf4j
|
|
|
|
|
@Service
|
|
|
|
|
public class ZaxyyClient {
|
|
|
|
|
|
|
|
|
@ -62,46 +66,95 @@ public class ZaxyyClient {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public BaseResponse testConnect() {
|
|
|
|
|
PhUnitRequest phUnitRequest = new PhUnitRequest();
|
|
|
|
|
phUnitRequest.setPage(1);
|
|
|
|
|
phUnitRequest.setLimit(1);
|
|
|
|
|
BaseResponse baseResponse = getUnit(phUnitRequest);
|
|
|
|
|
if (baseResponse.getCode() == 20000) {
|
|
|
|
|
return ResultVOUtils.success("连接成功!");
|
|
|
|
|
} else {
|
|
|
|
|
return ResultVOUtils.error(500, "连接失败");
|
|
|
|
|
}
|
|
|
|
|
String msgHead = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
|
|
|
|
|
"<root>\n" +
|
|
|
|
|
"<serverName>getMasterialInput</serverName>\n" +
|
|
|
|
|
"</root>";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String msgBody = "{\"billNo\":\"ZY202205070001\",\"billdate\":\"2022-05-07\",\"corpId\":\"65119908299161\",\"corpName\":\"福建片仔癀诊断技术有限公司\",\"billType\":\"采购入库\",\"billFlag\":\"1\",\"thirdSys\":\"thirdId\",\"locInvCode\":\"11001\",\"locInvName\":\"总仓库\",\"inoutType\":\"1\",\"remark\":\"\",\"item\":[{\"billNo\":\"ZY202205070001\",\"productId\":\"7864\",\"productName\":\"通用脊柱内固定器-6.0 连接棒\",\"standard\":\"70-450mm/理贝尔\",\"expireDate\":\"2025-01-03\",\"productDate\":\"2021-03-01\",\"batchNo\":\"202003\",\"count\":10,\"measname\":\"计量单位\",\"registerNo\":\"国食药监械(准)字 2006 第 3460057 号\",\"price\":10.0,\"secSalesInvNo\":\"21232424\",\"invoiceDate\":\"2323243\",\"secSalesListNo\":\"42342\",\"firstSalesInvNo\":\"423424\",\"remark\":\"\",\"remakr1\":\"\",\"remakr2\":\"\",\"codeList\":[{\"code\":\"01069125473843801121041410210290075\",\"nameCode\":\"06912547384380\",\"count\":1}]},{\"productId\":\"7901\",\"productName\":\"亲水性丙烯酸折叠式人工晶状体 Hydrophilic AcrylicFoldableIntraocular Lens\",\"standard\":\"S1AW00\",\"batchNo\":\"202103\",\"expireDate\":\"2025-01-03\",\"productDate\":\"2021-03-01\",\"count\":10,\"measname\":\"计量单位\",\"registerNo\":\"国械注进 20153162635\",\"price\":10.0,\"secSalesInvNo\":\"21232424\",\"invoiceDate\":\"2323243\",\"secSalesListNo\":\"42342\",\"firstSalesInvNo\":\"423424\",\"remark\":\"\",\"remakr1\":\"\",\"remakr2\":\"\",\"codeList\":[{\"code\":\"01069125473843801121041410210290075\",\"nameCode\":\"06912547384380\",\"count\":1}]}]}";
|
|
|
|
|
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(msgHead);
|
|
|
|
|
zaZyHeareRequest.setMsgBody(msgBody);
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl(), zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
log.info(response);
|
|
|
|
|
return ResultVOUtils.error(500, "连接成功!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public String getMsgHeader(String methodName) {
|
|
|
|
|
String msgHead = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
|
|
|
|
|
"<root>\n" +
|
|
|
|
|
"<serverName>" +
|
|
|
|
|
methodName +
|
|
|
|
|
"</serverName>\n" +
|
|
|
|
|
"</root>";
|
|
|
|
|
return msgHead;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseResponse getUnit(PhUnitRequest unitRequest) {
|
|
|
|
|
BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("corpUrl", thirdSysConfig.getThirdSysConfig().getThirdId());
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), unitRequest, getHeaderArray());
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(getMsgHeader("getUnit"));
|
|
|
|
|
zaZyHeareRequest.setMsgBody(JSONUtil.toJsonStr(unitRequest));
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
return baseResponse;
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果" + "(" + response + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseResponse getProducts(PhProductRequest udiwmsProductRequest) {
|
|
|
|
|
BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("piQueryUrl", thirdSysConfig.getThirdSysConfig().getThirdId());
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsProductRequest, getHeaderArray());
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(getMsgHeader("getProducts"));
|
|
|
|
|
zaZyHeareRequest.setMsgBody(JSONUtil.toJsonStr(udiwmsProductRequest));
|
|
|
|
|
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果" + "(" + response + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseResponse getOrderTypes(PhBusTypeRequest udiwmsBusTypeRequest) {
|
|
|
|
|
BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("busTypeQueryUrl", thirdSysConfig.getThirdSysConfig().getThirdId());
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsBusTypeRequest, getHeaderArray());
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(getMsgHeader("getOrderTypes"));
|
|
|
|
|
zaZyHeareRequest.setMsgBody(JSONUtil.toJsonStr(udiwmsBusTypeRequest));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
try {
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果" + "(" + response + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseResponse getOrders(UdiwmsOrderRequest udiwmsOrderRequest) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (StrUtil.isEmpty(udiwmsOrderRequest.getBillType())) {
|
|
|
|
|
return ResultVOUtils.error(500, "单据类型不能未空");
|
|
|
|
|
}
|
|
|
|
@ -110,12 +163,22 @@ public class ZaxyyClient {
|
|
|
|
|
}
|
|
|
|
|
BussinessOriginTypeResponse bussinessOriginTypeResponse = bussinessOriginTypeService.findByKey(udiwmsOrderRequest.getBillType(), thirdSysConfig.getThirdSysConfig().getThirdId());
|
|
|
|
|
udiwmsOrderRequest.setBillType(bussinessOriginTypeResponse.getThirdAction());
|
|
|
|
|
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(getMsgHeader("getOrders"));
|
|
|
|
|
zaZyHeareRequest.setMsgBody(JSONUtil.toJsonStr(udiwmsOrderRequest));
|
|
|
|
|
|
|
|
|
|
BasicThirdSysBusApiEntity basicThirdSysBusApiEntity = basicThirdSysBusApiService.selectByKey(bussinessOriginTypeResponse.getThirdAction(), bussinessOriginTypeResponse.getThirdSys(), 1);
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysBusApiEntity.getUrl(), udiwmsOrderRequest, getHeaderArray());
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysBusApiEntity.getUrl(), zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
try {
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果" + "(" + response + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseResponse submitOrders(ZaxzyyOrderRequest udiwmsOrderRequest) {
|
|
|
|
@ -124,7 +187,6 @@ public class ZaxyyClient {
|
|
|
|
|
}
|
|
|
|
|
BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByOrderType("orderSubmitUrl", thirdSysConfig.getThirdSysConfig().getThirdId(), udiwmsOrderRequest.getBillType());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String interStr = "";
|
|
|
|
|
if (StrUtil.isNotEmpty(basicThirdSysDetailEntity.getOrderTypeUrl())) {
|
|
|
|
|
interStr = basicThirdSysDetailEntity.getOrderTypeUrl();
|
|
|
|
@ -132,7 +194,12 @@ public class ZaxyyClient {
|
|
|
|
|
} else {
|
|
|
|
|
interStr = basicThirdSysDetailEntity.getValue();
|
|
|
|
|
}
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + interStr, udiwmsOrderRequest, getHeaderArray());
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(getMsgHeader("submitOrders"));
|
|
|
|
|
zaZyHeareRequest.setMsgBody(JSONUtil.toJsonStr(udiwmsOrderRequest));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + interStr, zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
try {
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
@ -142,7 +209,7 @@ public class ZaxyyClient {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果");
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果" + "(" + response + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -150,7 +217,12 @@ public class ZaxyyClient {
|
|
|
|
|
BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("preInOrderSubmit", thirdSysConfig.getThirdSysConfig().getThirdId());
|
|
|
|
|
String interStr = "";
|
|
|
|
|
interStr = basicThirdSysDetailEntity.getValue();
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + interStr, udiwmsPreInOrderRequest, getHeaderArray());
|
|
|
|
|
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(getMsgHeader("submitPreInOrders"));
|
|
|
|
|
zaZyHeareRequest.setMsgBody(JSONUtil.toJsonStr(udiwmsPreInOrderRequest));
|
|
|
|
|
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + interStr, zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
try {
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
@ -160,25 +232,45 @@ public class ZaxyyClient {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果");
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果" + "(" + response + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseResponse getInvProducts(UdiwmsOnhandRequest udiwmsOnhandRequest) {
|
|
|
|
|
BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("invPiUrl", thirdSysConfig.getThirdSysConfig().getThirdId());
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsOnhandRequest, getHeaderArray());
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(getMsgHeader("udiwmsWarehouseRequest"));
|
|
|
|
|
zaZyHeareRequest.setMsgBody(JSONUtil.toJsonStr(udiwmsOnhandRequest));
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
try {
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果" + "(" + response + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public BaseResponse getWarehouse(PhWarehouseRequest udiwmsWarehouseRequest) {
|
|
|
|
|
|
|
|
|
|
ZaZyHeareRequest zaZyHeareRequest = new ZaZyHeareRequest();
|
|
|
|
|
zaZyHeareRequest.setMsgHeader(getMsgHeader("udiwmsWarehouseRequest"));
|
|
|
|
|
zaZyHeareRequest.setMsgBody(JSONUtil.toJsonStr(udiwmsWarehouseRequest));
|
|
|
|
|
|
|
|
|
|
BasicThirdSysDetailEntity basicThirdSysDetailEntity = basicThirdSysDetailDao.selectByKey("warehouseQueryUrl", thirdSysConfig.getThirdSysConfig().getThirdId());
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), udiwmsWarehouseRequest, getHeaderArray());
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
String response = httpClient.postJson(thirdSysConfig.getThirdSysConfig().getThirdSysUrl() + basicThirdSysDetailEntity.getValue(), zaZyHeareRequest, getHeaderArray());
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
BaseResponse baseResponse =
|
|
|
|
|
JSONObject.parseObject(response, new TypeReference<BaseResponse>() {
|
|
|
|
|
});
|
|
|
|
|
return baseResponse;
|
|
|
|
|
} catch (
|
|
|
|
|
Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.error(500, "网络错误,或远程服务器异常无法返回正确结果" + "(" + response + ")");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|