diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/CdGwInterface.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/CdGwInterface.java index 54da598..737088a 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/CdGwInterface.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/CdGwInterface.java @@ -1,38 +1,120 @@ package com.lyms.hospitalapi.Cdfy; import com.lyms.hospitalapi.pojo.HealthRecord; +import com.lyms.platform.biz.service.BasicConfigService; +import com.lyms.platform.common.constants.ErrorCodeConstants; +import com.lyms.platform.common.result.BaseObjectResponse; +import com.lyms.platform.common.utils.PropertiesUtil; +import com.lyms.platform.operate.web.utils.CommonsHelper; import com.lyms.platform.pojo.Patients; +import org.apache.commons.dbutils.DbUtils; +import org.apache.commons.dbutils.QueryRunner; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.sql.Connection; + /** - * Created by Administrator on 2018/4/18. + * Created by Administrator on 2018/5/21. * 承德公共卫生系统接口(gxk) + * 保存个人基本信息,保存地址信息 */ @Service("cdGwInterface") public class CdGwInterface { - //保存孕妇建档(更新健康档案暂时不支持) - private static String jdUrl = "http://gxgg.greatsoft.net:8083/maternal/personInfo/savePersonInfo"; + @Autowired + private BasicConfigService basicConfigService; + + public BaseObjectResponse saveBaseInfo(Patients patient,String hosipitalId){ + + //户籍地址 + String hjSheng = CommonsHelper.getName1(patient.getProvinceId(),basicConfigService); + String hjShi = CommonsHelper.getName1(patient.getCityId(),basicConfigService); + String hjXian = CommonsHelper.getName1(patient.getAreaId(), basicConfigService); + String hjXiang = CommonsHelper.getName1(patient.getStreetId(),basicConfigService); + + //居住地址 + String jzSheng = CommonsHelper.getName1(patient.getProvinceRegisterId(),basicConfigService); + String jzShi = CommonsHelper.getName1(patient.getCityRegisterId(),basicConfigService); + String jzXian = CommonsHelper.getName1(patient.getAreaRegisterId(),basicConfigService); + String jzXiang = CommonsHelper.getName1(patient.getStreetRegisterId(),basicConfigService); + + //产后居住地 + String chSheng = CommonsHelper.getName1(patient.getProvincePostRestId(),basicConfigService); + String chShi = CommonsHelper.getName1(patient.getCityPostRestId(),basicConfigService); + String chXian = CommonsHelper.getName1(patient.getAreaPostRestId(),basicConfigService); + String chXiang = CommonsHelper.getName1(patient.getStreetPostRestId(),basicConfigService); + + BaseObjectResponse br = new BaseObjectResponse(); + Connection conn = ConnTools.makeGwConnection(); + QueryRunner queryRunner = new QueryRunner(); + //个人基本信息语句 + String inBaseInfoSql = "insert into baseinfo(ORG_CODE,PATIENT_ID,CARD_NO,CARD_TYPE_CODE,NAME,\n" + + "SEX_CODE,BIRTH_DATE,ID_TYPE_CODE,ID_NO,EMPLOYER_NAME,TEL_NO,\n" + + "CONTACT_NAME,CONTACT_TEL_NO,NATIONALITY_CODE,ABO_CODE,RH_CODE,\n" + + "EDUCATION_CODE,OCCUPATION_CODE,MARRIAGE_CODE,DRUG_ALLERGY_MARK,OP_HISTORY_MARK,TRAUMA_HISTORY_MARK,\n" + + "BLOOD_TRANSF_MARK,GENETIC_DISEASE_HISTORY,OPERATION_HISTORY,Sec_Type_Code,Employer_Tel_No,DELETE_MARK)\n" + + "vakues("+patient.getHospitalId()+","+patient.getId()+","+patient.getVcCardNo()+",'03',"+patient.getUsername()+",\n" + + "'2',"+patient.getBirth()+",'01',"+patient.getCardNo()+","+patient.getPworkUnit()+","+patient.getPhone()+",\n" + + ""+patient.getHusbandName()+","+patient.getHusbandPhone()+","+patient.getPnationId()+",'5','4',\n" + + "'',"+patient.getPprofessionTypeId()+",'20','0','0','0',\n" + + "'9','无','无','01','无','0')"; + //地址信息语句,01:户籍地址 + String inAddressSql01 = "insert into baseinfo_address(ORG_CODE,PATIENT_ID,Address_Type_Code,Addr_Province,Addr_City,\n" + + "Addr_County,Addr_Town,Addr_Village,Addr_House_No,Postal_Code,DELETE_MARK) \n" + + "values("+patient.getHospitalId()+","+patient.getId()+",'01',"+hjSheng+","+hjShi+",\n" + + ""+hjXian+","+hjXiang+","+patient.getAddress()+","+patient.getAddress()+",'','0')"; - public String saveRecord(Patients patient,String hosipitalId){ + //地址信息语句,03:居住地址 + String inAddressSql03 = "insert into baseinfo_address(ORG_CODE,PATIENT_ID,Address_Type_Code,Addr_Province,Addr_City,\n" + + "Addr_County,Addr_Town,Addr_Village,Addr_House_No,Postal_Code,DELETE_MARK) \n" + + "values("+patient.getHospitalId()+","+patient.getId()+",'03',"+jzSheng+","+jzShi+",\n" + + ""+jzXian+","+jzXiang+","+patient.getAddressRegister()+","+patient.getAddressRegister()+",'','0')"; + //地址信息语句,07:产后居住地 + String inAddressSql07 = "insert into baseinfo_address(ORG_CODE,PATIENT_ID,Address_Type_Code,Addr_Province,Addr_City,\n" + + "Addr_County,Addr_Town,Addr_Village,Addr_House_No,Postal_Code,DELETE_MARK) \n" + + "values("+patient.getHospitalId()+","+patient.getId()+",'07',"+chSheng+","+chShi+",\n" + + ""+chXian+","+chXiang+","+patient.getAddressPostRest()+","+patient.getAddressPostRest()+",'','0')"; + try{ + //执行插入个人基本信息表(BASEINFO) + int result = queryRunner.update(conn,inBaseInfoSql); + if(result > 0){ + int adress01 = queryRunner.update(conn,inAddressSql01); + if(adress01 > 0){ + int adress03 = queryRunner.update(conn,inAddressSql03); + if(adress03 > 0){ + int adress07 = queryRunner.update(conn,inAddressSql07); + if(adress07 > 0){ + br.setErrorcode(ErrorCodeConstants.SUCCESS); + br.setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION); + return br; + }else{ + br.setErrorcode(-1); + br.setErrormsg("产后居住地址信息保存有误!"); + return br; + } + }else{ + br.setErrorcode(-1); + br.setErrormsg("居住地址信息保存有误!"); + return br; + } + }else { + br.setErrorcode(-1); + br.setErrormsg("户籍地址信息保存有误!"); + return br; + } - HealthRecord HealthRecord = new HealthRecord(); - HealthRecord.setPersonInfoId(""); - HealthRecord.setName(patient.getUsername()); - HealthRecord.setPinYinStr("无"); - HealthRecord.setIdNo(patient.getCardNo()); - HealthRecord.setTelNo(patient.getPhone()); - HealthRecord.setBirthday(patient.getBirth()); - HealthRecord.setAddress(""); + } + }catch (Exception e){ + e.printStackTrace(); + }finally { + DbUtils.closeQuietly(conn); + } - HealthRecord.setIsAppCreate("9"); - HealthRecord.setRemarks("无"); - HealthRecord.setModifier(""); - HealthRecord.setModifierId(""); return null; diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/ConnTools.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/ConnTools.java index 70737c2..53b9c03 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/ConnTools.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/ConnTools.java @@ -15,6 +15,14 @@ public class ConnTools { private static String hisPassword = "his"; + private static String gwDirverClassName = "oracle.jdbc.driver.OracleDriver"; + private static String gwUrl = "jdbc:oracle:thin:@10.0.255.18:1521:fycehr"; + private static String gwUser = "FYCEHR"; + private static String gwPassword = "fycehr"; + + + + public static Connection makeHisConnection() { Connection conn = null; try { @@ -30,4 +38,23 @@ public class ConnTools { return conn; } + + public static Connection makeGwConnection() { + Connection conn = null; + try { + Class.forName(gwDirverClassName); + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } + try { + conn = DriverManager.getConnection(gwUrl, gwUser, gwPassword); + } catch (SQLException e) { + e.printStackTrace(); + } + return conn; + } + + + + } diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/zcfy/ConnTools.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/zcfy/ConnTools.java index bda68d7..baff3fa 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/zcfy/ConnTools.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/zcfy/ConnTools.java @@ -19,6 +19,12 @@ public class ConnTools { private static String fmUser = "lymsfm"; private static String fmPassword = "lyms123"; + private static String czDirverClassName = "com.mysql.jdbc.Driver"; + private static String czUrl = "jdbc:mysql://:119.90.57.26:3306/platform"; + private static String czUser = "platform"; + private static String czPassword = "platform123"; + + public static Connection makeHisConnection() { Connection conn = null; @@ -55,4 +61,24 @@ public class ConnTools { } + /** + * 诸城初诊,复诊连接源 + * @return + */ + public static Connection makeCzConnection() { + Connection conn = null; + try { + Class.forName(czDirverClassName); + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } + try { + conn = DriverManager.getConnection(czUrl, czUser, czPassword); + } catch (SQLException e) { + e.printStackTrace(); + } + return conn; + } + + } diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/zcfy/ZcPrenatalService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/zcfy/ZcPrenatalService.java new file mode 100644 index 0000000..8039df7 --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/zcfy/ZcPrenatalService.java @@ -0,0 +1,153 @@ +package com.lyms.hospitalapi.zcfy; + +import com.lyms.platform.biz.service.PatientsService; +import com.lyms.platform.common.constants.ErrorCodeConstants; +import com.lyms.platform.common.result.BaseListResponse; +import com.lyms.platform.common.result.BaseObjectResponse; +import com.lyms.platform.operate.web.facade.ViewFacade; +import com.lyms.platform.pojo.AntExChuModel; +import com.lyms.platform.pojo.Patients; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.List; +import java.util.Map; + +/** + * 诸城初诊复诊接口(GXK) + * Created by Administrator on 2018/6/17. + */ +@Service("zcPrenatalService") +public class ZcPrenatalService { + + @Autowired + private PatientsService patientsService; + @Autowired + private ViewFacade viewFacade; + + //初诊 + public BaseObjectResponse saveAntexChu(AntExChuModel antExChuModel) { + + PreparedStatement ps = null; + ResultSet rs = null; + Connection conn = ConnTools.makeCzConnection(); + int count = 0; + + try { + //首先查询孕妇的基本信息(就诊卡号,身份证,电话号码),以便于对方查询数据 + Patients patients = patientsService.findOnePatientById(antExChuModel.getParentId()); + + BaseObjectResponse br = viewFacade.findAntExChu(antExChuModel.getId()); + + if (br.getData() != null && patients != null) { + + if (StringUtils.isNotEmpty(antExChuModel.getId())) { + + String slSql = "select count(*) from lyms_zccz where id = " + antExChuModel.getId() + ""; + ps=conn.prepareStatement(slSql); + rs=ps.executeQuery(); + if(rs.next()){ + count=rs.getInt(1); + } + if(count > 0){//更新数据 + + String upSql = "delete from lyms_zccz where id ="+antExChuModel.getId()+""; + ps = conn.prepareStatement(upSql); + int delCount = ps.executeUpdate(); + if(delCount == 1){ + System.out.print("旧数据删除成功!"); + } + + } + + //新增数据 + Map map = (Map)br.getData(); + List> list = (List)map.get("placentas"); + String fetalPosition = null; + String heartRate = null; + String fetalPresentation = null; + String join1 = null; + + if(list != null && list.size()>0){ + fetalPosition = list.get(0).get("fetalPosition").toString();//胎方位 + heartRate = list.get(0).get("heartRate").toString();//心率 + fetalPresentation = list.get(0).get("fetalPresentation").toString();//胎先露 + join1 = list.get(0).get("join").toString();//衔接 + + } + String inSql = "insert into lyms_zccz(id,name,idcard,vccardno,\n" + + "phone,genRemark,gynRemark,treatmentOpinion3,\n" + + "quicken,quickenRemark,resultSupple,syjgSelect,\n" + + "hivktSelect,neoDeathTodo,birthDefectTodo,neoDeath,\n" + + "birthDefect,dueDate,lastMenses,bg,pastHistory,\n" + + "familyHistory,personalHistory,ymjzHistory,ywgmHistory,\n" + + "fksxHistory,ysfyHistory,cestationInfo,hHealthInfo,\n" + + "pregnancyTimes,prodTime,delivery,planedProd,\n" + + "abortion,stillbirth,stillChan,height,weight,\n" + + "yqWeight,baricIndex,bp,heart,lungs,\n" + + "vulva,vagina,cervical,uterus,fujian,\n" + + "gonggao,fuwei,edema,tireNumber,xhdb,\n" + + "bxbjs,platelet,chgOther,ndb,nt,\n" + + "urineKetone,bld,ncgOther,abo,rh,\n" + + "bloodSugar,xqgbzam,xqgczam,albumin,totalBilirubin,\n" + + "jhBilirubin,ygbmky,ygbmkt,ygeky,ygekt,\n" + + "yghxkt,xqjq,xnsd,hivkt,ydfmw,ydqjd,\n" + + "bChao,heartRate,fetalPosition,fetalPresentation,join1) " + + "values("+antExChuModel.getId()+","+patients.getUsername()+","+patients.getCardNo()+","+patients.getVcCardNo()+",\n" + + ""+patients.getPhone()+","+map.get("genRemark")+","+map.get("gynRemark")+","+map.get("treatmentOpinion3")+",\n" + + ""+map.get("quicken")+","+map.get("quickenRemark")+","+map.get("resultSupple")+","+map.get("syjgSelect")+",\n" + + ""+map.get("hivktSelect")+","+map.get("neoDeathTodo")+","+map.get("birthDefectTodo")+","+map.get("neoDeath")+",\n" + + ""+map.get("birthDefect")+","+map.get("dueDate")+","+map.get("lastMenses")+","+map.get("bg")+","+map.get("pastHistory")+",\n" + + ""+map.get("familyHistory")+","+map.get("personalHistory")+","+map.get("ymjzHistory")+","+map.get("ywgmHistory")+",\n" + + ""+map.get("fksxHistory")+","+map.get("ysfyHistory")+","+map.get("cestationInfo")+","+map.get("hHealthInfo")+",\n" + + ""+map.get("pregnancyTimes")+","+map.get("prodTime")+","+map.get("delivery")+","+map.get("planedProd")+",\n" + + ""+map.get("abortion")+","+map.get("stillbirth")+","+map.get("stillChan")+","+map.get("height")+","+map.get("weight")+",\n" + + ""+map.get("yqWeight")+","+map.get("baricIndex")+","+map.get("bp")+","+map.get("heart")+","+map.get("lungs")+",\n" + + ""+map.get("vulva")+","+map.get("vagina")+","+map.get("cervical")+","+map.get("uterus")+","+map.get("fujian")+",\n" + + ""+map.get("gonggao")+","+map.get("fuwei")+","+map.get("edema")+","+map.get("tireNumber")+","+map.get("xhdb")+",\n" + + ""+map.get("bxbjs")+","+map.get("platelet")+","+map.get("chgOther")+","+map.get("ndb")+","+map.get("nt")+",\n" + + ""+map.get("urineKetone")+","+map.get("bld")+","+map.get("ncgOther")+","+map.get("abo")+","+map.get("rh")+",\n" + + ""+map.get("bloodSugar")+","+map.get("xqgbzam")+","+map.get("xqgczam")+","+map.get("albumin")+","+map.get("totalBilirubin")+",\n" + + ""+map.get("jhBilirubin")+","+map.get("ygbmky")+","+map.get("ygbmkt")+","+map.get("ygeky")+","+map.get("ygekt")+",\n" + + ""+map.get("yghxkt")+","+map.get("xqjq")+","+map.get("xnsd")+","+map.get("hivkt")+","+map.get("ydfmw")+","+map.get("ydqjd")+",\n" + + ""+map.get("bChao")+","+heartRate+","+fetalPosition+","+fetalPresentation+","+join1+")"; + + ps=conn.prepareStatement(inSql); + int result = ps.executeUpdate(); + if(result > 0){ + br.setErrorcode(ErrorCodeConstants.SUCCESS); + br.setErrormsg("成功"); + return br; + } + + + + + + } + + } + + return null; + } catch (Exception e) { + e.printStackTrace(); + }finally { + try{ + ps.close(); + rs.close(); + conn.close(); + }catch (Exception e){ + e.printStackTrace(); + } + + } + return null; + } + + + +}