解决提供方web service入参问题

docus-active-query-service_1.3
lzy 4 years ago
parent 2916ba8660
commit 7bbcc5f925

@ -1,26 +1,26 @@
{
//,
"directory":["Msg","PatInfo"],
"directory":["Msg","ReportInfo"],
//
"indexFlag":"jzh",
//
"serialnum":"PATHOLOGY_ONLY_NO",
"serialnum":"SAMPLE_NO",
//
"filetitle":"EXAM_ITEM_NAME",
"filetitle":"TEST_ITEM_NAME",
//
"downurl":"IMAGE_URL",
//id
"assortid":"批复文件",
"assortid":"63E20FC9AAB74C5FB6446083EBA5607D",
//id
"collectorid":"14",
"collectorid":"3",
//( 1:2)
"filesource":0,
"filesource":1,
//(1:2ftp3)
"filestoragetype":0,
"filestoragetype":1,
//
"uploadConnector":"http://192.168.1.107:9291/api/downplatform/report",
//doubleBasic
"basicDirectory":["Msg","PatInfo"],
"basicDirectory":["Msg","ReportInfo"],
//
"doubleBasic":["TestItemInfo","BioTestInfo"],
//

@ -33,7 +33,7 @@ public enum Codes {
//接收三级节点
// PAT_INFO("202","PatInfo"),
//静态文件根元素名
SELECT_COLUMNS("10000","selectColumns")
SELECT_COLUMNS("10000","selectColumns"),
;
//代码
private String code;

@ -67,6 +67,9 @@ public class AfCollectTaskServiceImpl extends ServiceImpl<AfCollectTaskMapper, A
afCollectTask.setC2(scanfile.getFiletitle());
afCollectTask.setC3(reportDownDto.getPatient().getJzh());
save = afCollectTaskMapper.insert(afCollectTask);
if (save <= 0) {
throw new RuntimeException("插入病案任务表数据出错");
}
} else {
//存在就修改
// afCollectTask.setPatientId(patientId);
@ -77,10 +80,6 @@ public class AfCollectTaskServiceImpl extends ServiceImpl<AfCollectTaskMapper, A
// afCollectTask.setC2(scanfile.getFiletitle());
// save = afCollectTaskMapper.updateById(afCollectTask);
}
if (save <= 0) {
throw new RuntimeException("插入病案任务表数据出错");
}
scanfile.setTaskid(afCollectTask.getId());
}
reportDownDto.setScanfiles(scanfiles);

