Quellcode durchsuchen

添加webservice

lingfeng vor 9 Jahren
Ursprung
Commit
28ef330155

+ 20 - 26
Hos-Resource-Rest/pom.xml

@ -206,32 +206,26 @@
            <artifactId>xom</artifactId>
            <version>1.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2</artifactId>
            <version>1.6.3</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-adb</artifactId>
            <version>1.6.3</version>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>axis2-kernel</artifactId>
            <version>1.6.3</version>
            <exclusions>
                <exclusion>
                    <artifactId>XmlSchema</artifactId>
                    <groupId>org.apache.ws.commons.schema</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.axis2</groupId>
            <artifactId>org.apache.axis2.osgi</artifactId>
            <version>1.6.3</version>
        </dependency>
        <!--<dependency>-->
            <!--<groupId>org.apache.axis2</groupId>-->
            <!--<artifactId>axis2</artifactId>-->
            <!--<version>1.6.3</version>-->
        <!--</dependency>-->
        <!--<dependency>-->
            <!--<groupId>org.apache.axis2</groupId>-->
            <!--<artifactId>axis2-adb</artifactId>-->
            <!--<version>1.6.3</version>-->
        <!--</dependency>-->
        <!--<dependency>-->
            <!--<groupId>org.apache.axis2</groupId>-->
            <!--<artifactId>axis2-kernel</artifactId>-->
            <!--<version>1.6.3</version>-->
        <!--</dependency>-->
        <!--<dependency>-->
            <!--<groupId>org.apache.axis2</groupId>-->
            <!--<artifactId>org.apache.axis2.osgi</artifactId>-->
            <!--<version>1.6.3</version>-->
        <!--</dependency>-->
        <dependency>
            <groupId>org.json</groupId>
            <artifactId>json</artifactId>

+ 19 - 1
Hos-Resource-Rest/src/main/java/com/yihu/hos/config/CxfConfig.java

