diff --git a/platform-biz-service/src/main/resources/mainOrm/master/MasterLis.xml b/platform-biz-service/src/main/resources/mainOrm/master/MasterLis.xml index a533a85..9b24239 100644 --- a/platform-biz-service/src/main/resources/mainOrm/master/MasterLis.xml +++ b/platform-biz-service/src/main/resources/mainOrm/master/MasterLis.xml @@ -30,7 +30,7 @@ #{type}, #{vcCardNo}, #{name}, - #{ bhnum}, + #{bhnum}, #{age}, #{sex}, #{applyTime}, diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/ConnTools.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/ConnTools.java index c28286f..1ab7070 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/ConnTools.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/ConnTools.java @@ -35,6 +35,12 @@ public class ConnTools { private static String fmUser = "LYMS"; private static String fmPassword = "LYMS"; + + private static String clDirverClassName = "oracle.jdbc.driver.OracleDriver"; + private static String clUrl = "jdbc:oracle:thin:@168.254.0.80:1521:jhemr"; + private static String clUser = "lyms"; + private static String clPassword = "lyms"; + public static Connection makeHisConnection() { Connection conn = null; try { @@ -96,4 +102,20 @@ public class ConnTools { } + + public static Connection makeClConnection() { + Connection conn = null; + try { + Class.forName(clDirverClassName); + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } + try { + conn = DriverManager.getConnection(clUrl, clUser, clPassword); + } catch (SQLException e) { + e.printStackTrace(); + } + return conn; + } + } diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/MeasurePatientInfo.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/MeasurePatientInfo.java new file mode 100644 index 0000000..561cb2d --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/MeasurePatientInfo.java @@ -0,0 +1,97 @@ +package com.lyms.hospitalapi.qhdfy; + +/** + * Created by Administrator on 2018-01-22. + */ +public class MeasurePatientInfo { + private String patientId; + private String userName; + private String certType; + private String certNo; + private String sex; + private String age; + private String vcCardNo; + private String phone; + private String zyNo; + private String visitId; + + public String getPatientId() { + return patientId; + } + + public void setPatientId(String patientId) { + this.patientId = patientId; + } + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public String getCertType() { + return certType; + } + + public void setCertType(String certType) { + this.certType = certType; + } + + public String getCertNo() { + return certNo; + } + + public void setCertNo(String certNo) { + this.certNo = certNo; + } + + public String getSex() { + return sex; + } + + public void setSex(String sex) { + this.sex = sex; + } + + public String getAge() { + return age; + } + + public void setAge(String age) { + this.age = age; + } + + public String getVcCardNo() { + return vcCardNo; + } + + public void setVcCardNo(String vcCardNo) { + this.vcCardNo = vcCardNo; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getZyNo() { + return zyNo; + } + + public void setZyNo(String zyNo) { + this.zyNo = zyNo; + } + + public String getVisitId() { + return visitId; + } + + public void setVisitId(String visitId) { + this.visitId = visitId; + } +} 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 662cfe4..b38d484 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 @@ -730,27 +730,28 @@ public class BabyBookbuildingFacade { } - final String bId = model.getId(); + String bId = model.getId(); if (model == null || bId == null) { br.setErrorcode(ErrorCodeConstants.SYSTEM_ERROR); br.setErrormsg("保存失败"); return br; } - //创建建档短信、推送/业务推广 - new Thread(new Runnable() { - @Override - public void run() { - BabyModelQuery babyQuery = new BabyModelQuery(); - babyQuery.setYn(YnEnums.YES.getId()); - babyQuery.setId(bId); - List list = babyBookbuildingService.queryBabyBuildByCond(babyQuery); - if (CollectionUtils.isNotEmpty(list)) - { - createBuildMsg(list.get(0)); -// createExtensionMsg(list.get(0)); - } - } - },"babyBuildMsgThead").start(); + //创建建档短信 + createBuildMsg(model); +// new Thread(new Runnable() { +// @Override +// public void run() { +// BabyModelQuery babyQuery = new BabyModelQuery(); +// babyQuery.setYn(YnEnums.YES.getId()); +// babyQuery.setId(bId); +// List list = babyBookbuildingService.queryBabyBuildByCond(babyQuery); +// if (CollectionUtils.isNotEmpty(list)) +// { +// createBuildMsg(list.get(0)); +//// createExtensionMsg(list.get(0)); +// } +// } +// },"babyBuildMsgThead").start(); br.setErrorcode(ErrorCodeConstants.SUCCESS); br.setErrormsg("成功"); br.setData(bId); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MeasureInfoFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MeasureInfoFacade.java index cfcf56f..5c59474 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MeasureInfoFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MeasureInfoFacade.java @@ -1,5 +1,7 @@ package com.lyms.platform.operate.web.facade; +import com.lyms.hospitalapi.pojo.PregPatientinfo; +import com.lyms.hospitalapi.qhdfy.MeasurePatientInfo; import com.lyms.platform.biz.service.BasicConfigService; import com.lyms.platform.biz.service.DataPermissionService; import com.lyms.platform.common.constants.ErrorCodeConstants; @@ -8,6 +10,7 @@ import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.common.utils.ExceptionUtils; import com.lyms.platform.operate.web.request.MeasureInfoRequest; import com.lyms.platform.operate.web.result.MeasureInfoResult; import com.lyms.platform.permission.model.Organization; @@ -18,10 +21,14 @@ import com.lyms.platform.pojo.MeasureInfoModel; import com.lyms.platform.query.DataPermissionsModelQuery; import com.lyms.platform.query.MeasureInfoQuery; import org.apache.commons.collections.CollectionUtils; +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.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.sql.Connection; import java.util.*; /** @@ -171,7 +178,12 @@ public class MeasureInfoFacade { model.setRecordTime(new Date()); model.setModified(new Date()); model.setId(measureInfoModel.getId()); - model.setRecordCount(measureInfoModel.getRecordCount()+1); + model.setRecordCount(measureInfoModel.getRecordCount() + 1); + if ("216".equals(model.getHospitalId())) + { + //把住院号转换成病人id + model.setZyNo(getPatientIdByZyNo(model.getZyNo(), model.getVisitId())); + } mysqlMeasureInfoService.updateMeasureInfo(model); } else @@ -180,6 +192,11 @@ public class MeasureInfoFacade { model.setCreated(new Date()); model.setModified(new Date()); model.setTodayCount(todayCount); + if ("216".equals(model.getHospitalId())) + { + //把住院号转换成病人id + model.setZyNo(getPatientIdByZyNo(model.getZyNo(), model.getVisitId())); + } mysqlMeasureInfoService.addMeasureInfo(model); } } @@ -208,6 +225,28 @@ public class MeasureInfoFacade { return map; } + public String getPatientIdByZyNo(String zyNo,String zyCs) + { + Connection conn = com.lyms.hospitalapi.qhdfy.ConnTools.makeClConnection(); + try { + QueryRunner queryRunner = new QueryRunner(); + List list = queryRunner.query(conn, " select ZJH as certNo,XM as userName,NL as age,XB as sex,SJH as phone,INP_NO as zyNo,visit_id as visitId,PATIENT_ID as patientId from lyms where INP_NO='"+zyNo + +"' and visit_id='"+zyCs+"' order by visit_id desc", new BeanListHandler(MeasurePatientInfo.class)); + if (CollectionUtils.isNotEmpty(list)) + { + MeasurePatientInfo model = list.get(0); + return model.getPatientId(); + } + }catch (Exception e) + { + ExceptionUtils.catchException(e,"查询基本信息出错"); + }finally { + DbUtils.closeQuietly(conn); + } + return ""; + } + + public BaseResponse updateMeasureInfo(MeasureInfoRequest measureInfoRequest) { MeasureInfoModel model = getModel(measureInfoRequest); MeasureInfoQuery query = new MeasureInfoQuery(); @@ -260,26 +299,68 @@ public class MeasureInfoFacade { public Map queryClBaseInfo(String certType, String certNo,String hospitalId) { Map map = new HashMap<>(); - MeasureInfoQuery query = new MeasureInfoQuery(); - query.setHospitalId(hospitalId); - query.setCertType(certType); - query.setCertNo(certNo); - query.setSort(" record_time desc "); - query.setNeed("true"); - List list = mysqlMeasureInfoService.queryMeasureInfoList(query); - if (CollectionUtils.isNotEmpty(list)) + System.out.println("certType=" + certType + ";certNo=" + certNo + ";hospitalId="+hospitalId); + if ("216".equals(hospitalId)) { - MeasureInfoModel model = list.get(0); - map.put("userName",model.getUserName() == null ? "" : model.getUserName()); - map.put("certType",model.getCertType() == null ? "" : model.getCertType()); - map.put("certNo",model.getCertNo() == null ? "" : model.getCertNo()); - map.put("sex",String.valueOf(model.getSex())); - map.put("age",model.getAge() == null ? "" : String.valueOf(model.getAge())); - map.put("vcCardNo",model.getVcCardNo() == null ? "" : model.getVcCardNo()); - map.put("phone",model.getPhone() == null ? "" : model.getPhone()); - map.put("zyNo",model.getZyNo() == null ? "" : model.getZyNo()); - map.put("visitId",model.getVisitId() == null ? "" : model.getVisitId()); + Connection conn = com.lyms.hospitalapi.qhdfy.ConnTools.makeClConnection(); + try { + QueryRunner queryRunner = new QueryRunner(); + List list = queryRunner.query(conn, "select ZJH as certNo,XM as userName,NL as age,XB as sex,SJH as phone,INP_NO as zyNo,visit_id as visitId from lyms where ZJH='"+certNo+"' order by visit_id desc ", new BeanListHandler(MeasurePatientInfo.class)); + if (CollectionUtils.isNotEmpty(list)) + { + MeasurePatientInfo model = list.get(0); + map.put("userName",model.getUserName() == null ? "" : model.getUserName()); + map.put("certType",certType); + map.put("certNo",model.getCertNo() == null ? "" : model.getCertNo()); + map.put("sex","女".equals(model.getSex().trim()) ? "0" : "1"); + String age = ""; + if (StringUtils.isNotEmpty(model.getAge())) + { + try { + age = model.getAge().substring(0,model.getAge().length() - 1); + Integer.valueOf(age); + }catch (Exception e) + { + System.out.print(model.getAge()+":年龄解析错误"+e.toString()); + } + } + map.put("age",age); + map.put("vcCardNo",model.getVcCardNo() == null ? "" : model.getVcCardNo()); + map.put("phone",model.getPhone() == null ? "" : model.getPhone()); + map.put("zyNo",model.getZyNo() == null ? "" : model.getZyNo()); + map.put("visitId",model.getVisitId() == null ? "" : model.getVisitId()); + } + }catch (Exception e) + { + ExceptionUtils.catchException(e,"查询基本信息出错"); + }finally { + DbUtils.closeQuietly(conn); + } + } + else + { + MeasureInfoQuery query = new MeasureInfoQuery(); + query.setHospitalId(hospitalId); + query.setCertType(certType); + query.setCertNo(certNo); + query.setSort(" record_time desc "); + query.setNeed("true"); + List list = mysqlMeasureInfoService.queryMeasureInfoList(query); + if (CollectionUtils.isNotEmpty(list)) + { + MeasureInfoModel model = list.get(0); + map.put("userName",model.getUserName() == null ? "" : model.getUserName()); + map.put("certType",model.getCertType() == null ? "" : model.getCertType()); + map.put("certNo",model.getCertNo() == null ? "" : model.getCertNo()); + map.put("sex",String.valueOf(model.getSex())); + map.put("age",model.getAge() == null ? "" : String.valueOf(model.getAge())); + map.put("vcCardNo",model.getVcCardNo() == null ? "" : model.getVcCardNo()); + map.put("phone",model.getPhone() == null ? "" : model.getPhone()); + map.put("zyNo",model.getZyNo() == null ? "" : model.getZyNo()); + map.put("visitId",model.getVisitId() == null ? "" : model.getVisitId()); + } } return map; } } +