From 39ecb05c691553562b0a10a270d5095f0c0c9b9c Mon Sep 17 00:00:00 2001 From: wyb <1977763549@qq.com> Date: Mon, 12 Aug 2024 13:57:52 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E4=BD=9B=E5=B1=B1=E4=B8=89=E9=99=A2?= =?UTF-8?q?=E6=8E=A5=E6=94=B6=E6=B6=88=E6=81=AF=E7=BB=9F=E4=B8=80=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/docus/server/CxfConfig.java | 17 +++++++ .../message/consts/HospitalWsMethod.java | 10 +++++ .../FsSyWebServiceUnifyMessageService.java | 12 +++++ ...FsSyWebServiceUnifyMessageServiceImpl.java | 44 +++++++++++++++++++ .../SdWebServiceUnifyMessageServiceImpl.java | 4 +- .../{impl => }/UnifyMessageServiceImpl.java | 4 +- 6 files changed, 85 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/docus/server/message/service/FsSyWebServiceUnifyMessageService.java create mode 100644 src/main/java/com/docus/server/message/service/FsSyWebServiceUnifyMessageServiceImpl.java rename src/main/java/com/docus/server/message/service/{impl => }/SdWebServiceUnifyMessageServiceImpl.java (82%) rename src/main/java/com/docus/server/message/service/{impl => }/UnifyMessageServiceImpl.java (96%) diff --git a/src/main/java/com/docus/server/CxfConfig.java b/src/main/java/com/docus/server/CxfConfig.java index 40b476d..0284fcd 100644 --- a/src/main/java/com/docus/server/CxfConfig.java +++ b/src/main/java/com/docus/server/CxfConfig.java @@ -1,6 +1,7 @@ package com.docus.server; import com.docus.server.message.consts.HospitalWsMethod; +import com.docus.server.message.service.FsSyWebServiceUnifyMessageService; import com.docus.server.message.service.SdWebServiceUnifyMessageService; import com.docus.server.message.service.UnifyMessageService; import org.apache.cxf.Bus; @@ -22,6 +23,13 @@ public class CxfConfig { private SdWebServiceUnifyMessageService sdWebServiceUnifyMessageService; + private FsSyWebServiceUnifyMessageService fsSyWebServiceUnifyMessageService; + + @Autowired + public void setFsSyWebServiceUnifyMessageService(FsSyWebServiceUnifyMessageService fsSyWebServiceUnifyMessageService) { + this.fsSyWebServiceUnifyMessageService = fsSyWebServiceUnifyMessageService; + } + @Autowired public void setUnifyMessageService(UnifyMessageService unifyMessageService) { this.unifyMessageService = unifyMessageService; @@ -58,6 +66,15 @@ public class CxfConfig { return endpoint; } + @Bean + @Qualifier("fssyEndPoint") + public Endpoint fssyEndPoint() { + EndpointImpl endpoint = new EndpointImpl(springBus(), fsSyWebServiceUnifyMessageService); + endpoint.publish("/fssy"); + return endpoint; + } + + // @Bean // @Qualifier("wsRecordSubmitEndPoint") // public Endpoint wsRecordSubmitEndPoint() { diff --git a/src/main/java/com/docus/server/message/consts/HospitalWsMethod.java b/src/main/java/com/docus/server/message/consts/HospitalWsMethod.java index 685e852..4f3eb05 100644 --- a/src/main/java/com/docus/server/message/consts/HospitalWsMethod.java +++ b/src/main/java/com/docus/server/message/consts/HospitalWsMethod.java @@ -10,4 +10,14 @@ public interface HospitalWsMethod { * 电子病历提交信息推送 */ String WS_RECORD_SUBMIT = "WS_RECORD_SUBMIT"; + + /** + * 佛山三院用户推送 + */ + String WS_FSSY_USER = "WS_FSSY_USER"; + + /** + * 佛山三院科室推送 + */ + String WS_FSSY_DEPT = "WS_FSSY_DEPT"; } diff --git a/src/main/java/com/docus/server/message/service/FsSyWebServiceUnifyMessageService.java b/src/main/java/com/docus/server/message/service/FsSyWebServiceUnifyMessageService.java new file mode 100644 index 0000000..a322ce0 --- /dev/null +++ b/src/main/java/com/docus/server/message/service/FsSyWebServiceUnifyMessageService.java @@ -0,0 +1,12 @@ +package com.docus.server.message.service; + +import javax.jws.WebService; + +/** + * @author WYBDEV + */ +@WebService +public interface FsSyWebServiceUnifyMessageService { + + String pushInformation(String message); +} diff --git a/src/main/java/com/docus/server/message/service/FsSyWebServiceUnifyMessageServiceImpl.java b/src/main/java/com/docus/server/message/service/FsSyWebServiceUnifyMessageServiceImpl.java new file mode 100644 index 0000000..5302fff --- /dev/null +++ b/src/main/java/com/docus/server/message/service/FsSyWebServiceUnifyMessageServiceImpl.java @@ -0,0 +1,44 @@ +package com.docus.server.message.service; + +import com.docus.server.message.consts.HospitalWsMethod; +import com.docus.server.message.util.XmlUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.w3c.dom.Node; + +/** + * @author WYBDEV + */ +@Service +public class FsSyWebServiceUnifyMessageServiceImpl implements FsSyWebServiceUnifyMessageService{ + + private UnifyMessageService unifyMessageService; + + @Autowired + public void setUnifyMessageService(UnifyMessageService unifyMessageService) { + this.unifyMessageService = unifyMessageService; + } + + @Override + public String pushInformation(String message) { + String methodNamePath="/Request/Header/MethodName"; + String methodName; + try { + XmlUtil xmlUtil = XmlUtil.of(message); + Node node = xmlUtil.getNode(methodNamePath); + methodName = node.getTextContent(); + }catch (Exception ex){ + return "获取方法名出错:"+methodNamePath; + } + + if("AddDepts".equals(methodName)){ + return unifyMessageService.pushInformation(HospitalWsMethod.WS_FSSY_DEPT,message); + } + if("AddUsers".equals(methodName)){ + return unifyMessageService.pushInformation(HospitalWsMethod.WS_FSSY_USER,message); + } + return "未对接方法"+methodName+",请联系开发人员!"; + } + + +} diff --git a/src/main/java/com/docus/server/message/service/impl/SdWebServiceUnifyMessageServiceImpl.java b/src/main/java/com/docus/server/message/service/SdWebServiceUnifyMessageServiceImpl.java similarity index 82% rename from src/main/java/com/docus/server/message/service/impl/SdWebServiceUnifyMessageServiceImpl.java rename to src/main/java/com/docus/server/message/service/SdWebServiceUnifyMessageServiceImpl.java index c7aa500..b331cce 100644 --- a/src/main/java/com/docus/server/message/service/impl/SdWebServiceUnifyMessageServiceImpl.java +++ b/src/main/java/com/docus/server/message/service/SdWebServiceUnifyMessageServiceImpl.java @@ -1,8 +1,6 @@ -package com.docus.server.message.service.impl; +package com.docus.server.message.service; import com.docus.server.message.consts.HospitalWsMethod; -import com.docus.server.message.service.SdWebServiceUnifyMessageService; -import com.docus.server.message.service.UnifyMessageService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; diff --git a/src/main/java/com/docus/server/message/service/impl/UnifyMessageServiceImpl.java b/src/main/java/com/docus/server/message/service/UnifyMessageServiceImpl.java similarity index 96% rename from src/main/java/com/docus/server/message/service/impl/UnifyMessageServiceImpl.java rename to src/main/java/com/docus/server/message/service/UnifyMessageServiceImpl.java index 2da0034..ad057c7 100644 --- a/src/main/java/com/docus/server/message/service/impl/UnifyMessageServiceImpl.java +++ b/src/main/java/com/docus/server/message/service/UnifyMessageServiceImpl.java @@ -1,4 +1,4 @@ -package com.docus.server.message.service.impl; +package com.docus.server.message.service; import com.docus.core.util.Func; import com.docus.infrastructure.redis.service.IdService; @@ -11,8 +11,6 @@ import com.docus.server.message.enums.DataFormatEnum; import com.docus.server.message.mapper.UnifyMessageMapper; import com.docus.server.message.result.MessageInfo; import com.docus.server.message.result.ResultUtil; -import com.docus.server.message.service.MessageCarrier; -import com.docus.server.message.service.UnifyMessageService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;