@ -14,7 +14,6 @@ import com.docus.bgts.utils.FileUtils;
import com.docus.bgts.utils.HttpUtils;
import com.docus.bgts.utils.JAXDynamicClientFactory;
import com.docus.bgts.utils.XmlUtils;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.cxf.endpoint.Client;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@ -132,16 +131,17 @@ public class BgtsServiceImpl implements IBgtsService {
// Element request = document.addElement("Request");
// Element msg = request.addElement("Msg");
// msg.addElement("EXAM_NO").setText(exam[0]);
List<String> bgtsDetailParam = (List<String>) FileUtils.getJsonByName("bgtsDetailParam");
Element request = null;
for (int i = 0; i < bgtsDetailParam.size(); i++) {
if (i == 0) {
request = document.addElement(bgtsDetailParam.get(i));
} else {
request = request.addElement(bgtsDetailParam.get(i));
}
}
request.setText(exam[0]);
// List<String> bgtsDetailParam = (List<String>) FileUtils.getJsonByName("bgtsDetailParam");
// Element request = null;
// for (int i = 0; i < bgtsDetailParam.size(); i++) {
// if (i == 0) {
// request = document.addElement(bgtsDetailParam.get(i));
// } else {
// request = request.addElement(bgtsDetailParam.get(i));
// }
// }
Element request = HttpUtils.reqElement(document,0);
request.addElement("EXAM_NO").setText(exam[0]);
String resXml = invokeWs(document.asXML());
//解析XML
XmlUtils xmlUtils = new XmlUtils(new ByteArrayInputStream(resXml.getBytes("UTF-8")));
@ -169,16 +169,17 @@ public class BgtsServiceImpl implements IBgtsService {
// Element request = document.addElement("Request");
// Element msg = request.addElement("Msg");
// msg.addElement("EMPI_ID").setText(empId);
List<String> bgtsParam = (List<String>) FileUtils.getJsonByName("bgtsParam");
Element request = null;
for (int i = 0; i < bgtsParam.size(); i++) {
if (i == 0) {
request = document.addElement(bgtsParam.get(i));
} else {
request = request.addElement(bgtsParam.get(i));
}
}
request.setText(empId);
// List<String> bgtsParam = (List<String>) FileUtils.getJsonByName("bgtsParam");
// Element request = null;
// for (int i = 0; i < bgtsParam.size(); i++) {
// if (i == 0) {
// request = document.addElement(bgtsParam.get(i));
// } else {
// request = request.addElement(bgtsParam.get(i));
// }
// }
Element reqElement = HttpUtils.reqElement(document,1);
reqElement.addElement("EMPI_ID").setText(empId);
logger.info("-------根据患者主索引号查询多个报告单号,地址:"+wsUrl+",方法:"+wsLocalMethod+"---------");
String xml = document.asXML();
logger.info("---------------------------");
@ -236,12 +237,11 @@ public class BgtsServiceImpl implements IBgtsService {
// call.setTimeout(100000);//超时
// String result = (String) call.invoke(object);// 远程调用
// System.out.println(result);
logger.info("-----\n客户端调用服务端",wsUrl,"方法:",wsLocalMethod,"\n------------");
logger.info("-----\n客户端调用服务端"+wsUrl+"方法:"+wsLocalMethod+"\n------------");
JAXDynamicClientFactory dcf = JAXDynamicClientFactory.newInstance();
Client client = dcf.createClient(wsUrl);
Object[] objects = client.invoke(wsLocalMethod,xml);
String str = objects[0].toString();
System.out.println(str);
logger.info("----------结果---------");
logger.info(str);
return str;

@ -14,6 +14,8 @@ import org.apache.http.impl.client.HttpClients;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
import org.dom4j.Document;
import org.dom4j.Element;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
@ -208,4 +210,66 @@ public class HttpUtils {
return EMPTY_STR;
}
/**
* xml
* @return
*/
public static Element reqElement(Document document,Integer code){
//获取根节点
Element esbEntry = document.addElement("ESBEntry");
Element accessControl = esbEntry.addElement("AccessControl");
accessControl.addElement("SysFlag").setText("1");
accessControl.addElement("UserName").setText("WZHBAGL");
accessControl.addElement("Password").setText("WZHBAGL_1127");
accessControl.addElement("Fid").setText("BS04102");
accessControl.addElement("OrderNo").setText("BS04102S51001");
accessControl.addElement("SUBOR_HOSPITAL_DISTRICT").setText("GZ");
Element messageHeader = esbEntry.addElement("MessageHeader");
messageHeader.addElement("Fid").setText("BS04102");
messageHeader.addElement("OrderNo").setText("BS04102S51001");
messageHeader.addElement("SourceSysCode").setText("S51");
messageHeader.addElement("TargetSysCode").setText("S00");
messageHeader.addElement("MsgDate").setText("2021-10-27 17:05:19");
Element requestOption = esbEntry.addElement("RequestOption");
requestOption.addElement("triggerData").setText("0");
requestOption.addElement("dataAmount").setText("500");
/*
*
*/
Element msgInfo = esbEntry.addElement("MsgInfo");
msgInfo.addAttribute("flag","1");
msgInfo.addElement("Msg");
Element distinct = msgInfo.addElement("distinct");
distinct.addAttribute("value","0");
Element query = msgInfo.addElement("query");
query.addAttribute("item","WS_INPUT");
query.addAttribute("compy"," = ");
query.addAttribute("value"," 1 ");
query.addAttribute("splice","AND");
Element queryWs = msgInfo.addElement("query_ws");
if(code==1){
queryWs.addAttribute("action","queueReportList");
}else {
queryWs.addAttribute("action","queueReportInfo");
}
Element res = queryWs.addElement("content").addElement("Request").addElement("Msg");
/*
*
*/
Element groupInfo = esbEntry.addElement("GroupInfo");
groupInfo.addAttribute("flag","0");
Element as = groupInfo.addElement("AS");
as.addAttribute("ID","");
as.addAttribute("linkField","");
return res;
}
}

@ -136,4 +136,6 @@ public class XmlUtils {
return element.getText();
}
}

@ -1,5 +1,5 @@
server:
port: 9302
port: 9303
# http
mybatis-plus:

Loading…
Cancel
Save