Commit 5a9b235d9a430fd964351629663177b009951ab1

Authored by liquanyu
1 parent 58f3f3d1cc

分娩

Showing 1 changed file with 209 additions and 209 deletions

platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyFmService.java View file @ 5a9b235
... ... @@ -927,221 +927,221 @@
927 927 SimpleDateFormat fmt2 = new SimpleDateFormat("yyyy-MM-dd");
928 928 SimpleDateFormat fmt1 = new SimpleDateFormat("yyyy-MM-dd HH:mm");
929 929 MaternalDeliverResult maternalDeliverResult = new MaternalDeliverResult();
930   -// Connection conn = ConnTools.makeFmConnection();
931   -// QueryRunner queryRunner = new QueryRunner();
  930 + Connection conn = ConnTools.makeFmConnection();
  931 + QueryRunner queryRunner = new QueryRunner();
932 932 if(idCardNo != null){
933 933 try{
934 934  
935   -// FmPatInfo patInfo = null;
936   -// String sql = "SELECT syxh,hzxm as name,sfzh as cardNo,sex as sex,birth,lxrdh as phone, blh FROM THIS4_BASY WHERE sfzh = '"+idCardNo+"' ";
937   -// List<FmPatInfo> infoList = queryRunner.query(conn,sql,new BeanListHandler<FmPatInfo>(FmPatInfo.class));
938   -// if(CollectionUtils.isNotEmpty(infoList)){
939   -// patInfo = infoList.get(0);
940   -//
941   -// String cloumns = " SYXH as syxh,\n" +
942   -// " YEXH as yexh,\n" +
943   -// " JLRQ as jlrq,\n" +
944   -// " CSRQ as csrq,\n" +
945   -// " SSRQ as ssrq,\n" +
946   -// "SSJ as ssj,\n" +
947   -// "yexb as yexb,\n" +
948   -// "RC as rc,\n" +
949   -// "JTS as jts,\n" +
950   -// "DJT as djt,\n" +
951   -// "CJC as cjc,\n" +
952   -// "ZX as zx,\n" +
953   -// "TZ as tz,\n" +
954   -// "SC as sc,\n" +
955   -// "SH as sh,\n" +
956   -// "JX as jx,\n" +
957   -// "YFZ as yfz,\n" +
958   -// "WFZ as wfz,\n" +
959   -// "SFZ as sfz,\n" +
960   -// "PFZ as pfz,\n" +
961   -// "CCQK as ccqk,\n" +
962   -// "FMFS as fmfs,\n" +
963   -// "TPMCFS as tpmcfs,\n" +
964   -// "YEQK as yeqk,\n" +
965   -// "SW as sw,\n" +
966   -// "SFFQ as sffq,\n" +
967   -// "FQYY as fqyy,\n" +
968   -// "HYQK as hyqk,\n" +
969   -// "HYQK1 as hyqk1,\n" +
970   -// "YC as yc,\n" +
971   -// "SFGW as sfgw,\n" +
972   -// "MCTPSLXL as mctpslxl,\n" +
973   -// "CHEXXSXL as chexxsxl,\n" +
974   -// " QJQK as qjqk,\n" +
975   -// " SRKS as srks,\n" +
976   -// " JSZ as jsz";
977   -//
978   -// String itemSql ="select "+cloumns+" from JHMK_FMJL_LYMS where " +
979   -// " and SYXH not in (select SYXH from JHMK_FMJL_LYMS where JSZ is not null and SC is not null and TZ is not null and YFZ is not null and SH is not null and CCQK is not null and CCQK <> '' " +
980   -// " and (SFFZRSTDT = ' 是 ' or SFSTDT = ' 是 ')) and SYXH='"+patInfo.getSyxh()+"'";
981   -//
982   -// List<FmItem> itemList = queryRunner.query(conn, itemSql, new BeanListHandler<FmItem>(FmItem.class));
983   -//
984   -//
985   -// //单胎
986   -// if(CollectionUtils.isNotEmpty(itemList)){
987   -// List<MaternalDeliverResult.Baby> babys = new ArrayList<MaternalDeliverResult.Baby>();
988   -// for(FmItem fmItem : itemList){
989   -// System.out.println("单胎:"+fmItem);
990   -// try{
991   -//
992   -// Map deliveryMode = new HashMap(); //分娩方式
993   -// if (!("活产".equals(fmItem.getCcqk()) || "死胎".equals(fmItem.getCcqk())))
994   -// {
995   -// continue;
996   -// }
997   -// String cssj = fmItem.getCsrq().substring(0,3)+"-"+fmItem.getCsrq().substring(4,5)+"-"+fmItem.getCsrq().substring(6,7);
998   -// maternalDeliverResult.setDueDate(cssj);
999   -// maternalDeliverResult.setDueWeek(fmItem.getRc());
1000   -// maternalDeliverResult.setTireNumber(Integer.parseInt(fmItem.getDjt()));
1001   -// //没有胎盘默认为1
1002   -// maternalDeliverResult.setPlacenta("1");
1003   -// String fmfs = "";
1004   -// if (fmItem.getFmfs() != null && "剖宫产".equals(fmItem.getFmfs()))
1005   -// {
1006   -// fmfs = FmTypeEnums.O1.getId();
1007   -// }
1008   -// else
1009   -// {
1010   -// fmfs = FmTypeEnums.O.getId();
1011   -// }
1012   -// deliveryMode.put("fmfs",fmfs);
1013   -// maternalDeliverResult.setDeliveryMode(deliveryMode);
1014   -//
1015   -// if ("完好".equals(fmItem.getHyqk()) || "".equals(fmItem.getHyqk())) {
1016   -// maternalDeliverResult.setPerinealCondition("full");
1017   -// } else if ("会阴切开".equals(fmItem.getHyqk()) || "侧切".equals(fmItem.getHyqk())) {
1018   -// maternalDeliverResult.setPerinealCondition("split");
1019   -// }
1020   -// if ("一度裂伤".equals(fmItem.getHyqk())) {
1021   -// maternalDeliverResult.setSiLielevel(1);
1022   -// } else if ("二度裂伤".equals(fmItem.getHyqk())) {
1023   -// maternalDeliverResult.setSiLielevel(2);
1024   -// } else if ("三度裂伤".equals(fmItem.getHyqk())) {
1025   -// maternalDeliverResult.setSiLielevel(3);
1026   -// }
1027   -// if (StringUtils.isNotEmpty(fmItem.getChexxsxl())) {
1028   -// maternalDeliverResult.settHloseBloodL(Double.parseDouble(fmItem.getChexxsxl()));
1029   -// }
1030   -//
1031   -// //儿童
1032   -// MaternalDeliverResult.Baby baby = maternalDeliverResult.new Baby();
1033   -// Map<String, String> as = new HashMap<>();
1034   -// String pf1 = fmItem.getYfz();
1035   -// String pf5 = fmItem.getWfz();
1036   -// String pf10 = fmItem.getSfz();
1037   -// if(pf1!=null){
1038   -// as.put("pf1", pf1);
1039   -// }
1040   -// if(pf5!=null){
1041   -// as.put("pf5", pf5);
1042   -// }
1043   -// if(pf10!=null){
1044   -// as.put("pf10", pf10);
1045   -// }
1046   -// baby.setApgarScore(as);
1047   -// baby.setBabyGender("男".equals(fmItem.getYexb()) ? "1" : "0");
1048   -// String babyHeight = fmItem.getSc();
1049   -// String babyWeight = fmItem.getTz();
1050   -// String baby_Asphyxiam = fmItem.getZx();
1051   -// if(babyHeight!=null){
1052   -// baby.setBabyHeight(babyHeight);//新生儿生长
1053   -// }
1054   -// if(babyWeight!=null){
1055   -// baby.setBabyWeight(babyWeight);//新生儿重量
1056   -// }
1057   -// if(baby_Asphyxiam!=null){
1058   -// baby.setAsphyxiaM(baby_Asphyxiam); //窒息分钟
1059   -// }
1060   -// //baby.setDeformity((fmItem.getJx()==null?0:1)); //畸形 0非畸形 1畸形
1061   -//
1062   -// String baby_Pregnancy_Out = fmItem.getCcqk();
1063   -// if(baby_Pregnancy_Out!=null && StringUtils.isNotEmpty(baby_Pregnancy_Out)){
1064   -// baby.setPregnancyOut(RenShenJieJuEnums.getIdByName(fmItem.getCcqk())); // 妊娠结局
1065   -// }
1066   -//
1067   -// baby.setDueTime(cssj);//分娩时间
1068   -// babys.add(baby);
1069   -//
1070   -//
1071   -// }catch (Exception e){
1072   -// e.printStackTrace();
1073   -// continue;
1074   -// }
1075   -//
1076   -//
1077   -// }
1078   -// maternalDeliverResult.setBabies(babys);
1079   -// }
1080   -// //多胎
1081   -// else
1082   -// {
1083   -// String sql1="select "+cloumns+" from JHMK_FMJL_LYMS where JSZ is not null and SC is not null and TZ is not null and YFZ is not null and CCQK is not null and CCQK <> '' " +
1084   -// " and SH is not null and (SFFZRSTDT = ' 是 ' or SFSTDT = ' 是 ') and SYXH='"+patInfo.getSyxh()+"'";
1085   -//
1086   -// List<FmItem> duoTaiList = queryRunner.query(conn,sql1
1087   -// , new BeanListHandler<FmItem>(FmItem.class));
  935 + FmPatInfo patInfo = null;
  936 + String sql = "SELECT syxh,hzxm as name,sfzh as cardNo,sex as sex,birth,lxrdh as phone, blh FROM THIS4_BASY WHERE sfzh = '"+idCardNo+"'";
  937 + List<FmPatInfo> infoList = queryRunner.query(conn,sql,new BeanListHandler<FmPatInfo>(FmPatInfo.class));
  938 + if(CollectionUtils.isNotEmpty(infoList)){
  939 + patInfo = infoList.get(0);
1088 940  
  941 + String cloumns = " SYXH as syxh,\n" +
  942 + " YEXH as yexh,\n" +
  943 + " JLRQ as jlrq,\n" +
  944 + " CSRQ as csrq,\n" +
  945 + " SSRQ as ssrq,\n" +
  946 + "SSJ as ssj,\n" +
  947 + "yexb as yexb,\n" +
  948 + "RC as rc,\n" +
  949 + "JTS as jts,\n" +
  950 + "DJT as djt,\n" +
  951 + "CJC as cjc,\n" +
  952 + "ZX as zx,\n" +
  953 + "TZ as tz,\n" +
  954 + "SC as sc,\n" +
  955 + "SH as sh,\n" +
  956 + "JX as jx,\n" +
  957 + "YFZ as yfz,\n" +
  958 + "WFZ as wfz,\n" +
  959 + "SFZ as sfz,\n" +
  960 + "PFZ as pfz,\n" +
  961 + "CCQK as ccqk,\n" +
  962 + "FMFS as fmfs,\n" +
  963 + "TPMCFS as tpmcfs,\n" +
  964 + "YEQK as yeqk,\n" +
  965 + "SW as sw,\n" +
  966 + "SFFQ as sffq,\n" +
  967 + "FQYY as fqyy,\n" +
  968 + "HYQK as hyqk,\n" +
  969 + "HYQK1 as hyqk1,\n" +
  970 + "YC as yc,\n" +
  971 + "SFGW as sfgw,\n" +
  972 + "MCTPSLXL as mctpslxl,\n" +
  973 + "CHEXXSXL as chexxsxl,\n" +
  974 + " QJQK as qjqk,\n" +
  975 + " SRKS as srks,\n" +
  976 + " JSZ as jsz";
1089 977  
1090   - List<FmItem> duoTaiList = new ArrayList<>();
  978 + String itemSql ="select "+cloumns+" from JHMK_FMJL_LYMS where " +
  979 + " and SYXH not in (select SYXH from JHMK_FMJL_LYMS where JSZ is not null and SC is not null and TZ is not null and YFZ is not null and SH is not null and CCQK is not null and CCQK <> '' " +
  980 + " and (SFFZRSTDT = ' 是 ' or SFSTDT = ' 是 ')) and SYXH='"+patInfo.getSyxh()+"'";
1091 981  
1092   - FmItem fmItem1 = new FmItem();
1093   - fmItem1.setSyxh("10019988");
1094   - fmItem1.setJlrq("2017011217:52:00");
1095   - fmItem1.setSsj("2");
1096   - fmItem1.setSsrq("20170112");
1097   - fmItem1.setCsrq("2017011214:15:00");
1098   - fmItem1.setSrks("产二科");
1099   - fmItem1.setYexb("男");
1100   - fmItem1.setRc("37");
1101   - fmItem1.setDjt("2");
1102   - fmItem1.setCjc("2");
1103   - fmItem1.setJsz("王瑞华");
1104   - fmItem1.setTz("2730");
1105   - fmItem1.setSc("50");
1106   - fmItem1.setYfz("9");
1107   - fmItem1.setWfz("10");
1108   - fmItem1.setSfz("10");
1109   - fmItem1.setPfz("王瑞华");
1110   - fmItem1.setCcqk("活产");
1111   - fmItem1.setFmfs("剖宫产");
1112   - fmItem1.setTpmcfs("自然产出");
1113   - fmItem1.setYeqk("正常");
1114   - fmItem1.setJx("无");
  982 + List<FmItem> itemList = queryRunner.query(conn, itemSql, new BeanListHandler<FmItem>(FmItem.class));
1115 983  
1116   - duoTaiList.add(fmItem1);
  984 + //单胎
  985 + if(CollectionUtils.isNotEmpty(itemList)){
  986 + List<MaternalDeliverResult.Baby> babys = new ArrayList<MaternalDeliverResult.Baby>();
  987 + for(FmItem fmItem : itemList){
  988 + System.out.println("单胎:"+fmItem);
  989 + try{
1117 990  
1118   - FmItem fmItem2 = new FmItem();
1119   - fmItem2.setJx("无");
1120   - fmItem2.setSyxh("10019988");
1121   - fmItem2.setJlrq("2017011217:52:00");
1122   - fmItem2.setSsj("2");
1123   - fmItem2.setSsrq("20170112");
1124   - fmItem2.setCsrq("2017011214:15:00");
1125   - fmItem2.setSrks("产二科");
1126   - fmItem2.setYexb("女");
1127   - fmItem2.setRc("37");
1128   - fmItem2.setDjt("2");
1129   - fmItem2.setCjc("2");
1130   - fmItem2.setJsz("王瑞华");
1131   - fmItem2.setTz("3400");
1132   - fmItem2.setSc("50");
1133   - fmItem2.setYfz("9");
1134   - fmItem2.setWfz("10");
1135   - fmItem2.setSfz("10");
1136   - fmItem2.setPfz("王瑞华");
1137   - fmItem2.setCcqk("活产");
1138   - fmItem2.setFmfs("剖宫产");
1139   - fmItem2.setTpmcfs("自然产出");
1140   - fmItem2.setYeqk("正常");
  991 + Map deliveryMode = new HashMap(); //分娩方式
  992 + if (!("活产".equals(fmItem.getCcqk()) || "死胎".equals(fmItem.getCcqk())))
  993 + {
  994 + continue;
  995 + }
1141 996  
1142   - duoTaiList.add(fmItem2);
  997 + Date dueDate = fmt.parse(fmItem.getCsrq());
  998 + String dutTime = fmt1.format(dueDate);
1143 999  
  1000 + maternalDeliverResult.setDueDate(fmt2.format(dueDate));
  1001 + maternalDeliverResult.setDueWeek(fmItem.getRc());
  1002 + maternalDeliverResult.setTireNumber(Integer.parseInt(fmItem.getDjt()));
  1003 + //没有胎盘默认为1
  1004 + maternalDeliverResult.setPlacenta("1");
  1005 + String fmfs = "";
  1006 + if (fmItem.getFmfs() != null && "剖宫产".equals(fmItem.getFmfs()))
  1007 + {
  1008 + fmfs = FmTypeEnums.O1.getId();
  1009 + }
  1010 + else
  1011 + {
  1012 + fmfs = FmTypeEnums.O.getId();
  1013 + }
  1014 + deliveryMode.put("fmfs",fmfs);
  1015 + maternalDeliverResult.setDeliveryMode(deliveryMode);
1144 1016  
  1017 + if ("完好".equals(fmItem.getHyqk()) || "".equals(fmItem.getHyqk())) {
  1018 + maternalDeliverResult.setPerinealCondition("full");
  1019 + } else if ("会阴切开".equals(fmItem.getHyqk()) || "侧切".equals(fmItem.getHyqk())) {
  1020 + maternalDeliverResult.setPerinealCondition("split");
  1021 + }
  1022 + if ("一度裂伤".equals(fmItem.getHyqk())) {
  1023 + maternalDeliverResult.setSiLielevel(1);
  1024 + } else if ("二度裂伤".equals(fmItem.getHyqk())) {
  1025 + maternalDeliverResult.setSiLielevel(2);
  1026 + } else if ("三度裂伤".equals(fmItem.getHyqk())) {
  1027 + maternalDeliverResult.setSiLielevel(3);
  1028 + }
  1029 + if (StringUtils.isNotEmpty(fmItem.getChexxsxl())) {
  1030 + maternalDeliverResult.settHloseBloodL(Double.parseDouble(fmItem.getChexxsxl()));
  1031 + }
  1032 +
  1033 + //儿童
  1034 + MaternalDeliverResult.Baby baby = maternalDeliverResult.new Baby();
  1035 + Map<String, String> as = new HashMap<>();
  1036 + String pf1 = fmItem.getYfz();
  1037 + String pf5 = fmItem.getWfz();
  1038 + String pf10 = fmItem.getSfz();
  1039 + if(pf1!=null){
  1040 + as.put("pf1", pf1);
  1041 + }
  1042 + if(pf5!=null){
  1043 + as.put("pf5", pf5);
  1044 + }
  1045 + if(pf10!=null){
  1046 + as.put("pf10", pf10);
  1047 + }
  1048 + baby.setApgarScore(as);
  1049 + baby.setBabyGender("男".equals(fmItem.getYexb()) ? "1" : "0");
  1050 + String babyHeight = fmItem.getSc();
  1051 + String babyWeight = fmItem.getTz();
  1052 + String baby_Asphyxiam = fmItem.getZx();
  1053 + if(babyHeight!=null){
  1054 + baby.setBabyHeight(babyHeight);//新生儿生长
  1055 + }
  1056 + if(babyWeight!=null){
  1057 + baby.setBabyWeight(babyWeight);//新生儿重量
  1058 + }
  1059 + if(baby_Asphyxiam!=null){
  1060 + baby.setAsphyxiaM(baby_Asphyxiam); //窒息分钟
  1061 + }
  1062 + //baby.setDeformity((fmItem.getJx()==null?0:1)); //畸形 0非畸形 1畸形
  1063 +
  1064 + String baby_Pregnancy_Out = fmItem.getCcqk();
  1065 + if(baby_Pregnancy_Out!=null && StringUtils.isNotEmpty(baby_Pregnancy_Out)){
  1066 + baby.setPregnancyOut(RenShenJieJuEnums.getIdByName(fmItem.getCcqk())); // 妊娠结局
  1067 + }
  1068 +
  1069 + baby.setDueTime(dutTime);//分娩时间
  1070 + babys.add(baby);
  1071 +
  1072 +
  1073 + }catch (Exception e){
  1074 + e.printStackTrace();
  1075 + continue;
  1076 + }
  1077 + }
  1078 + maternalDeliverResult.setBabies(babys);
  1079 + }
  1080 + //多胎
  1081 + else
  1082 + {
  1083 + String sql1="select "+cloumns+" from JHMK_FMJL_LYMS where JSZ is not null and SC is not null and TZ is not null and YFZ is not null and CCQK is not null and CCQK <> '' " +
  1084 + " and SH is not null and (SFFZRSTDT = ' 是 ' or SFSTDT = ' 是 ') and SYXH='"+patInfo.getSyxh()+"'";
  1085 +
  1086 + List<FmItem> duoTaiList = queryRunner.query(conn,sql1
  1087 + , new BeanListHandler<FmItem>(FmItem.class));
  1088 +
  1089 +
  1090 +// List<FmItem> duoTaiList = new ArrayList<>();
  1091 +//
  1092 +// FmItem fmItem1 = new FmItem();
  1093 +// fmItem1.setSyxh("10019988");
  1094 +// fmItem1.setJlrq("2017011217:52:00");
  1095 +// fmItem1.setSsj("2");
  1096 +// fmItem1.setSsrq("20170112");
  1097 +// fmItem1.setCsrq("2017011214:15:00");
  1098 +// fmItem1.setSrks("产二科");
  1099 +// fmItem1.setYexb("男");
  1100 +// fmItem1.setRc("37");
  1101 +// fmItem1.setDjt("2");
  1102 +// fmItem1.setCjc("2");
  1103 +// fmItem1.setJsz("王瑞华");
  1104 +// fmItem1.setTz("2730");
  1105 +// fmItem1.setSc("50");
  1106 +// fmItem1.setYfz("9");
  1107 +// fmItem1.setWfz("10");
  1108 +// fmItem1.setSfz("10");
  1109 +// fmItem1.setPfz("王瑞华");
  1110 +// fmItem1.setCcqk("活产");
  1111 +// fmItem1.setFmfs("剖宫产");
  1112 +// fmItem1.setTpmcfs("自然产出");
  1113 +// fmItem1.setYeqk("正常");
  1114 +// fmItem1.setJx("无");
  1115 +//
  1116 +// duoTaiList.add(fmItem1);
  1117 +//
  1118 +// FmItem fmItem2 = new FmItem();
  1119 +// fmItem2.setJx("无");
  1120 +// fmItem2.setSyxh("10019988");
  1121 +// fmItem2.setJlrq("2017011217:52:00");
  1122 +// fmItem2.setSsj("2");
  1123 +// fmItem2.setSsrq("20170112");
  1124 +// fmItem2.setCsrq("2017011214:15:00");
  1125 +// fmItem2.setSrks("产二科");
  1126 +// fmItem2.setYexb("女");
  1127 +// fmItem2.setRc("37");
  1128 +// fmItem2.setDjt("2");
  1129 +// fmItem2.setCjc("2");
  1130 +// fmItem2.setJsz("王瑞华");
  1131 +// fmItem2.setTz("3400");
  1132 +// fmItem2.setSc("50");
  1133 +// fmItem2.setYfz("9");
  1134 +// fmItem2.setWfz("10");
  1135 +// fmItem2.setSfz("10");
  1136 +// fmItem2.setPfz("王瑞华");
  1137 +// fmItem2.setCcqk("活产");
  1138 +// fmItem2.setFmfs("剖宫产");
  1139 +// fmItem2.setTpmcfs("自然产出");
  1140 +// fmItem2.setYeqk("正常");
  1141 +//
  1142 +// duoTaiList.add(fmItem2);
  1143 +
  1144 +
1145 1145 if (CollectionUtils.isNotEmpty(duoTaiList)) {
1146 1146 Map<String,List<FmItem>> maps = new HashMap<>();
1147 1147 for(FmItem item : duoTaiList)
1148 1148  
... ... @@ -1258,12 +1258,12 @@
1258 1258 }
1259 1259 }
1260 1260 }
1261   -// }
1262   -// }
  1261 + }
  1262 + }
1263 1263 }catch (Exception e){
1264 1264 e.printStackTrace();
1265 1265 }finally {
1266   -// DbUtils.closeQuietly(conn);
  1266 + DbUtils.closeQuietly(conn);
1267 1267 }
1268 1268  
1269 1269 }