From e13495ad48fbdb2e1932f74f790d05c612a26aee Mon Sep 17 00:00:00 2001 From: liquanyu Date: Wed, 17 May 2017 20:22:28 +0800 Subject: [PATCH] update --- .../permission/model/LisReportItemModel.java | 2 + .../com/lyms/platform/pojo/BabyCheckModel.java | 67 +++++++++++++++ .../operate/web/facade/BabyBookbuildingFacade.java | 96 +++++++++++++++++++++- .../operate/web/facade/BabyCheckFacade.java | 62 ++++++++++---- .../platform/operate/web/facade/ViewFacade.java | 10 ++- .../operate/web/request/BabyCheckRequest.java | 67 +++++++++++++++ .../operate/web/result/BabyCheckPageResult.java | 67 +++++++++++++++ .../operate/web/utils/SendMysqlSyncDatUtil.java | 5 +- 8 files changed, 357 insertions(+), 19 deletions(-) diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/LisReportItemModel.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/LisReportItemModel.java index 1f15e82..95c4cba 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/LisReportItemModel.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/LisReportItemModel.java @@ -25,8 +25,10 @@ public class LisReportItemModel { // 打印顺序 private String printOrder; + //字符类型 private String charResult; + //数字类型 private String numberResult; private String hospitalId; diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyCheckModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyCheckModel.java index e8edfd3..2fa20df 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyCheckModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyCheckModel.java @@ -237,6 +237,73 @@ public class BabyCheckModel extends BaseModel { //检查月龄 private Integer checkMonth; + + //运动测评 + private String sportsEvaluation; + + //心理行为 + private String heartAction; + + //问诊其他 + private String askOther; + + //儿科检查其他 + private String babyCheckOther; + + //辅助检查其他 + private String assistCheckOther; + + //脐部 + private String navel; + + public String getNavel() { + return navel; + } + + public void setNavel(String navel) { + this.navel = navel; + } + + public String getAskOther() { + return askOther; + } + + public void setAskOther(String askOther) { + this.askOther = askOther; + } + + public String getBabyCheckOther() { + return babyCheckOther; + } + + public void setBabyCheckOther(String babyCheckOther) { + this.babyCheckOther = babyCheckOther; + } + + public String getAssistCheckOther() { + return assistCheckOther; + } + + public void setAssistCheckOther(String assistCheckOther) { + this.assistCheckOther = assistCheckOther; + } + + public String getSportsEvaluation() { + return sportsEvaluation; + } + + public void setSportsEvaluation(String sportsEvaluation) { + this.sportsEvaluation = sportsEvaluation; + } + + public String getHeartAction() { + return heartAction; + } + + public void setHeartAction(String heartAction) { + this.heartAction = heartAction; + } + public Integer getCheckMonth() { return checkMonth; } 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 702388b..a4c8090 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 @@ -27,6 +27,7 @@ import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.*; import com.lyms.platform.query.*; import org.apache.commons.collections.CollectionUtils; +import org.omg.CosNaming.NameHelper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.data.domain.Sort; @@ -1430,7 +1431,100 @@ public class BabyBookbuildingFacade { } else if ("5".equals(HIS_VERSION)) { map.put("hisPatient", fnfyHisService.getPatientInfoList(param.getVcCardNo())); }else if ("4".equals(HIS_VERSION)) { - map.put("hisPatient", qhdfyHisService.getPatientInfoList(param.getVcCardNo())); + + List> hisPatient = qhdfyHisService.getPatientInfoList(param.getVcCardNo()); + if (CollectionUtils.isNotEmpty(hisPatient)) + { + Map babyHis = hisPatient.get(0); + if (babyHis != null && babyHis.get("phone") != null && StringUtils.isNotEmpty(babyHis.get("phone").toString())) + { + BabyModelQuery babyModelQuery = new BabyModelQuery(); + babyModelQuery.setYn(YnEnums.YES.getId()); + babyModelQuery.setMphone(babyHis.get("phone").toString()); + if (org.apache.commons.lang.StringUtils.isNotEmpty(groupsFacade.findByCurrentUserId(autoMatchFacade.getHospitalId(userId)))){ + List list = new ArrayList(); + list.add("1"); + list.add("2"); + babyQuery.setEnableListNot(list); + } + + babyQuery.setHospitalIdList(groupsFacade.findGroupHospital(userId, false)); +// + List models = babyBookbuildingService.queryBabyBuildByCond(babyQuery); + + if (CollectionUtils.isNotEmpty(models)) { + BabyModel model = models.get(0); + if (model != null) { + + puerperaQuery.setCardNo(model.getMcertNo()); + + BabyInfoResult result = new BabyInfoResult(); + + result.setPid(model.getPid()); + result.setCardNo(model.getMcertNo());//母亲的身份证号码 + result.setName(model.getName()); + if (model.getBirth() != null) { + result.setMonthAge(DateUtil.getBabyMonthAge(model.getBirth(), new Date())); + } else { + result.setMonthAge(""); + } + + BabyModelQuery babyBuildQuery = new BabyModelQuery(); + babyBuildQuery.setYn(YnEnums.YES.getId()); + babyBuildQuery.setPid(model.getPid()); + List builds = babyBookbuildingService.queryBabyBuildByCond(babyQuery, "buildDate", Sort.Direction.DESC); + + List> list = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(builds)) { + for (BabyModel build : builds) { + + if (build != null && StringUtils.isNotEmpty(build.getHospitalId()) && build.getHospitalId().equals(param.getHospitalId())) { + isCurrentHosp = true; + buildInfo = build; + } + + Map buildRecords = new HashMap<>(); + buildRecords.put("id", build.getId()); + buildRecords.put("buildDate", DateUtil.getyyyy_MM_dd(build.getBuildDate())); + + buildRecords.put("hospitalId", build.getHospitalId()); + //查询建档医院 + Organization org = organizationService.getOrganization(Integer.valueOf(build.getHospitalId())); + if (org != null) { + buildRecords.put("buildHospital", org.getName()); + } else { + buildRecords.put("buildHospital", ""); + } + + list.add(buildRecords); + } + + if (!isCurrentHosp) { + buildInfo = builds.get(0); + } + + result.setBuildRecords(list); + } + results.add(result); + } + + } + else + { + map.put("hisPatient", hisPatient); + } + } + else + { + map.put("hisPatient", hisPatient); + } + } + else + { + map.put("hisPatient", hisPatient); + } + + }else if ("6".equals(HIS_VERSION)) { map.put("hisPatient", dzfyHisService.getPatientInfoList(param.getVcCardNo())); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java index 83de444..6812461 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java @@ -1,14 +1,12 @@ package com.lyms.platform.operate.web.facade; +import com.lyms.hospitalapi.qhdfy.QhdfyHisService; import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.enums.*; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; -import com.lyms.platform.common.utils.DateUtil; -import com.lyms.platform.common.utils.JsonUtil; -import com.lyms.platform.common.utils.StringUtils; -import com.lyms.platform.common.utils.SystemConfig; +import com.lyms.platform.common.utils.*; import com.lyms.platform.operate.web.request.BabyCheckRequest; import com.lyms.platform.operate.web.result.*; import com.lyms.platform.permission.model.Organization; @@ -67,6 +65,11 @@ public class BabyCheckFacade { @Autowired private CouponService couponService; + @Autowired + private QhdfyHisService qhdfyHisService; + + public static final String HIS_VERSION = PropertiesUtils.getPropertyValue("his_version"); + /** * 更新检查 * @@ -219,6 +222,13 @@ public class BabyCheckFacade { model.setBirth(babyModelList.get(0).getBirth()); } } + model.setSportsEvaluation(request.getSportsEvaluation()); + model.setHeartAction(request.getHeartAction()); + model.setAskOther(request.getAskOther()); + model.setBabyCheckOther(request.getBabyCheckOther()); + model.setAssistCheckOther(request.getAssistCheckOther()); + model.setNavel(request.getNavel()); + return model; } @@ -769,19 +779,41 @@ public class BabyCheckFacade { babyQuery.setHospitalIdList(hList); List models = babyBookbuildingService.queryBabyBuildByCond(babyQuery); - for (BabyModel model : models) { - if (model != null && model.getHospitalId() != null && hList.contains(hospitalId)) { - isBuild = true; + + if (CollectionUtils.isEmpty(models) && StringUtils.isNotEmpty(vcCardNo)) + { + if ("4".equals(HIS_VERSION)) { + List> hisPatient = qhdfyHisService.getPatientInfoList(vcCardNo); + + if (CollectionUtils.isNotEmpty(hisPatient)) { + Map babyHis = hisPatient.get(0); + if (babyHis != null && babyHis.get("phone") != null && StringUtils.isNotEmpty(babyHis.get("phone").toString())) { + babyQuery.setPhoneOrcardNo(null); //手机号码或者身份证号码 + babyQuery.setVcCardNo(null); + babyQuery.setMphone(babyHis.get("phone").toString()); + models = babyBookbuildingService.queryBabyBuildByCond(babyQuery); + } + } + } + } + + if (CollectionUtils.isNotEmpty(models)) + { + for (BabyModel model : models) { + if (model != null && model.getHospitalId() != null && hList.contains(hospitalId)) { + isBuild = true; + } + BabyChooseResult result = new BabyChooseResult(); + result.setId(model.getId()); + result.setPid(model.getPid()); + result.setMonthAge(DateUtil.getBabyMonthAge(model.getBirth(), new Date())); + result.setGender(SexEnum.getTextById(model.getSex())); + result.setName(model.getName()); + result.setBirth(DateUtil.getyyyy_MM_dd(model.getBirth())); + results.add(result); } - BabyChooseResult result = new BabyChooseResult(); - result.setId(model.getId()); - result.setPid(model.getPid()); - result.setMonthAge(DateUtil.getBabyMonthAge(model.getBirth(), new Date())); - result.setGender(SexEnum.getTextById(model.getSex())); - result.setName(model.getName()); - result.setBirth(DateUtil.getyyyy_MM_dd(model.getBirth())); - results.add(result); } + } map.put("isBuild", isBuild); map.put("boies", results); 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 f28fa3c..980b770 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 @@ -1959,12 +1959,20 @@ public class ViewFacade { model.setDrugGllergic(drugGllergic); - model.setChestw(com.lyms.platform.common.utils.StringUtils.unitHandle(checkModel.getChestw(),UnitConstants.CM)); + model.setChestw(com.lyms.platform.common.utils.StringUtils.unitHandle(checkModel.getChestw(), UnitConstants.CM)); model.setWeightEvaluate(checkModel.getWeightEvaluate()); model.setHeadEvaluate(checkModel.getHeadEvaluate()); model.setHeightEvaluate(checkModel.getHeightEvaluate()); + model.setSportsEvaluation(checkModel.getSportsEvaluation()); + model.setHeartAction(checkModel.getHeartAction()); + + model.setAskOther(checkModel.getAskOther()); + model.setBabyCheckOther(checkModel.getBabyCheckOther()); + model.setAssistCheckOther(checkModel.getAssistCheckOther()); + model.setNavel(checkModel.getNavel()); + return model; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java index 36b9eb6..fc1ef42 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyCheckRequest.java @@ -243,6 +243,73 @@ public class BabyCheckRequest { private Integer couponType; + //运动测评 + private String sportsEvaluation; + + //心理行为 + private String heartAction; + + + //问诊其他 + private String askOther; + + //儿科检查其他 + private String babyCheckOther; + + //辅助检查其他 + private String assistCheckOther; + + //脐部 + private String navel; + + public String getNavel() { + return navel; + } + + public void setNavel(String navel) { + this.navel = navel; + } + + public String getAskOther() { + return askOther; + } + + public void setAskOther(String askOther) { + this.askOther = askOther; + } + + public String getBabyCheckOther() { + return babyCheckOther; + } + + public void setBabyCheckOther(String babyCheckOther) { + this.babyCheckOther = babyCheckOther; + } + + public String getAssistCheckOther() { + return assistCheckOther; + } + + public void setAssistCheckOther(String assistCheckOther) { + this.assistCheckOther = assistCheckOther; + } + + public String getHeartAction() { + return heartAction; + } + + public void setHeartAction(String heartAction) { + this.heartAction = heartAction; + } + + public String getSportsEvaluation() { + return sportsEvaluation; + } + + public void setSportsEvaluation(String sportsEvaluation) { + this.sportsEvaluation = sportsEvaluation; + } + public String getCouponCode() { return couponCode; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckPageResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckPageResult.java index 521d9ba..a7177ad 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckPageResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabyCheckPageResult.java @@ -240,6 +240,73 @@ public class BabyCheckPageResult { //是否高危儿童 0 非高危 1高危 private String highRisk; + //运动测评 + private String sportsEvaluation; + + //心理行为 + private String heartAction; + + + //问诊其他 + private String askOther; + + //儿科检查其他 + private String babyCheckOther; + + //辅助检查其他 + private String assistCheckOther; + + //脐部 + private String navel; + + public String getNavel() { + return navel; + } + + public void setNavel(String navel) { + this.navel = navel; + } + + public String getAskOther() { + return askOther; + } + + public void setAskOther(String askOther) { + this.askOther = askOther; + } + + public String getBabyCheckOther() { + return babyCheckOther; + } + + public void setBabyCheckOther(String babyCheckOther) { + this.babyCheckOther = babyCheckOther; + } + + public String getAssistCheckOther() { + return assistCheckOther; + } + + public void setAssistCheckOther(String assistCheckOther) { + this.assistCheckOther = assistCheckOther; + } + + public String getSportsEvaluation() { + return sportsEvaluation; + } + + public void setSportsEvaluation(String sportsEvaluation) { + this.sportsEvaluation = sportsEvaluation; + } + + public String getHeartAction() { + return heartAction; + } + + public void setHeartAction(String heartAction) { + this.heartAction = heartAction; + } + public String getId() { return id; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/SendMysqlSyncDatUtil.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/SendMysqlSyncDatUtil.java index 910b9aa..881c262 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/SendMysqlSyncDatUtil.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/SendMysqlSyncDatUtil.java @@ -23,7 +23,7 @@ import java.util.concurrent.TimeUnit; @Component public class SendMysqlSyncDatUtil implements InitializingBean { - private static BlockingQueue syncSqlQueue = new LinkedBlockingQueue(); + private static BlockingQueue syncSqlQueue = new LinkedBlockingQueue(500); //配置文件中配置的要同步的区域的url地址 private static Set urls = new HashSet<>(); @@ -51,6 +51,7 @@ public class SendMysqlSyncDatUtil implements InitializingBean { request.setSql(Base64.encodeBase64String(sql.getBytes())); request.setSqlId(sqlId); syncSqlQueue.add(request); + System.out.println("syncSqlQueue size = " + syncSqlQueue.size()); } /** @@ -76,7 +77,7 @@ public class SendMysqlSyncDatUtil implements InitializingBean { SqlRequest request = null; while (true) { try { - request = syncSqlQueue.poll(1, TimeUnit.MINUTES); + request = syncSqlQueue.poll(); String json = JsonUtil.obj2Str(request); if (CollectionUtils.isNotEmpty(urls)) { -- 1.8.3.1