diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/NerveMovementListRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/NerveMovementListRequest.java index 5908e55..3335920 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/NerveMovementListRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/NerveMovementListRequest.java @@ -41,6 +41,19 @@ public class NerveMovementListRequest extends BaseQuery implements Serializable private Integer startAbnormalSize; private Integer endAbnormalSize; + /** + * 是否加密 1|是 2|否 + */ + private String isEncrypt = "2"; + + public String getIsEncrypt() { + return isEncrypt; + } + + public void setIsEncrypt(String isEncrypt) { + this.isEncrypt = isEncrypt; + } + public String getStartCheckTime() { return startCheckTime; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java index 2e86277..bf8029d 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyAfterVisitServiceImpl.java @@ -934,11 +934,19 @@ public class BabyAfterVisitServiceImpl implements BabyAfterVisitService { mongoTemplate.updateFirst(Query.query(Criteria.where("_id").is(visitInfoModel.getId())), update, BabyAfterVisitInfoModel.class); if (afterVisitWorkflow.equals(TrackDownTransferEnums.C.getId().toString())) { // 终止所有流程 - mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is("3")), Update.update("afterVisitWorkflow", "3"), BabyAfterVisitInfoModel.class); - mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is("2")), Update.update("afterVisitWorkflow", "3"), BabyAfterVisitInfoModel.class); - mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId)), Update.update("afterVisitWorkflowStatus", "2"), BabyAfterVisitStatisticsModel.class); + Update update1 = new Update(); + update1.set("afterVisitWorkflow", "3"); + update1.set("yn", 2); + mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is("3")), update1, BabyAfterVisitInfoModel.class); + mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is("2")), update1, BabyAfterVisitInfoModel.class); + mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId)), Update.update("afterVisitWorkflowStatus", "2").set("yn", 2), BabyAfterVisitStatisticsModel.class); } + if (afterVisitWorkflow.equals(TrackDownTransferEnums.B.getId().toString())) { + mongoTemplate.updateFirst(Query.query(Criteria.where(BABY_ID).is(babyId).and("type").is(type)), Update.update("afterVisitWorkflow", "2").set("yn", 2), BabyAfterVisitInfoModel.class); + } + + return new BaseResponse(); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEvaluationCriterionServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEvaluationCriterionServiceImpl.java index 006a2bd..f0df564 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEvaluationCriterionServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEvaluationCriterionServiceImpl.java @@ -10,6 +10,7 @@ import com.lyms.platform.operate.web.facade.AutoMatchFacade; import com.lyms.platform.operate.web.request.*; import com.lyms.platform.operate.web.service.BabyEvaluationCriterionService; import com.lyms.platform.operate.web.utils.CollectionUtils; +import com.lyms.platform.operate.web.utils.EncryptUtil; import com.lyms.platform.permission.dao.master.MasterUsersMapper; import com.lyms.platform.permission.model.Users; import com.lyms.platform.pojo.*; @@ -415,7 +416,7 @@ public class BabyEvaluationCriterionServiceImpl implements BabyEvaluationCriteri * @return */ @Override - public BaseResponse nerveMovementList(Integer userId, NerveMovementListRequest param) { + public BaseResponse nerveMovementList(Integer userId, final NerveMovementListRequest param) { String hospitalId = autoMatchFacade.getHospitalId(userId); Query query = new Query(); query.addCriteria(Criteria.where("hospitalId").is(hospitalId).and("yn").is(YnEnums.YES.getId())); @@ -479,8 +480,10 @@ public class BabyEvaluationCriterionServiceImpl implements BabyEvaluationCriteri Users users = usersMapper.getUsers(Integer.parseInt(checkDoctor)); String checkDoctorName = null != users ? users.getName() : ""; stringMap.put("checkDoctorName", checkDoctorName); - - // TODO 2019/7/29 18:02 dongqing + stringMap.put("checkTimeStr", DateUtil.getyyyy_MM_dd(model.getCheckTime())); + stringMap.put("checkMonth", DateUtil.getBabyMonthAge(model.getBirth(), model.getCheckTime())); + stringMap.put("mcertNo", "1".equals(param.getIsEncrypt()) ? EncryptUtil.numberEncrypt(model.getMcertNo()) : model.getMcertNo()); + stringMap.put("mphone", "1".equals(param.getIsEncrypt()) ? EncryptUtil.numberEncrypt(model.getMphone()) : model.getMphone()); add(stringMap); } }}; @@ -667,6 +670,7 @@ public class BabyEvaluationCriterionServiceImpl implements BabyEvaluationCriteri if (babyModel == null) { return new BaseResponse().setErrorcode(ErrorCodeConstants.NO_DATA).setErrormsg("未查到该儿童的建档数据"); } + Integer month = DateUtil.getBabyAgeMonth(babyModel.getBirth(), new Date()); model.setBirth(babyModel.getBirth()); model.setCardNo(babyModel.getCardNo()); model.setVcCardNo(babyModel.getVcCardNo()); @@ -678,10 +682,16 @@ public class BabyEvaluationCriterionServiceImpl implements BabyEvaluationCriteri model.setCreateTime(new Date()); model.setCreateUser(userId.toString()); model.setYn(YnEnums.YES.getId()); + // 总分 + model.setTotalScore(model.getStandingComponent() + model.getSeatComponent() + model.getSupineComponent() + model.getLieProstratComponent()); + // 百分位 + BabyEvaluationCriterionModel babyEvaluationCriterionModel = getBabyEvaluationCriterionModel(model, month); + model.setPercentileScore(babyEvaluationCriterionModel.getPercent()); mongoTemplate.insert(model); } if (StringUtils.isNotEmpty(id)) { + Integer month = DateUtil.getBabyAgeMonth(model.getBirth(), new Date()); model.setCheckTime(null); model.setCreateUser(null); model.setCreateTime(null); @@ -696,12 +706,31 @@ public class BabyEvaluationCriterionServiceImpl implements BabyEvaluationCriteri model.setCreateTime(null); model.setCreateUser(null); model.setYn(null); + // 总分 + model.setTotalScore(model.getStandingComponent() + model.getSeatComponent() + model.getSupineComponent() + model.getLieProstratComponent()); + // 百分位 + BabyEvaluationCriterionModel babyEvaluationCriterionModel = getBabyEvaluationCriterionModel(model, month); + model.setPercentileScore(babyEvaluationCriterionModel.getPercent()); Update update = MongoConvertHelper.convertToNativeUpdate(ReflectionUtils.getUpdateField(model)); mongoTemplate.updateFirst(Query.query(Criteria.where("_id").is(id)), update, ExerciseAppraisalModel.class); } return new BaseResponse(); } + private BabyEvaluationCriterionModel getBabyEvaluationCriterionModel(ExerciseAppraisalModel model, Integer month) { + + Integer totalScore = model.getTotalScore(); + + List modelList = mongoTemplate.find(Query.query(Criteria.where("month").is(month).and("type").is(1)), BabyEvaluationCriterionModel.class); + BabyEvaluationCriterionModel evaluationCriterionModel = modelList.get(0); + Integer maxScore = evaluationCriterionModel.getMaxScore(); + Integer minScore = evaluationCriterionModel.getMinScore(); + Integer scoreIndex = maxScore < totalScore ? maxScore : minScore > totalScore ? minScore : totalScore; + List criterionModel = mongoTemplate.find(Query.query(Criteria.where("score").gte(scoreIndex).and("month").is(month).and("type").is(1)). + with(new Sort(new Sort.Order(Sort.Direction.ASC, "minScore")) ), BabyEvaluationCriterionModel.class); + return criterionModel.get(0); + } + /** * 儿童量表--运动测评-根据证件号、就诊卡查询 *