From 9747a1cdfdf23f5ec9b7385a2d61ce32085ee23d Mon Sep 17 00:00:00 2001 From: hanshaofeng Date: Thu, 3 Nov 2016 17:42:15 +0800 Subject: [PATCH] hahahah --- .../java/com/lyms/hospitalapi/fnfy/ConnTools.java | 32 +++++++++ .../com/lyms/hospitalapi/fnfy/FnfyHisService.java | 84 ++++++++++++++++++++++ .../operate/web/facade/BabyBookbuildingFacade.java | 6 ++ .../operate/web/facade/BookbuildingFacade.java | 8 +++ .../src/main/resources/config.properties | 2 +- 5 files changed, 131 insertions(+), 1 deletion(-) create mode 100644 platform-operate-api/src/main/java/com/lyms/hospitalapi/fnfy/ConnTools.java create mode 100644 platform-operate-api/src/main/java/com/lyms/hospitalapi/fnfy/FnfyHisService.java diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/fnfy/ConnTools.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/fnfy/ConnTools.java new file mode 100644 index 0000000..08ea4bf --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/fnfy/ConnTools.java @@ -0,0 +1,32 @@ +package com.lyms.hospitalapi.fnfy; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; + +/** + * Created by Administrator on 2016/9/9 0009. + * 抚宁妇幼 + * + */ +public class ConnTools { + private static String hisDirverClassName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; + private static String hisUrl = "jdbc:sqlserver://192.168.0.105\\SQL2008; DatabaseName=his_oltp_db"; + private static String hisUser = "sa"; + private static String hisPassword = "fnfyHIS@2014"; + + public static Connection makeHisConnection() { + Connection conn = null; + try { + Class.forName(hisDirverClassName); + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } + try { + conn = DriverManager.getConnection(hisUrl, hisUser, hisPassword); + } catch (SQLException e) { + e.printStackTrace(); + } + return conn; + } +} diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/fnfy/FnfyHisService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/fnfy/FnfyHisService.java new file mode 100644 index 0000000..cb9e2ee --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/fnfy/FnfyHisService.java @@ -0,0 +1,84 @@ +package com.lyms.hospitalapi.fnfy; + +import com.lyms.hospitalapi.pojo.*; +import com.lyms.platform.common.utils.DateUtil; +import org.apache.commons.dbutils.DbUtils; +import org.apache.commons.dbutils.QueryRunner; +import org.apache.commons.dbutils.handlers.BeanListHandler; +import org.apache.commons.lang.StringUtils; +import org.springframework.stereotype.Service; + +import java.sql.Connection; +import java.sql.SQLException; +import java.util.*; + +/** + * Created by Administrator on 2016/9/9 0009. + */ +@Service("fnfyHisService") +public class FnfyHisService { + + public Map getPatientInfo(String cardNo){ + Map map = new HashMap<>(); + if (StringUtils.isNotBlank(cardNo)) { + Connection conn = ConnTools.makeHisConnection(); + QueryRunner queryRunner = new QueryRunner(); + try { + List list = queryRunner.query(conn, "select top 1 brid as P_ID,jzkh as P_CARDNO,hzxm as P_NAME, hzxb as P_SEX, hzcsrq as P_BIRTHDAY, sfzhm as P_IDNUM, hz_lxdh as P_MOBILEPHONE from ykt_cmain_hzjbxx where jzkh= '"+cardNo+"'", new BeanListHandler(PregPatientinfo.class)); + if (list.size() > 0) { + PregPatientinfo info = list.get(0); + map.put("sickType", info.getSICKTYPE()); + map.put("bhnum", info.getP_BHNUM()); + if ("1".equals(info.getP_SEX())) { + map.put("sex", "男"); + } else if ("2".equals(info.getP_SEX())) { + map.put("sex", "女"); + } + map.put("name", info.getP_NAME()); + map.put("cardNo", info.getP_CARDNO()); + map.put("phone", info.getP_MOBILEPHONE()); + map.put("birth", DateUtil.getyyyy_MM_dd(info.getP_BIRTHDAY())); + } + DbUtils.closeQuietly(conn); + } catch (SQLException e) { + DbUtils.closeQuietly(conn); + e.printStackTrace(); + } + } + return map; + } + + public List> getPatientInfoList(String cardNo){ + List> result = new ArrayList<>(); + if (StringUtils.isNotBlank(cardNo)) { + Connection conn = ConnTools.makeHisConnection(); + QueryRunner queryRunner = new QueryRunner(); + try { + List list = queryRunner.query(conn, "select top 1 brid as P_ID,jzkh as P_CARDNO,hzxm as P_NAME, hzxb as P_SEX, hzcsrq as P_BIRTHDAY, sfzhm as P_IDNUM, hz_lxdh as P_MOBILEPHONE from ykt_cmain_hzjbxx where jzkh= '"+cardNo+"'", new BeanListHandler(PregPatientinfo.class)); + if (list.size() > 0) { + for (PregPatientinfo info:list) { + Map map = new HashMap<>(); + map.put("sickType", info.getSICKTYPE()); + map.put("bhnum", info.getP_BHNUM()); + if ("1".equals(info.getP_SEX())) { + map.put("sex", "男"); + } else if ("2".equals(info.getP_SEX())) { + map.put("sex", "女"); + } + map.put("name", info.getP_NAME()); + map.put("cardNo", info.getP_CARDNO()); + map.put("phone", info.getP_MOBILEPHONE()); + map.put("birth", DateUtil.getyyyy_MM_dd(info.getP_BIRTHDAY())); + result.add(map); + } + } + DbUtils.closeQuietly(conn); + } catch (SQLException e) { + DbUtils.closeQuietly(conn); + e.printStackTrace(); + } + } + return result; + } + +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java index a4d8a11..6b16938 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java @@ -1,5 +1,6 @@ package com.lyms.platform.operate.web.facade; +import com.lyms.hospitalapi.fnfy.FnfyHisService; import com.lyms.hospitalapi.qinglongxian.QingLongXianHisService; import com.lyms.hospitalapi.v2.HisService; import com.lyms.platform.biz.service.*; @@ -45,6 +46,9 @@ public class BabyBookbuildingFacade { @Autowired private QingLongXianHisService qingLongXianHisService; + @Autowired + private FnfyHisService fnfyHisService; + @Autowired private BabyBookbuildingService babyBookbuildingService; @@ -1273,6 +1277,8 @@ public class BabyBookbuildingFacade { map.put("hisPatient", hisServiceV2.getPatientInfoList(param.getVcCardNo())); } else if ("3".equals(HIS_VERSION)) { map.put("hisPatient", qingLongXianHisService.getPatientInfoList(param.getVcCardNo())); + } else if ("5".equals(HIS_VERSION)) { + map.put("hisPatient", fnfyHisService.getPatientInfoList(param.getVcCardNo())); } } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java index dcc1ccd..ae1b0d2 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java @@ -1,5 +1,6 @@ package com.lyms.platform.operate.web.facade; +import com.lyms.hospitalapi.fnfy.FnfyHisService; import com.lyms.hospitalapi.qinglongxian.QingLongXianHisService; import com.lyms.hospitalapi.v2.HisService; import com.lyms.platform.biz.dal.IPersonDao; @@ -89,6 +90,11 @@ public class BookbuildingFacade { @Autowired private QingLongXianHisService qingLongXianHisService; + + @Autowired + private FnfyHisService fnfyHisService; + + @Autowired private DeleteProcessHandler deleteProcessHandler; @@ -558,6 +564,8 @@ public class BookbuildingFacade { typeMap.put("hisPatient", hisServiceV2.getPatientInfoList(bookbuildingQueryRequest.getVcCardNo())); } else if ("3".equals(HIS_VERSION)) { typeMap.put("hisPatient", qingLongXianHisService.getPatientInfoList(bookbuildingQueryRequest.getVcCardNo())); + } else if ("5".equals(HIS_VERSION)) { + typeMap.put("hisPatient", fnfyHisService.getPatientInfoList(bookbuildingQueryRequest.getVcCardNo())); } } } diff --git a/platform-operate-api/src/main/resources/config.properties b/platform-operate-api/src/main/resources/config.properties index 6c08d96..fc5270b 100644 --- a/platform-operate-api/src/main/resources/config.properties +++ b/platform-operate-api/src/main/resources/config.properties @@ -7,7 +7,7 @@ center_token=e0c56363-00d6-42ee-bbe0-23c553583062 -#His系统版本 0:未使用,1:桓台,2:新乐,3:青龙县医院,4:秦皇岛妇幼 +#His系统版本 0:未使用,1:桓台,2:新乐,3:青龙县医院,4:秦皇岛妇幼,5:抚宁妇幼 his_version=0 #统计中心url -- 1.8.3.1