From 95a2857e83684ff9933424ecd6229ae76061ec63 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Thu, 2 Mar 2017 21:32:51 +0800 Subject: [PATCH] update code --- .../java/com/lyms/hospitalapi/qhdfy/FmPatInfo.java | 4 + .../com/lyms/hospitalapi/qhdfy/QhdfyFmService.java | 167 +++++++++++++++++---- .../platform/operate/web/facade/ViewFacade.java | 3 +- 3 files changed, 142 insertions(+), 32 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/FmPatInfo.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/FmPatInfo.java index 3e4789a..6566dcd 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/FmPatInfo.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/FmPatInfo.java @@ -39,6 +39,10 @@ public class FmPatInfo { } public String getCardNo() { + if (cardNo != null) + { + return cardNo.trim(); + } return cardNo; } diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyFmService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyFmService.java index 7df5512..60ee513 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyFmService.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyFmService.java @@ -50,6 +50,48 @@ public class QhdfyFmService { @Autowired private QhdfyHisService qhdfyHisService; + private static Map ONE_ENUMS = new HashMap<>(); + + private static Map babyMap = new HashMap<>(); + + static { + ONE_ENUMS.put(0, "长"); + ONE_ENUMS.put(1, "次"); + ONE_ENUMS.put(2, "三"); + ONE_ENUMS.put(3, "四"); + ONE_ENUMS.put(4, "五"); + ONE_ENUMS.put(5, "六"); + ONE_ENUMS.put(6, "七"); + + + List b1 = new ArrayList<>(); + b1.add("长女"); + b1.add("次女"); + babyMap.put("00", b1); + + List b2 = new ArrayList<>(); + b2.add("长子"); + b2.add("次子"); + babyMap.put("11", b2); + + List b3 = new ArrayList<>(); + b3.add("之子"); + b3.add("之女"); + + List b4 = new ArrayList<>(); + b4.add("之女"); + b4.add("之子"); + babyMap.put("01", b4); + babyMap.put("10", b3); + List b5 = new ArrayList<>(); + b5.add("之子"); + List b6 = new ArrayList<>(); + b6.add("之女"); + + babyMap.put("1", b5); + babyMap.put("0", b6); + } + public void fmTimerWork() { SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date end = new Date(); @@ -178,7 +220,7 @@ public class QhdfyFmService { if (!com.lyms.platform.common.utils.StringUtils.isNotEmpty(item.getSsrq())) { continue; } - + deliverAddRequest.setDeliverDoctor(users.get(0).getId()+""); deliverAddRequest.setDueDate(DateUtil.getyyyy_MM_dd(dueDate)); deliverAddRequest.setParentId(patient.getId()); deliverAddRequest.setPid(patient.getPid()); @@ -186,13 +228,20 @@ public class QhdfyFmService { String week = ""; if (StringUtils.isNotEmpty(item.getRc())) { - if (item.getRc().split("\\u002B").length > 1) { - week = item.getRc().split("\\u002B")[0] + "周"; - week += item.getRc().split("\\u002B")[1] + "天"; - } else { - week = item.getRc() + "周"; + week = item.getRc() + "周"; + if (StringUtils.isNotEmpty(item.getRc()) && StringUtils.isNotEmpty(item.getJts())) + { week += item.getJts() + "天"; } + + +// if (item.getRc().split("\\u002B").length > 1) { +// week = item.getRc().split("\\u002B")[0] + "周"; +// week += item.getRc().split("\\u002B")[1] + "天"; +// } else { +// week = item.getRc() + "周"; +// week += item.getJts() + "天"; +// } deliverAddRequest.setDueWeek(week); } @@ -269,7 +318,8 @@ public class QhdfyFmService { } else { //秦皇岛服务器有分娩记录,但是在这边系统没有对于孕妇 取分娩信息建档儿童数据 - buildBaby( item, patInfo, dueDate); + String babyName = patInfo.getName()+("男".equals(item.getYexb()) ? "之子" : "之女"); + buildBaby( item, patInfo, dueDate,babyName); } } else @@ -299,9 +349,6 @@ public class QhdfyFmService { List duoTaiList = queryRunner.query(conn,sql1 , new BeanListHandler(FmItem.class)); - - ExceptionUtils.catchException("duo tai size====" + duoTaiList.size()); - if (CollectionUtils.isNotEmpty(duoTaiList)) { Map> maps = new HashMap<>(); for(FmItem item : duoTaiList) @@ -375,6 +422,7 @@ public class QhdfyFmService { continue; } + deliverAddRequest.setDeliverDoctor(users.get(0).getId()+""); deliverAddRequest.setDueDate(DateUtil.getyyyy_MM_dd(dueDate)); deliverAddRequest.setParentId(patient.getId()); deliverAddRequest.setPid(patient.getPid()); @@ -382,16 +430,23 @@ public class QhdfyFmService { if (StringUtils.isNotEmpty(item.getRc())) { String week = ""; - if (item.getRc().split("\\u002B").length > 1) - { - week = item.getRc().split("\\u002B")[0]+"周"; - week+= item.getRc().split("\\u002B")[1]+"天"; - } - else + + week = item.getRc() + "周"; + if (StringUtils.isNotEmpty(item.getRc()) && StringUtils.isNotEmpty(item.getJts())) { - week = item.getRc()+"周"; - week+=item.getJts()+"天"; + week += item.getJts() + "天"; } + +// if (item.getRc().split("\\u002B").length > 1) +// { +// week = item.getRc().split("\\u002B")[0]+"周"; +// week+= item.getRc().split("\\u002B")[1]+"天"; +// } +// else +// { +// week = item.getRc()+"周"; +// week+=item.getJts()+"天"; +// } deliverAddRequest.setDueWeek(week); } @@ -441,9 +496,13 @@ public class QhdfyFmService { { continue; } - Date dueDate1 = fmt.parse(dueDateStr1); - - + Date dueDate1 = null; + try{ + dueDate1 = fmt2.parse(dueDateStr); + }catch (Exception e) + { + dueDate1 = fmt.parse(dueDateStr); + } Map deliveryMode = new HashMap(); //分娩方式 @@ -468,9 +527,6 @@ public class QhdfyFmService { } extPlacenta.setTpmcType(tpmcType); -// Map map = new HashMap(); -// extPlacenta.setTpSize(map); - extPlacentas.add(extPlacenta); deliverAddRequest.setExtPlacentas(extPlacentas); @@ -502,15 +558,26 @@ public class QhdfyFmService { } else { + List names = buildBabyName(items); + int count = 0; for (FmItem i : items) { + ExceptionUtils.catchException("items == "+items.size()); String dueDateStr1 = i.getSsrq(); if (!StringUtils.isNotEmpty(dueDateStr1)) { continue; } - Date dueDate1 = fmt.parse(dueDateStr1); - buildBaby( i,patInfo, dueDate1); + Date dueDate1 = null; + try{ + dueDate1 = fmt2.parse(dueDateStr); + }catch (Exception e) + { + dueDate1 = fmt.parse(dueDateStr); + } + + buildBaby( i,patInfo, dueDate1,patInfo.getName()+names.get(count).toString()); + count++; } } @@ -540,6 +607,45 @@ public class QhdfyFmService { } + + private List buildBabyName(List items) { + String id = ""; + if (items.size() > 2) { + int boyCount = 0; + int girlCount = 0; + List l = new ArrayList<>(); + for (int i = 0; i < items.size(); i++) { + FmItem item = items.get(i); + if (org.apache.commons.lang.StringUtils.isNotEmpty(item.getYexb())) { + if ("男".equals(item.getYexb())) { + l.add(ONE_ENUMS.get(boyCount) + "子"); + boyCount++; + } else if ("女".equals(item.getYexb())) { + l.add(ONE_ENUMS.get(girlCount) + "女"); + girlCount++; + } + } + } + return l; + } else { + for (int i = 0; i < items.size(); i++) { + FmItem item = items.get(i); + if (org.apache.commons.lang.StringUtils.isNotEmpty(item.getYexb())) { + if ("男".equals(item.getYexb())) + { + id += "1"; + } + else if ("女".equals(item.getYexb())) + { + id += "0"; + } + + } + } + return babyMap.get(id); + } + } + private void saveFmrecord(String syxh) { FmRecordModel fmRecordModel = new FmRecordModel(); @@ -548,7 +654,7 @@ public class QhdfyFmService { } - public void buildBaby(FmItem item,FmPatInfo patInfo, Date dueDate) + public void buildBaby(FmItem item,FmPatInfo patInfo, Date dueDate, String babyName) { try{ ExceptionUtils.catchException("buildBaby===="); @@ -583,7 +689,7 @@ public class QhdfyFmService { } - if (StringUtils.isNotEmpty(patInfo.getCardNo())) + if (org.apache.commons.lang.StringUtils.isNotEmpty(patInfo.getCardNo())) { request.setMommyCertificateTypeId("70ae1d93-2964-46bc-83fa-bec9ff605b1c"); //证件类型 (身份证号码) request.setMommyCertificateNum(patInfo.getCardNo()); //证件号 @@ -595,7 +701,7 @@ public class QhdfyFmService { } request.setMommyPhone(patInfo.getPhone()); - String babyName = patInfo.getName()+("男".equals(item.getYexb()) ? "之子" : "之女"); + request.setBabyName(babyName); request.setSex("男".equals(item.getYexb()) ? 1 : 0); @@ -648,8 +754,6 @@ public class QhdfyFmService { request.setServiceType(ServiceTypeEnums.STANDARD_SERVICE.getId()); //标准服务 request.setServiceStatus(ServiceStatusEnums.STANDARD_OPEN.getId()); //开通 - babyBookbuildingFacade.addBabyBookbuilding(request, users.get(0).getId()); - if (patInfo != null && StringUtils.isNotEmpty(patInfo.getBlh())) { Map diags = qhdfyHisService.queryHisBabyDiagnosis(patInfo.getBlh()); @@ -659,6 +763,7 @@ public class QhdfyFmService { request.setBabyDiagnosis(diags.get("diagnosisItem") == null ? "" : diags.get("diagnosisItem").toString()); } } + babyBookbuildingFacade.addBabyBookbuilding(request, users.get(0).getId()); }catch (Exception e) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java index 38003cf..fa9369c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java @@ -912,8 +912,9 @@ public class ViewFacade { if (fmfs!=null){ if (fmfs.equals("1")){ String fmName = FmTypeEnums.getFmNameById(fmfs); + sb.append(fmName); if(null!=m.get("scfs")){ - sb.append(fmName).append(","); + sb.append(","); String scfs =m.get("scfs") .toString(); sb.append(FmTypeEnums.getFmScNameById(scfs)); } -- 1.8.3.1