diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java b/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java index 84bac65e..2617b86a 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java @@ -28,7 +28,7 @@ import java.util.Map; * @create: 2019/11/27 10:03 */ -@FeignClient(name = "tall-ht", path = "v1.0", fallbackFactory = TallFeignClientFallBack.class) +@FeignClient(name = "tall", path = "v1.0", fallbackFactory = TallFeignClientFallBack.class) public interface TallFeignClient { /** diff --git a/ht/src/main/java/com/ccsens/ht/bean/dto/PatientReportDto.java b/ht/src/main/java/com/ccsens/ht/bean/dto/PatientReportDto.java index 90e73931..5f82f7aa 100644 --- a/ht/src/main/java/com/ccsens/ht/bean/dto/PatientReportDto.java +++ b/ht/src/main/java/com/ccsens/ht/bean/dto/PatientReportDto.java @@ -81,7 +81,10 @@ public class PatientReportDto { @ApiModelProperty("病人报告单ID") @NotNull(message = "病人报告单ID不能为空") private Long id; + @ApiModelProperty("是否需要rey 默认为0 0全部查询导出 1不导出rey 2只导出rey") + private int rey = 0; } + /**医生对报告单权限*/ @ApiModel("PatientReportDtoAuthority") diff --git a/ht/src/main/java/com/ccsens/ht/persist/dao/HtPatientReportDao.java b/ht/src/main/java/com/ccsens/ht/persist/dao/HtPatientReportDao.java index 5e8ecf12..86aece6b 100644 --- a/ht/src/main/java/com/ccsens/ht/persist/dao/HtPatientReportDao.java +++ b/ht/src/main/java/com/ccsens/ht/persist/dao/HtPatientReportDao.java @@ -29,7 +29,7 @@ public interface HtPatientReportDao extends HtPatientReportMapper { *@Author: wuHuiJuan *@date: 2019/11/19 11:46 */ - List queryReportScore(@Param("id") Long id); + List queryReportScore(@Param("id") Long id,@Param("rey") int rey); /** * 查询NPI的分数 diff --git a/ht/src/main/java/com/ccsens/ht/service/PatientReportService.java b/ht/src/main/java/com/ccsens/ht/service/PatientReportService.java index c028cf97..0743a34c 100644 --- a/ht/src/main/java/com/ccsens/ht/service/PatientReportService.java +++ b/ht/src/main/java/com/ccsens/ht/service/PatientReportService.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.IdcardUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.ccsens.ht.bean.dto.PatientReportDto; import com.ccsens.ht.bean.po.*; @@ -217,11 +218,16 @@ public class PatientReportService implements IPatientReportService { //查询报告单信息和病人信息 PatientReportVo.ReprotPatient reportPatient = htPatientReportDao.queryReportResult(queryDetail.getId()); //查询报告单分数 - List reportScore = htPatientReportDao.queryReportScore(queryDetail.getId()); + List reportScore = htPatientReportDao.queryReportScore(queryDetail.getId(),queryDetail.getRey()); //重新封装报告单信息 Map map = new HashMap<>(32); List scores = new ArrayList<>(); reportScore.forEach(score -> { + if(ObjectUtil.isNotNull(score.getScore())){ + if(BigDecimal.valueOf(score.getScore().intValue()).compareTo(score.getScore()) == 0){ + score.setScore(score.getScore().setScale(0,BigDecimal.ROUND_HALF_UP)); + } + } map.put(score.getCode(), score); //测评类(MOCA等) if (Constant.Ht.Report.TYPE_EVALUATION.equals(score.getType())) { @@ -231,6 +237,7 @@ public class PatientReportService implements IPatientReportService { } scores.add(score); } else { + log.info("score:{}", score); map.get(score.getParentCode()).addSub(score); } @@ -258,7 +265,10 @@ public class PatientReportService implements IPatientReportService { carer.setCode("carer"); carer.setName("照顾者"); carer.setTotalScore(-1); - carer.setScore(npiScore == null || npiScore.get("carer") == null ? null : ((BigDecimal) npiScore.get("carer"))); + carer.setScore(npiScore == null || npiScore.get("carer") == null ? null : ((BigDecimal)npiScore.get("carer"))); + if(ObjectUtil.isNotNull(carer.getScore())){ + carer.setScore(carer.getScore().setScale(0,BigDecimal.ROUND_HALF_UP)); + } carer.setType((byte)3); carer.setParentCode("NPI"); score.addSub(carer); @@ -267,6 +277,9 @@ public class PatientReportService implements IPatientReportService { patient.setName("患者"); patient.setTotalScore(-1); patient.setScore(npiScore == null || npiScore.get("result") == null ? null : ((BigDecimal) npiScore.get("result"))); + if(ObjectUtil.isNotNull(patient.getScore())){ + patient.setScore(patient.getScore().setScale(0,BigDecimal.ROUND_HALF_UP)); + } patient.setType((byte)3); patient.setParentCode("NPI"); score.addSub(patient); @@ -354,6 +367,8 @@ public class PatientReportService implements IPatientReportService { @Override public String exportReport(PatientReportDto.QueryDetail queryDetail, Long userId) { log.info("导出报告单:{}, 操作用户:{}", queryDetail, userId); + // TODO 暂时不导出rey试题,将传入参数改为1 + queryDetail.setRey(1); //查看是否已生成对应文件路径 HtPatientReport report = htPatientReportDao.selectByPrimaryKey(queryDetail.getId()); if (report == null) { diff --git a/ht/src/main/java/com/ccsens/ht/service/QuestionService.java b/ht/src/main/java/com/ccsens/ht/service/QuestionService.java index 96d2c69c..4435a7d9 100644 --- a/ht/src/main/java/com/ccsens/ht/service/QuestionService.java +++ b/ht/src/main/java/com/ccsens/ht/service/QuestionService.java @@ -244,6 +244,12 @@ public class QuestionService implements IQuestionService { for(QuestionDto.Option option : score.getOptions()) { HtQuestionOption questionOption = htQuestionOptionDao.selectByPrimaryKey(option.getId()); + //去除整数后多余的小数点 + if(ObjectUtil.isNotNull(questionOption.getScore())){ + if(BigDecimal.valueOf(questionOption.getScore().intValue()).compareTo(questionOption.getScore()) == 0){ + questionOption.setScore(questionOption.getScore().setScale(0,BigDecimal.ROUND_HALF_UP)); + } + } //未找到对应选项 或选项不是该试题的选项 if (questionOption == null || questionOption.getQuestionId().longValue() != question.getId()) { log.info("选项不存在或不是对应试题的选项"); diff --git a/ht/src/main/resources/mapper_dao/HtPatientReportDao.xml b/ht/src/main/resources/mapper_dao/HtPatientReportDao.xml index 7ff89458..4582b170 100644 --- a/ht/src/main/resources/mapper_dao/HtPatientReportDao.xml +++ b/ht/src/main/resources/mapper_dao/HtPatientReportDao.xml @@ -47,7 +47,15 @@