Index: ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/mq/dao/gzs12rmyy/MQDataDaoImpl.java =================================================================== diff -u -r26762 -r31415 --- ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/mq/dao/gzs12rmyy/MQDataDaoImpl.java (.../MQDataDaoImpl.java) (revision 26762) +++ ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/mq/dao/gzs12rmyy/MQDataDaoImpl.java (.../MQDataDaoImpl.java) (revision 31415) @@ -4,7 +4,6 @@ import java.util.List; import org.apache.commons.collections.CollectionUtils; -import org.hibernate.action.internal.CollectionUpdateAction; import com.forgon.disinfectsystem.datasynchronization.model.OrgUnitVo; import com.forgon.disinfectsystem.datasynchronization.model.PatientInfoVO; @@ -40,7 +39,7 @@ @Override public OrgUnitVo[] getAllOrgUnitVoData() throws Exception { - List list = MQHelper.getDepartAndUserMessageFromMQ(); + List list = MQHelper.getDepartAndUserMessageFromMQ(MQHelper.DEPARTMQUEUE); if (list == null) return null; OrgUnitVo[] orgUnitVoArr = new OrgUnitVo[list.size()]; if (list != null && list.size() > 0) { @@ -56,7 +55,7 @@ @Override public UserVo[] getAllUserVoData() throws Exception { - List list = MQHelper.getDepartAndUserMessageFromMQ(); + List list = MQHelper.getDepartAndUserMessageFromMQ(MQHelper.USERMQUEUE); if (list == null) return null; UserVo[] userVoArr = new UserVo[list.size()]; if (list != null && list.size() > 0) { Index: ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/mq/dao/gzs12rmyy/MQHelper.java =================================================================== diff -u -r26320 -r31415 --- ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/mq/dao/gzs12rmyy/MQHelper.java (.../MQHelper.java) (revision 26320) +++ ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/mq/dao/gzs12rmyy/MQHelper.java (.../MQHelper.java) (revision 31415) @@ -54,6 +54,16 @@ private static String queueName; // 队列引用 private static MQQueue queue; + + /** + * 科室队列名称 + */ + public static final String DEPARTMQUEUE = "OUT.S023.MS025.LQ"; + + /** + * 人员队列名称 + */ + public static final String USERMQUEUE = "OUT.S023.MS024.LQ"; /** * 应用启动时初始化队列管理器连队列管理器 由于连接队列管理器如同连接数据一样,建立时需要资源较多, @@ -188,17 +198,21 @@ } /** - * 获取科室&人员字典 - * + * 获取科室字典 + * 服务器IP:192.168.2.180 + * 通道名称:IE.SVRCONN + * 端口:6000 + * 队列管理器:GWO.QM + * 人员队列:OUT.S023.MS024.LQ + * 科室队列:OUT.S023.MS025.LQ * @return * @throws Exception */ - private static List getDepartAndUserMessage() { + private static List getDepartAndUserMessage(String quename) { List messages = new ArrayList(); - String host = "192.168.2.152";// 平台地址 + String host = "192.168.2.180";// 平台地址 String channal = "IE.SVRCONN";// 通道名称 String qmn = "GWO.QM";// 目标队列管理器 - String quename = "OUT.S023.MS000.LQ";// 目标队列(科室、人员) boolean flag = true; // 初始化连接 try { @@ -227,7 +241,7 @@ try { destroyEnvironment(); } catch (Exception e) { - logger.info("getDepartAndUserMessage调用destroyEnvironment方法出错..."); + logger.info("getDepartMessage调用destroyEnvironment方法出错..."); e.printStackTrace(); } return messages; @@ -241,7 +255,7 @@ */ private static List getClinicPatientMessage() { List messages = new ArrayList(); - String host = "192.168.2.152";// 平台地址 + String host = "192.168.2.180";// 平台地址 String channal = "IE.SVRCONN";// 通道名称 String qmn = "GWO.QM";// 目标队列管理器 String quename = "OUT.S023.BS001.LQ";// 目标队列(住院病人、挂号病人) @@ -288,7 +302,7 @@ private static List getHospitalPatientMessage() { logger.info("调用getHospitalPatientMessage方法从消息队列获取“入院病人信息”..."); List messages = new ArrayList(); - String host = "192.168.2.152";// 平台地址 + String host = "192.168.2.180";// 平台地址 String channal = "IE.SVRCONN";// 通道名称 String qmn = "GWO.QM";// 目标队列管理器 String quename = "OUT.S023.BS310.LQ";// 目标队列(住院病人、挂号病人) @@ -369,9 +383,9 @@ * @return * @throws Exception */ - public static List getDepartAndUserMessageFromMQ() throws Exception { + public static List getDepartAndUserMessageFromMQ(String quequeName) throws Exception { // 获取科室&人员的消息队列 - List mqList = getDepartAndUserMessage(); + List mqList = getDepartAndUserMessage(quequeName); if ((mqList != null) && (mqList.size() > 0)) { List voList = new ArrayList(); for (String mqStr : mqList) { @@ -395,14 +409,14 @@ String msgId = (headJSON == null) ? null : headJSON.optString("msgId"); for (int i = 0; i < jsonArray.size(); i++) { // 4、第i个row - JSONObject obj = jsonArray.getJSONObject(i); + JSONObject obj = jsonArray.optJSONObject(i); if ("MS025".equals(msgId)) {// 科室 String coding = null; String name = null; String parentCoding = null; - coding = obj.getString("organizationid"); - name = obj.getString("name"); - parentCoding = obj.getString("parentorganizationid"); + coding = obj.optString("organizationid"); + name = obj.optString("name"); + parentCoding = obj.optString("parentorganizationid"); OrgUnitVo orgUnitVo = new OrgUnitVo(); orgUnitVo.setCoding(coding); orgUnitVo.setName(name); @@ -414,9 +428,9 @@ String coding = null; String name = null; String orgUnitCoding = null; - coding = obj.getString("employeeid"); - name = obj.getString("name"); - orgUnitCoding = obj.getString("organizationid"); + coding = obj.optString("employeeid"); + name = obj.optString("name"); + orgUnitCoding = obj.optString("organizationid"); UserVo userVo = new UserVo(); userVo.setCoding(coding); userVo.setName(name);