@ -6,19 +6,37 @@ import org.apache.cxf.Bus;
import org.apache.cxf.bus.spring.SpringBus;
import org.apache.cxf.jaxws.EndpointImpl;
import org.apache.cxf.transport.servlet.CXFServlet;
import org.springframework.boot.autoconfigure.web.DispatcherServletAutoConfiguration;
import org.springframework.boot.context.embedded.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.DispatcherServlet;
import javax.xml.ws.Endpoint;
@Configuration
public class CxfConfig {
    @Bean
    public ServletRegistrationBean dispatcherRegistration() {
        ServletRegistrationBean registration = new ServletRegistrationBean(dispatcherServlet(), "/*");
        return registration;
    }
    @Bean(name = DispatcherServletAutoConfiguration.DEFAULT_DISPATCHER_SERVLET_REGISTRATION_BEAN_NAME)
    public DispatcherServlet dispatcherServlet() {
        return new DispatcherServlet();
    }
    @Bean
    public ServletRegistrationBean dispatcherServlet() {
    public ServletRegistrationBean cxfRegistration() {
        return new ServletRegistrationBean(new CXFServlet(), "/service/*");
    }
    @Bean(name = Bus.DEFAULT_BUS_ID)
    public SpringBus springBus() {
        return new SpringBus();

+ 1 - 4
Hos-Resource-Rest/src/main/java/com/yihu/hos/gateway/control/GatewayControl.java

@ -1,11 +1,11 @@
package com.yihu.hos.gateway.control;
import com.yihu.hos.gateway.thread.ResponseThread;
import com.yihu.hos.gateway.exception.EHRException;
import com.yihu.hos.gateway.exception.EHRExceptionConstant;
import com.yihu.hos.gateway.model.rest.RestRequsetResult;
import com.yihu.hos.gateway.model.rest.RestResponseResult;
import com.yihu.hos.gateway.service.intf.IGatewayService;
import com.yihu.hos.gateway.thread.ResponseThread;
import com.yihu.hos.resource.util.httpclient.HttpClientUtil;
import com.yihu.hos.resource.viewModel.ResourceRestDetailModel;
import com.yihu.hos.resource.viewModel.SQLResponResult;
@ -16,12 +16,9 @@ import org.springframework.stereotype.Controller;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
/**

+ 20 - 23
Hos-Resource-Rest/src/main/java/com/yihu/hos/gateway/util/RPCUtil.java

@ -3,9 +3,6 @@ package com.yihu.hos.gateway.util;
import com.yihu.hos.config.Config;
import com.yihu.wsgw.api.ServiceBus;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
import javax.xml.namespace.QName;
/**
@ -30,26 +27,26 @@ public class RPCUtil {
     * @param inputValuetype
     * @return
     */
    public static String getObjectByAxis2CallClient(String webServiceAddr, String webserviceNamespace, String webServiceMethod,
                                                    Object[] inputValues, Class[] inputValuetype) {
        try {
            //新建RPC服务客户端
            RPCServiceClient serviceClient = new RPCServiceClient();
            Options options = serviceClient.getOptions();
            //设置URL
            EndpointReference targetEPR = new EndpointReference(webServiceAddr);
            options.setTo(targetEPR);
            //设置参数的类型
            //设置namespace和方法名
            QName opAddEntry = new QName(webserviceNamespace, webServiceMethod);
            //数组的第一个值为返回值
            return (String) (serviceClient.invokeBlocking(opAddEntry, inputValues, inputValuetype))[0];
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "";
    }
//    public static String getObjectByAxis2CallClient(String webServiceAddr, String webserviceNamespace, String webServiceMethod,
//                                                    Object[] inputValues, Class[] inputValuetype) {
//
//        try {
//            //新建RPC服务客户端
//            RPCServiceClient serviceClient = new RPCServiceClient();
//            Options options = serviceClient.getOptions();
//            //设置URL
//            EndpointReference targetEPR = new EndpointReference(webServiceAddr);
//            options.setTo(targetEPR);
//            //设置参数的类型
//            //设置namespace和方法名
//            QName opAddEntry = new QName(webserviceNamespace, webServiceMethod);
//            //数组的第一个值为返回值
//            return (String) (serviceClient.invokeBlocking(opAddEntry, inputValues, inputValuetype))[0];
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//        return "";
//    }
    /*
    public static void main(String[] args) throws Exception {
        String apiName = "report.ReportWs.GetReportList";

+ 0 - 35
Hos-Resource-Rest/src/main/java/com/yihu/hos/ws/model/DataSource.java

@ -1,35 +0,0 @@
package com.yihu.hos.ws.model;
/**
 * Created by hzp on 2016/2/26.
 */
public class DataSource {
    private String id;
    private String name;
    private String config;
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getConfig() {
        return config;
    }
    public void setConfig(String config) {
        this.config = config;
    }
}

+ 0 - 48
Hos-Resource-Rest/src/main/java/com/yihu/hos/ws/model/User.java

@ -1,48 +0,0 @@
package com.yihu.hos.ws.model;
import java.io.Serializable;
import java.util.Date;
public class User implements Serializable {
    private static final long serialVersionUID = -5939599230753662529L;
    private Long              userId;
    private String            username;
    private String            email;
    private Date gmtCreate;
    public static long getSerialVersionUID() {
        return serialVersionUID;
    }
    public Long getUserId() {
        return userId;
    }
    public void setUserId(Long userId) {
        this.userId = userId;
    }
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public Date getGmtCreate() {
        return gmtCreate;
    }
    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }
}

+ 0 - 264
Hos-Resource-Rest/src/main/java/com/yihu/hos/ws/service/ExcuteService.java

@ -1,264 +0,0 @@
package com.yihu.hos.ws.service;
import com.yihu.ehr.dbhelper.jdbc.DBHelper;
import com.yihu.hos.resource.util.StringUtil;
import com.yihu.hos.ws.model.DataSource;
import com.yihu.hos.ws.model.WSReturnModel;
import org.apache.commons.dbcp2.BasicDataSource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.util.StringUtils;
import java.util.List;
import java.util.Map;
/**
 * Created by Administrator on 2016/5/19.
 */
public class ExcuteService {
    public static JdbcTemplate jdbcTemplate = null;
    public void initJDBC() throws Exception {
        if (jdbcTemplate == null) {
            //jdbc:oracle:thin:hos/hos@//172.19.103.71:1521/orcl
            //jdbc:mysql://172.19.103.71:1521/orcl?user=hos&password=hos&useUnicode=true&characterEncoding=UTF-8
            //jdbc:sqlserver://172.19.103.71:1521/orcl?user=hos&password=hos
            DBHelper dbTemp = new DBHelper();
            DataSource source = dbTemp.load(DataSource.class, "select * from system_datasource");
            String config = source.getConfig();
            BasicDataSource dasicDataSource = new BasicDataSource();
            if (config.contains("oracle")) {
                //oracle数据库
                dasicDataSource.setUrl(source.getConfig());
                dasicDataSource.setDriverClassName("oracle.jdbc.driver.OracleDriver");
                String[] s1 = config.split("@");
                String[] s2 = s1[0].split(":");
                String[] s3 = s2[3].split("/");
                dasicDataSource.setUsername(s3[0]);
                dasicDataSource.setPassword(s3[1]);
            } else if (config.contains("mysql")) {
                //mysql数据库
                dasicDataSource.setUrl(source.getConfig());
                dasicDataSource.setDriverClassName("com.mysql.jdbc.Driver");
                String[] s1 = config.split("\\?");
                String[] s2 = s1[1].split("&");
                dasicDataSource.setUsername(s2[0].split("=")[1]);
                dasicDataSource.setPassword(s2[1].split("=")[1]);
            } else if (config.contains("sqlserver")) {
                //sqlserver数据库
                dasicDataSource.setUrl(source.getConfig());
                dasicDataSource.setDriverClassName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
                String[] s1 = config.split("\\?");
                String[] s2 = s1[1].split("&");
                dasicDataSource.setUsername(s2[0].split("=")[1]);
                dasicDataSource.setPassword(s2[1].split("=")[1]);
            }
            jdbcTemplate = new JdbcTemplate();
            jdbcTemplate.setDataSource(dasicDataSource);
            System.out.println(jdbcTemplate.queryForMap("select 1 from dual"));
        }
    }
    /**
     * 执行sql语句
     *
     * @param sql
     * @return
     */
    public String excuteSQL(String TransactionCode,
                            String sql) {
        WSReturnModel wsReturnModel = new WSReturnModel();
        wsReturnModel.setTransactionCode(TransactionCode);
        try {
            initJDBC();
            wsReturnModel.setData(jdbcTemplate.queryForList(sql));
            return WSReturnModel.toXml(wsReturnModel);
        } catch (Exception e1) {
            wsReturnModel.setRespCode("-30000");
            wsReturnModel.setRespMessage(e1.getMessage());
            return WSReturnModel.toXml(wsReturnModel);
        }
    }
    /**
     * 获取检查报告单的列表
     *
     * @param cardType
     * @param cardNo
     * @param startDate
     * @param endDate
     * @param mobile
     * @param reportType 1是检查 2是检验
     * @return
     */
    public String GetReportList(
            String TransactionCode,
            String cardType,
            String cardNo,
            String startDate,
            String endDate,
            String mobile,
            String reportType) {
        WSReturnModel wsReturnModel = new WSReturnModel();
        wsReturnModel.setTransactionCode(TransactionCode);
        try {
            initJDBC();
            if ("2".equals(reportType)) {
                //检验
                StringBuffer sb = new StringBuffer("select * from HDSD02_01 where 1=1 ");
                if (!StringUtils.isEmpty(endDate)) {
                    sb.append(" and HDSD00_05_026 < '" + endDate + "'");
                }
                if (!StringUtils.isEmpty(startDate)) {
                    sb.append(" and HDSD00_01_001 > '" + startDate + "'");
                }
                if (!StringUtils.isEmpty(mobile)) {
                    sb.append(" and HDSD00_01_001 = '" + mobile + "'");
                }
                if (!StringUtils.isEmpty(cardNo)) {
                    sb.append(" and HDSD00_01_001 = '" + cardNo + "'");
                }
                if (!StringUtils.isEmpty(cardType)) {
                    sb.append(" and HDSD00_01_001 = '" + cardType + "'");
                }
                wsReturnModel.setData(jdbcTemplate.queryForList(sb.toString()));
            } else {
                //检查
                StringBuffer sb = new StringBuffer("select * from HDSD01_01 where 1=1 ");
                if (!StringUtils.isEmpty(endDate)) {
                    sb.append(" and HDSD00_05_026 < '" + endDate + "'");
                }
                if (!StringUtils.isEmpty(startDate)) {
                    sb.append(" and HDSD00_01_001 > '" + startDate + "'");
                }
                if (!StringUtils.isEmpty(mobile)) {
                    sb.append(" and HDSD00_01_001 = '" + mobile + "'");
                }
                if (!StringUtils.isEmpty(cardNo)) {
                    sb.append(" and HDSD00_01_001 = '" + cardNo + "'");
                }
                if (!StringUtils.isEmpty(cardType)) {
                    sb.append(" and HDSD00_01_001 = '" + cardType + "'");
                }
                wsReturnModel.setData(jdbcTemplate.queryForList(sb.toString()));
            }
            return WSReturnModel.toXml(wsReturnModel);
        } catch (Exception e) {
            wsReturnModel.setRespCode("-30000");
            wsReturnModel.setRespMessage(e.getMessage());
            e.printStackTrace();
            return WSReturnModel.toXml(wsReturnModel);
        }
    }
    /**
     * 检查报告单/检验报告单明细
     *
     * @param reportId
     * @param reportType //报告单类型
     * @return
     */
    public String GetReportInfo(
            String TransactionCode,
            String reportId,
            String reportType) {
        WSReturnModel wsReturnModel = new WSReturnModel();
        wsReturnModel.setTransactionCode(TransactionCode);
        try {
            initJDBC();
            if ("1".equals(reportType)) {
                //检验
                StringBuffer sb = new StringBuffer("select * from REPORT_JY where 1=1 ");
                if (!StringUtils.isEmpty(reportId)) {
                    sb.append(" and REPORT_ID = '" + reportId + "'");
                }
                List<Map<String, Object>> returnData = jdbcTemplate.queryForList(sb.toString());
                for (Map<String, Object> oneM : returnData) {
                    //检验-图片报告单
                    sb = new StringBuffer("select * from REPORT_JY_MX where 1=1 ");
                    if (!StringUtils.isEmpty(oneM.get("REPORT_ID"))) {
                        sb.append(" and REPORT_ID = '" + reportId + "'");
                    }
                    oneM.put("Data_1", jdbcTemplate.queryForList(sb.toString()));
                }
                wsReturnModel.setData(returnData);
            } else {
                //检查
                StringBuffer sb = new StringBuffer("select * from REPORT_JC where 1=1 ");
                if (!StringUtils.isEmpty(reportId)) {
                    sb.append(" and REPORT_ID = '" + reportId + "'");
                }
                List<Map<String, Object>> returnData = jdbcTemplate.queryForList(sb.toString());
                wsReturnModel.setData(returnData);
            }
            System.out.println(wsReturnModel);
            return WSReturnModel.toXml(wsReturnModel);
        } catch (Exception e) {
            wsReturnModel.setRespCode("-30000");
            wsReturnModel.setRespMessage(e.getMessage());
            e.printStackTrace();
            return WSReturnModel.toXml(wsReturnModel);
        }
    }
    /**
     * 人口学信息查询
     *
     * @param TransactionCode
     * @param CardType
     * @param CardNo
     * @param Mobile
     * @param PatientId
     * @return
     */
    public String QueryUserInfo(String TransactionCode, String CardType, String CardNo, String Mobile, String PatientId) {
        WSReturnModel wsReturnModel = new WSReturnModel();
        wsReturnModel.setTransactionCode(TransactionCode);
        try {
            initJDBC();
            //人口学信息
            StringBuffer sb = new StringBuffer("select * from PATIENT_INFO a where 1=1 ");
            if (!StringUtil.isEmpty(CardNo)) {
                sb.append(" and a.CARD_NO = '" + CardNo + "'");
            }
            if (!StringUtil.isEmpty(CardType)) {
                sb.append(" and a.CARD_TYPE = '" + CardType + "'");
            }
            List<Map<String, Object>> RKXMap = jdbcTemplate.queryForList(sb.toString());
            wsReturnModel.setData(RKXMap);
            return WSReturnModel.toXml(wsReturnModel);
        } catch (Exception e) {
            wsReturnModel.setRespCode("-30000");
            wsReturnModel.setRespMessage(e.getMessage());
            e.printStackTrace();
            return WSReturnModel.toXml(wsReturnModel);
        }
    }
    public String QueryRegInfo(String TransactionCode, String CardType,String CardNo, String IdCardNo, String OrderId, String ClinicCard, String TimeSlice, String StartTime, String EndTime, String RegFlag) {
        WSReturnModel wsReturnModel = new WSReturnModel();
        wsReturnModel.setTransactionCode(TransactionCode);
        try {
            initJDBC();
            //预约信息查询
            StringBuffer sb = new StringBuffer("select * from REG_INFO a where 1=1 ");
            if (!StringUtil.isEmpty(CardNo)) {
                sb.append(" and a.CARD_NO = '" + CardNo + "'");
            }
            if (!StringUtil.isEmpty(CardType)) {
                sb.append(" and a.CARD_TYPE = '" + CardType + "'");
            }
            List<Map<String, Object>> RKXMap = jdbcTemplate.queryForList(sb.toString());
            wsReturnModel.setData(RKXMap);
            return WSReturnModel.toXml(wsReturnModel);
        } catch (Exception e) {
            wsReturnModel.setRespCode("-30000");
            wsReturnModel.setRespMessage(e.getMessage());
            e.printStackTrace();
            return WSReturnModel.toXml(wsReturnModel);
        }
    }
}

+ 13 - 75
Hos-Resource-Rest/src/main/java/com/yihu/hos/ws/service/ServiceGateWay.java

@ -2,9 +2,11 @@ package com.yihu.hos.ws.service;
import com.yihu.hos.resource.util.StringUtil;
import com.yihu.hos.ws.model.WSReturnModel;
import com.yihu.hos.ws.thread.QLCThread;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.springframework.stereotype.Service;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@ -18,20 +20,6 @@ import java.util.regex.Pattern;
        serviceName = "ServiceGateWay",
        portName = "ServiceGateWayHttpPort")
public class ServiceGateWay implements ServiceGateWayPortType {
    private ExcuteService excuteService = new ExcuteService();
    /**
     * 执行sql语句
     *
     * @param sql
     * @return
     */
//    public String excuteSQL(String TransactionCode,
//                            String sql) {
//
//        return excuteService.excuteSQL(TransactionCode, sql);
//
//    }
    public static String replaceBlank(String str) {
        String dest = "";
@ -52,81 +40,31 @@ public class ServiceGateWay implements ServiceGateWayPortType {
        System.out.println("outType:" + outType);
        System.out.println("v:" + v);
        WSReturnModel wsReturnModel = new WSReturnModel();
        String xml = "";
        String xml;
        try {
            switch (api) {
                case "basic.BasicApi.QueryUserInfo": {
                    Document document = DocumentHelper.parseText(param.trim());
                    Element root = document.getRootElement();
                    Element data = root.element("Data");
                    xml = excuteService.QueryUserInfo(
                            StringUtil.isEmpty(root.element("TransactionCode").getText()) ? "" : root.element("TransactionCode").getText(),
                            StringUtil.isEmpty(data.element("CardType").getText()) ? "" : data.element("CardType").getText(),
                            StringUtil.isEmpty(data.element("CardNo").getText()) ? "" : data.element("CardNo").getText(),
                            StringUtil.isEmpty(data.element("Mobile").getText()) ? "" : data.element("Mobile").getText(),
                            StringUtil.isEmpty(data.element("PatientId").getText()) ? "" : data.element("PatientId").getText());
                    break;
                }
                case "report.ReportWs.GetReportInfo": {
                    Document document = DocumentHelper.parseText(param.trim());
                    Element root = document.getRootElement();
                    Element data = root.element("Data");
                    xml = excuteService.GetReportInfo(
                            StringUtil.isEmpty(root.element("TransactionCode").getText()) ? "" : root.element("TransactionCode").getText(),
                            StringUtil.isEmpty(data.element("ReportId").getText()) ? "" : data.element("ReportId").getText(),
                            StringUtil.isEmpty(data.element("ReportType").getText()) ? "" : data.element("ReportType").getText()
                    );
                    break;
                }
                case "yy.yygh.QueryRegInfo": {
                    Document document = DocumentHelper.parseText(param.trim());
                    Element root = document.getRootElement();
                    Element data = root.element("Data");
                    xml = excuteService.QueryRegInfo(
                            StringUtil.isEmpty(root.element("TransactionCode").getText()) ? "" : root.element("TransactionCode").getText(),
                            StringUtil.isEmpty(data.element("CardType").getText()) ? "" : data.element("CardType").getText(),
                            StringUtil.isEmpty(data.element("CardNo").getText()) ? "" : data.element("CardNo").getText(),
                            StringUtil.isEmpty(data.element("IdCardNo").getText()) ? "" : data.element("IdCardNo").getText(),
                            StringUtil.isEmpty(data.element("OrderId").getText()) ? "" : data.element("OrderId").getText(),
                            StringUtil.isEmpty(data.element("ClinicCard").getText()) ? "" : data.element("ClinicCard").getText(),
                            StringUtil.isEmpty(data.element("TimeSlice").getText()) ? "" : data.element("TimeSlice").getText(),
                            StringUtil.isEmpty(data.element("StartTime").getText()) ? "" : data.element("StartTime").getText(),
                            StringUtil.isEmpty(data.element("EndTime").getText()) ? "" : data.element("EndTime").getText(),
                            StringUtil.isEmpty(data.element("RegFlag").getText()) ? "" : data.element("RegFlag").getText()
                    );
                    break;
                }
                case "report.ReportWs.GetReportList": {
                case "yy.yygh.PushPrescribeCheckedEvent": {
                    Document document = DocumentHelper.parseText(param.trim());
                    Element root = document.getRootElement();
                    Element data = root.element("Data");
                    xml = excuteService.GetReportList(
                            StringUtil.isEmpty(root.element("TransactionCode").getText()) ? "" : root.element("TransactionCode").getText(),
                            StringUtil.isEmpty(data.element("CardType").getText()) ? "" : data.element("CardType").getText(),
                            StringUtil.isEmpty(data.element("CardNo").getText()) ? "" : data.element("CardNo").getText(),
                            StringUtil.isEmpty(data.element("EndDate").getText()) ? "" : data.element("EndDate").getText(),
                            StringUtil.isEmpty(data.element("Mobile").getText()) ? "" : data.element("Mobile").getText(),
                            StringUtil.isEmpty(data.element("PatientName").getText()) ? "" : data.element("PatientName").getText(),
                            StringUtil.isEmpty(data.element("ReportType").getText()) ? "" : data.element("ReportType").getText());
                    Thread thread = new QLCThread(data);
                    thread.run();
                    wsReturnModel.setTransactionCode("10000");
                    wsReturnModel.setRespMessage("成功");
                    xml = WSReturnModel.toXml(wsReturnModel);
                    break;
                }
                default: {
                    wsReturnModel.setTransactionCode("-10000");
                    wsReturnModel.setRespMessage("没有对应的API");
                    xml = "<Resp> \n" +
                            "<TransactionCode>" + api + "</TransactionCode> \n" +
                            "<RespCode>-10000</RespCode>\n" +
                            "<RespMessage>没有对应的API</RespMessage>\n" +
                            "</Resp>";
                    xml = WSReturnModel.toXml(wsReturnModel);
                }
            }
        } catch (Throwable e) {
            e.printStackTrace();
            return "<Resp> \n" +
                    "<TransactionCode>" + api + "</TransactionCode> \n" +
                    "<RespCode>-10000</RespCode>\n" +
                    "<RespMessage>参数错误:" + e.getMessage() + "</RespMessage>\n" +
                    "</Resp>";
            wsReturnModel.setTransactionCode("-10000");
            wsReturnModel.setRespMessage("请检查参数是否有问题,");
            xml = WSReturnModel.toXml(wsReturnModel);
        }
        return xml;
    }

+ 36 - 0
Hos-Resource-Rest/src/main/java/com/yihu/hos/ws/thread/QLCThread.java

@ -0,0 +1,36 @@
package com.yihu.hos.ws.thread;
import com.yihu.hos.resource.util.httpclient.HttpClientUtil;
import org.dom4j.Element;
import java.util.HashMap;
import java.util.Map;
/**
 * Created by lingfeng on 2016/6/23.
 */
public class QLCThread extends Thread{
    private HttpClientUtil httpClientUtil = new HttpClientUtil();
    private Element data;
    public QLCThread(Element data){
        this.data = data;
    }
    public void run() {
        Map<String, Object> paramsMap = new HashMap<>();
        Map<String, Object> params = new HashMap<>();
        params.put("EventType", data.element("EventType").getText());
        params.put("EventNo", data.element("EventNo").getText());
        params.put("CardType", data.element("CardType").getText());
        params.put("CardNo", data.element("CardNo").getText());
        params.put("PatientId", data.element("PatientId").getText());
        params.put("HospitalId", data.element("OrgCode").getText());
        paramsMap.put("api", "17");
        paramsMap.put("param", params.toString());
        try {
            String res = httpClientUtil.doPost("http://127.0.0.1:8081/gateway/transfer", paramsMap, null, null);
            System.out.println(res);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}