From 770712124e56931b38e3f53ad04512ed41c4e7e1 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Thu, 26 Jul 2018 14:24:16 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=80=E7=B3=96=E6=8A=A5=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/service/impl/BloodSugarServiceImpl.java | 203 ++++++--------------- 1 file changed, 52 insertions(+), 151 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java index 80d4ab5..8cfc99e 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BloodSugarServiceImpl.java @@ -267,9 +267,9 @@ public class BloodSugarServiceImpl extends BaseServiceImpl implements IBloodSuga one.setModified(new Date()); one.setCreatYmdDate(DateUtil.getyyyy_MM_dd(new Date())); if(!flag) { - bloodSugarService.add(one); + bloodSugarService.add(one); } else { - mongoTemplate.save(one); + mongoTemplate.save(one); } return RespBuilder.buildSuccess(one.getId()); } @@ -459,7 +459,7 @@ public class BloodSugarServiceImpl extends BaseServiceImpl implements IBloodSuga hrisks.add("5aab6d3e422b03d4ad2bf83f"); hrisks.add("de7468e6-1bb5-4fab-ae84-78857868409a"); antExRecordQuery.setrFactorList(hrisks); - List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.ASC, "created"); + List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.ASC,"created"); if (org.apache.commons.collections.CollectionUtils.isNotEmpty(antExRecordModelList)) { for (AntExRecordModel model : antExRecordModelList) @@ -503,26 +503,24 @@ public class BloodSugarServiceImpl extends BaseServiceImpl implements IBloodSuga Integer type = Integer.valueOf(String.valueOf(map.get("type"))); // 1 无需药物治疗 2 需药物治疗 Date checkDate = (Date)map.get("checkDate"); //第一次出现糖尿病的检查时间 - //Date currentDate = DateUtil.addDay(DateUtil.formatDate(new Date()),-7); + Date currentDate = DateUtil.addDay(DateUtil.formatDate(new Date()),-7); BloodSugarQuery bloodSugarQuery = new BloodSugarQuery(); bloodSugarQuery.setIsExistReportDate(true); bloodSugarQuery.setPid(pid); List bloodSugars = bloodSugarService.queryBloodSugarList(bloodSugarQuery, Sort.Direction.DESC, "reportDate"); - if (CollectionUtils.isNotEmpty(bloodSugars)) { BloodSugar blood = bloodSugars.get(0); if (blood != null && blood.getReportDate() != null) { - queryDate = blood.getReportDate(); + queryDate = currentDate.getTime() > blood.getReportDate().getTime() ? currentDate : blood.getReportDate(); } } else { - queryDate = checkDate; + queryDate = checkDate.getTime() < currentDate.getTime() ? currentDate : checkDate; } - //达标次数 int successCount = 0; @@ -532,162 +530,65 @@ public class BloodSugarServiceImpl extends BaseServiceImpl implements IBloodSuga //7 药物治疗,监测次数达标,血糖平稳但不理想 Integer monitorStatus = null; - if (DateUtil.daysBetween(queryDate,new Date()) >= 7) + if (DateUtil.daysBetween(queryDate,new Date()) == 7) { - - while (true) + BloodSugarQuery buery = new BloodSugarQuery(); + buery.setPid(pid); + buery.setCreatedStart(queryDate); + buery.setCreatedEnd(DateUtil.formatDate(DateUtil.addDay(DateUtil.formatDate(new Date()),7))); + List list = bloodSugarService.queryBloodSugarList(buery, Sort.Direction.DESC, "created"); + + int size = list == null ? 0 : list.size(); + if (type == 1 && size < 8) { - - Date endDate = DateUtil.addDay(queryDate,7); - if (endDate.getTime() > new Date().getTime()) - { - break; - } - - BloodSugarQuery buery = new BloodSugarQuery(); - buery.setPid(pid); - buery.setCreatedStart(queryDate); - buery.setCreatedEnd(endDate); - List list = bloodSugarService.queryBloodSugarList(buery, Sort.Direction.DESC, "created"); - - - int size = list == null ? 0 : list.size(); - if (type == 1 && size < 8) - { - monitorStatus = 1; - } - else if (type == 1 && size >= 8) + monitorStatus = 1; + } + else if (type == 1 && size >= 8) + { + for (BloodSugar blood : list) { - for (BloodSugar blood : list) + Integer bsType = blood.getBloodSugarType(); + if (StringUtils.isEmpty(blood.getBloodSugar()) || bsType == null) { - Integer bsType = blood.getBloodSugarType(); - if (StringUtils.isEmpty(blood.getBloodSugar()) || bsType == null) - { - continue; - } - successCount += getBloodSugarSuccess(bsType, blood); - + continue; } - double result = new BigDecimal((float)successCount / size).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); - monitorStatus = result < 0.8 ? 2 : 3; - } - else if (type == 2 && size < 21) - { - monitorStatus = 4; + successCount += getBloodSugarSuccess(bsType, blood); + } - else if (type == 2 && size >= 21) + double result = new BigDecimal((float)successCount / size).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); + monitorStatus = result < 0.8 ? 2 : 3; + } + else if (type == 2 && size < 21) + { + monitorStatus = 4; + } + else if (type == 2 && size >= 21) + { + for (BloodSugar blood : list) { - for (BloodSugar blood : list) + Integer bsType = blood.getBloodSugarType(); + if (StringUtils.isEmpty(blood.getBloodSugar()) || bsType == null) { - Integer bsType = blood.getBloodSugarType(); - if (StringUtils.isEmpty(blood.getBloodSugar()) || bsType == null) - { - continue; - } - successCount += getBloodSugarSuccess(bsType, blood); + continue; } - double result = new BigDecimal((float)successCount / size).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); - monitorStatus = result < 0.6 ? 5 : (result < 0.8 ? 6 : 7); + successCount += getBloodSugarSuccess(bsType, blood); } + double result = new BigDecimal((float)successCount / size).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); + monitorStatus = result < 0.6 ? 5 : (result < 0.8 ? 6 : 7); + } - Patients patients = mongoTemplate.findById(one.getParentId(), Patients.class); - int week = DateUtil.getWeek2(patients.getLastMenses(), DateUtil.formatDate(one.getCreated())); - if (week < 6) - { - return false; - } - one.setCurrentWeek(week); - one.setMonitorStatus(monitorStatus); - one.setReportDate(DateUtil.formatDate(DateUtil.addDay(new Date(), -1))); - one.setStatus(1); //报告状态 1未查看 2查看 - - queryDate = endDate; - - return true; + Patients patients = mongoTemplate.findById(one.getParentId(), Patients.class); + int week = DateUtil.getWeek2(patients.getLastMenses(), DateUtil.formatDate(one.getCreated())); + if (week < 6) + { + return false; } + one.setCurrentWeek(week); + one.setMonitorStatus(monitorStatus); + one.setReportDate(DateUtil.formatDate(DateUtil.addDay(new Date(), -1))); + one.setStatus(1); //报告状态 1未查看 2查看 + return true; } - - -// if (CollectionUtils.isNotEmpty(bloodSugars)) -// { -// BloodSugar blood = bloodSugars.get(0); -// if (blood != null && blood.getReportDate() != null) -// { -// queryDate = currentDate.getTime() > blood.getReportDate().getTime() ? currentDate : blood.getReportDate(); -// } -// } -// else -// { -// queryDate = checkDate.getTime() < currentDate.getTime() ? currentDate : checkDate; -// } -// //达标次数 -// int successCount = 0; -// -// //监测状态 1 非药物治疗,监测不足 2 非药物治疗,监测次数达标,血糖控制不理想 -// //3 非药物治疗,监测次数达标,血糖控制良好 4 药物治疗,监测不足 -// //5 药物治疗,监测次数达标,血糖波动较大 6 药物治疗,监测次数达标,血糖控制良好 -// //7 药物治疗,监测次数达标,血糖平稳但不理想 -// Integer monitorStatus = null; -// -// if (DateUtil.daysBetween(queryDate,new Date()) == 7) -// { -// BloodSugarQuery buery = new BloodSugarQuery(); -// buery.setPid(pid); -// buery.setCreatedStart(queryDate); -// buery.setCreatedEnd(DateUtil.formatDate(DateUtil.addDay(DateUtil.formatDate(new Date()),7))); -// List list = bloodSugarService.queryBloodSugarList(buery, Sort.Direction.DESC, "created"); -// -// int size = list == null ? 0 : list.size(); -// if (type == 1 && size < 8) -// { -// monitorStatus = 1; -// } -// else if (type == 1 && size >= 8) -// { -// for (BloodSugar blood : list) -// { -// Integer bsType = blood.getBloodSugarType(); -// if (StringUtils.isEmpty(blood.getBloodSugar()) || bsType == null) -// { -// continue; -// } -// successCount += getBloodSugarSuccess(bsType, blood); -// -// } -// double result = new BigDecimal((float)successCount / size).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); -// monitorStatus = result < 0.8 ? 2 : 3; -// } -// else if (type == 2 && size < 21) -// { -// monitorStatus = 4; -// } -// else if (type == 2 && size >= 21) -// { -// for (BloodSugar blood : list) -// { -// Integer bsType = blood.getBloodSugarType(); -// if (StringUtils.isEmpty(blood.getBloodSugar()) || bsType == null) -// { -// continue; -// } -// successCount += getBloodSugarSuccess(bsType, blood); -// } -// double result = new BigDecimal((float)successCount / size).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); -// monitorStatus = result < 0.6 ? 5 : (result < 0.8 ? 6 : 7); -// } -// -// Patients patients = mongoTemplate.findById(one.getParentId(), Patients.class); -// int week = DateUtil.getWeek2(patients.getLastMenses(), DateUtil.formatDate(one.getCreated())); -// if (week < 6) -// { -// return false; -// } -// one.setCurrentWeek(week); -// one.setMonitorStatus(monitorStatus); -// one.setReportDate(DateUtil.formatDate(DateUtil.addDay(new Date(), -1))); -// one.setStatus(1); //报告状态 1未查看 2查看 -// return true; -// } } return false; } -- 1.8.3.1