diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java index 47210a1..acee499 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/lhxfy/LhxfyService.java @@ -709,6 +709,10 @@ public class LhxfyService { } //隆化-妇女健康管理-男女婚检lis检查结果获取 autoHjInLis(); + + + //同步孕期优生得b超检查到婚检得b超检查 + syncYcysToHj(); } //隆化-妇女健康管理-男女婚检lis检查结果获取 public void autoHjInLis() @@ -1690,4 +1694,56 @@ public class LhxfyService { } return new BaseObjectResponse(); } + + /** + * 同步孕期优生得b超检查到婚检得b超检查 + */ + private void syncYcysToHj() + { + Date startDate1 = DateUtil.addDay(new Date(),-5); + Date endDate1 = new Date(); + Query query = Query.query(Criteria.where("hospitalId").is("2100001605") + .and("wifeBCheck").exists(true).and("fillDate").gte(startDate1).lte(endDate1)); + System.out.println("============="+query.toString()); + List modelList = mongoTemplate.find(query,PreEugenicsBaseModel.class); + if (CollectionUtils.isNotEmpty(modelList)) + { + System.out.println("size==="+modelList.size()); + for (PreEugenicsBaseModel model : modelList) + { + String cardNo = model.getWifeCardNo(); + if (org.apache.commons.lang.StringUtils.isEmpty(cardNo)) + { + continue; + } + Query query1 = Query.query(Criteria.where("certificateNum").is(cardNo).and("xRay").exists(true)); + List checkupList = mongoTemplate.find(query1,PremaritalCheckup.class); + if (CollectionUtils.isNotEmpty(checkupList)) + { + PremaritalCheckup checkup = checkupList.get(0); + if (model.getWifeBCheck() != null && model.getWifeBCheck().size() > 0 && model.getWifeBCheck().get("bcjc") != null) + { + Object obj = model.getWifeBCheck().get("bcjc"); + List list = (ArrayList)obj; + if (CollectionUtils.isNotEmpty(list)) + { + Integer status = (Integer)list.get(0); + String content = (String)list.get(1); + checkup.setLhbc(String.valueOf(status+1)); + checkup.setLhbcms(content); + if (list.size() == 3) + { + String code = (String)list.get(2); + checkup.setLhbcjch(code); + } + System.out.println("id==="+checkup.getId()); + Update update = MongoConvertHelper + .convertToNativeUpdate(ReflectionUtils.getUpdateField(checkup)); + mongoTemplate.updateFirst(Query.query(Criteria.where("id").is(checkup.getId())), update, PremaritalCheckup.class); + } + } + } + } + } + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyCheckController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyCheckController.java index 235d9f2..2c781de 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyCheckController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyCheckController.java @@ -1,6 +1,7 @@ package com.lyms.platform.operate.web.controller; +import com.fasterxml.jackson.annotation.JsonAlias; import com.lyms.platform.common.annotation.TokenRequired; import com.lyms.platform.common.base.BaseController; import com.lyms.platform.common.base.LoginContext; @@ -194,10 +195,11 @@ public class BabyCheckController extends BaseController { @RequestParam(value = "highRisk", required = false) Integer highRisk, @RequestParam(value = "waskSon", required = false) Integer waskSon, @RequestParam(value = "checkDoctorId", required = false) String checkDoctorId, + @RequestParam(value = "articleTypes", required = false) Integer articleTypes,//中医指导类型, @RequestParam(value = "level", required = false) String level, Integer page, Integer limit, HttpServletRequest request) { return babyCheckFacade.babyCheckList(checkTime, queryNo, startCheckMonthAge, endCheckMonthAge, - nextDate, highRisk, waskSon, checkDoctorId, page, limit, getUserId(request), level); + nextDate, highRisk, waskSon, checkDoctorId,articleTypes, page, limit, getUserId(request), level); } /** @@ -732,6 +734,12 @@ public class BabyCheckController extends BaseController { } + /** + * 儿童中医指导统计人数 + * @param checkDate + * @param request + * @return + */ @RequestMapping(value = "/getbabyZyzdCount", method = RequestMethod.GET) @ResponseBody @TokenRequired diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java index 1183068..e060961 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java @@ -5223,20 +5223,16 @@ public class TestController extends BaseController { // } + /** + * 同步孕期优生得b超检查到婚检得b超检查 + * @return + */ @RequestMapping(value = "/syncPreEugebicsToHj", method = RequestMethod.GET) @ResponseBody - public String syncPreEugebicsToHj() { + public String syncPreEugebicsToHj(String startDate,String endDate) { - String startDate1 = ""; - String endDate1 = ""; - Date date1 = DateUtil.parseYMD("2021-09-01"); - for(int i=1 ;i < 15;i++) - { - startDate1 = DateUtil.getyyyy_MM_dd(date1); - date1 = DateUtil.addMonth(date1,1); - endDate1 = DateUtil.getyyyy_MM_dd(date1); - Query query = Query.query(Criteria.where("hospitalId").is("2100001605").and("wifeBCheck").exists(true).and("fillDate").gte(DateUtil.parseYMD(startDate1)).lte(DateUtil.parseYMD(endDate1))); - //query.addCriteria(Criteria.where("id").is("62e874db9932b2eeb3fe9a6c")); + Query query = Query.query(Criteria.where("hospitalId").is("2100001605").and("wifeBCheck").exists(true). + and("fillDate").gte(DateUtil.parseYMD(startDate)).lte(DateUtil.parseYMD(endDate))); System.out.println("============="+query.toString()); List modelList = mongoTemplate.find(query,PreEugenicsBaseModel.class); if (CollectionUtils.isNotEmpty(modelList)) @@ -5278,7 +5274,6 @@ public class TestController extends BaseController { } } } - } return "success"; } @RequestMapping(value = "/handleFmData", method = RequestMethod.GET) 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 b8c05ae..5499b22 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 @@ -1457,7 +1457,7 @@ public class BabyCheckFacade extends BaseServiceImpl { } public BaseResponse babyCheckList(String checkTime, String queryNo, Integer checkMonthAge, Integer endCheckMonthAge, String nextDate, - Integer highRisk, Integer waskSon, String checkDoctorId,Integer page, Integer limit, Integer userId,String level) { + Integer highRisk, Integer waskSon, String checkDoctorId,Integer articleTypes,Integer page, Integer limit, Integer userId,String level) { boolean flag = false; // List hospital = groupsFacade.findGroupHospital(userId, false); String hospitalId = autoMatchFacade.getHospitalId(userId); @@ -1511,6 +1511,19 @@ public class BabyCheckFacade extends BaseServiceImpl { if (null != checkMonthAge && null != endCheckMonthAge) { criteria.and("checkMonth").gte(checkMonthAge).lte(endCheckMonthAge); } + if (articleTypes != null) + { + if (articleTypes == 0) + { + criteria.and("articleTypes").exists(true); + } + else + { + criteria.and("articleTypes").in(Arrays.asList(articleTypes)); + } + } + + Query query = new Query(criteria); System.out.println(query.toString()); PageResult pageResult = findMongoPage(BabyCheckModel.class, query.with(new Sort(Sort.Direction.DESC, "created")), page, limit); @@ -1590,6 +1603,7 @@ public class BabyCheckFacade extends BaseServiceImpl { map.put("weight", babyCheckModel.getWeight()); //秦皇岛需求,查询最后一次检查的高危详情 map.put("qhdHighRiskInfo",babyCheckModel.getQhdHighRiskInfo()); + map.put("articleTypes", babyCheckModel.getArticleTypes()); List ckLst=mongoTemplate.find(Query.query(Criteria.where("buildId").is(babyCheckModel.getBuildId()).and("yn").is(YnEnums.YES.getId())).with(new Sort(Sort.Direction.ASC, "created")), BabyCheckModel.class); for (int i = 0; i < ckLst.size(); i++) { @@ -5603,16 +5617,7 @@ public class BabyCheckFacade extends BaseServiceImpl { String[] checkDates = checkDate.split(" - "); Date start = DateUtil.parseYMD(checkDates[0]); Date end = DateUtil.parseYMD(checkDates[1]); - -// Aggregation aggregation4 = -// Aggregation.newAggregation( -// Aggregation.match(Criteria.where("hospitalId").is(hospitalId).and("tcmGuide").exists(true).and("yn") -// .is(YnEnums.YES.getId()).and("checkDate").gte(DateUtil.getDayFirstSecond(start)).lte(DateUtil.getDayLastSecond(end))), -// Aggregation.group("buildId").count().as("总人数")); -// AggregationResults results = -// mongoTemplate.aggregate(aggregation4, "lyms_babycheck", BasicDBObject.class); -// int count = results.getMappedResults().size(); - int count = (int)mongoTemplate.count(new Query().addCriteria(Criteria.where("hospitalId").is(hospitalId).and("tcmGuide").exists(true).and("yn") + int count = (int)mongoTemplate.count(new Query().addCriteria(Criteria.where("hospitalId").is(hospitalId).and("articleTypes").exists(true).and("yn") .is(YnEnums.YES.getId()).and("checkDate").gte(DateUtil.getDayFirstSecond(start)).lte(DateUtil.getDayLastSecond(end))),BabyCheckModel.class); return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setData(count).setErrormsg("成功"); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java index 6bb6694..11c7797 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java @@ -259,6 +259,7 @@ public class BookbuildingFacade { if (yunRequest.getPregnantCertificateNum() != null) { patientsQuery.setCardNo(yunRequest.getPregnantCertificateNum()); + patientsQuery.setHospitalId(null); //判断该身份证号码是否有孕妇建档 在该医院 List patients = yunBookbuildingService.queryPregnantWithQuery(patientsQuery); if (yunRequest.getLastMenstrualPeriod() != null && !yunRequest.getLastMenstrualPeriod().equals("")) {//todowtt diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java index 0df828e..5589298 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java @@ -1625,11 +1625,11 @@ public class PreEugebicsServiceImpl extends BaseServiceImpl implements IPreEugen String cjzxjs=null!=model.getWifeClinicalCheck().get("cjzxjs")?model.getWifeClinicalCheck().get("cjzxjs").toString():null; if(StringUtils.isNotEmpty(cjzxjs)){ double js=Double.parseDouble(cjzxjs); - if(js>50){//偏高 + if(js>5.1){//偏高 abnormityList.add("促甲状腺激素(TSH):女方: "+js+" u IU/ml"); abnormityProposal.add("常见于原发性甲减,亚临床甲减,地方性甲状腺肿,亚急性甲状腺炎或慢性淋巴细胞性甲状腺炎。" + "建议明确诊断,由产科医生和内分泌科医生评估是否适合妊娠。"); - }else if(js<30){//偏低 + }else if(js<0.35){//偏低 abnormityList.add("促甲状腺激素(TSH):女方: "+js+" u IU/ml"); abnormityProposal.add("常见于甲亢,亚临床甲亢。建议明确诊断,由产科医生和内分泌科医生评估是否适合妊娠。"); }