解决提供方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", "indexFlag":"jzh",
// //
"serialnum":"PATHOLOGY_ONLY_NO", "serialnum":"SAMPLE_NO",
// //
"filetitle":"EXAM_ITEM_NAME", "filetitle":"TEST_ITEM_NAME",
// //
"downurl":"IMAGE_URL", "downurl":"IMAGE_URL",
//id //id
"assortid":"批复文件", "assortid":"63E20FC9AAB74C5FB6446083EBA5607D",
//id //id
"collectorid":"14", "collectorid":"3",
//( 1:2) //( 1:2)
"filesource":0, "filesource":1,
//(1:2ftp3) //(1:2ftp3)
"filestoragetype":0, "filestoragetype":1,
// //
"uploadConnector":"http://192.168.1.107:9291/api/downplatform/report", "uploadConnector":"http://192.168.1.107:9291/api/downplatform/report",
//doubleBasic //doubleBasic
"basicDirectory":["Msg","PatInfo"], "basicDirectory":["Msg","ReportInfo"],
// //
"doubleBasic":["TestItemInfo","BioTestInfo"], "doubleBasic":["TestItemInfo","BioTestInfo"],
// //

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

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

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

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

Loading…
Cancel
Save