diff --git a/ht/src/main/java/com/ccsens/ht/api/QuestionController.java b/ht/src/main/java/com/ccsens/ht/api/QuestionController.java index ec306254..254c76c9 100644 --- a/ht/src/main/java/com/ccsens/ht/api/QuestionController.java +++ b/ht/src/main/java/com/ccsens/ht/api/QuestionController.java @@ -91,6 +91,19 @@ public class QuestionController { return JsonResponse.newInstance().ok(patientCanvas); } + @MustLogin + @DoctorAudit + @ApiOperation(value = "保存题目的其他记录",notes = "whj:保存题目的其他记录") + @ApiImplicitParams({ + }) + @RequestMapping(value="/delCanvas", method = RequestMethod.POST) + public JsonResponse saveRecord(@RequestBody @ApiParam @Valid QueryDto> queryDto) { + log.info("保存题目的其他记录:{}", queryDto); + questionService.saveRecord(queryDto.getParam(), queryDto.getUserId()); + log.info("保存题目的其他记录成功"); + return JsonResponse.newInstance().ok(); + } + @MustLogin @DoctorAudit @ApiOperation(value = "查看用户画图信息",notes = "zy:查看画板信息画图轨迹等") @@ -116,4 +129,5 @@ public class QuestionController { log.info("删除画图轨迹成功"); return JsonResponse.newInstance().ok(); } + } diff --git a/ht/src/main/java/com/ccsens/ht/bean/dto/QuestionDto.java b/ht/src/main/java/com/ccsens/ht/bean/dto/QuestionDto.java index b5c852f1..42478cdf 100644 --- a/ht/src/main/java/com/ccsens/ht/bean/dto/QuestionDto.java +++ b/ht/src/main/java/com/ccsens/ht/bean/dto/QuestionDto.java @@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.servlet.http.Part; +import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.io.File; import java.math.BigDecimal; @@ -76,6 +77,22 @@ public class QuestionDto { @ApiModelProperty("超出占比") private String beyondProportion; } + + @Data + @ApiModel("其他记录-request") + public static class Record{ + @NotNull + @ApiModelProperty("病人报告单ID") + private Long patientReportId; + @NotNull + @ApiModelProperty("试题ID") + @NotNull(message = "试题ID不能为空") + private Long recordId; + @NotEmpty + @ApiModelProperty("答案") + private List answers; + } + @Data @ApiModel("画板信息") public static class Canvas{ diff --git a/ht/src/main/java/com/ccsens/ht/bean/vo/QuestionVo.java b/ht/src/main/java/com/ccsens/ht/bean/vo/QuestionVo.java index 404023d4..11920f19 100644 --- a/ht/src/main/java/com/ccsens/ht/bean/vo/QuestionVo.java +++ b/ht/src/main/java/com/ccsens/ht/bean/vo/QuestionVo.java @@ -204,6 +204,19 @@ public class QuestionVo { private List answers; @ApiModelProperty("选项") private List options; + + public List getOptions() { + if (CollectionUtil.isNotEmpty(answers) && CollectionUtil.isNotEmpty(options)) { + for (RecordOption option: options) { + for (String answer: answers) { + if (option.getDataKey().equals(answer)) { + option.choose = 1; + } + } + } + } + return options; + } } @Data @ApiModel("record的选项") @@ -214,6 +227,8 @@ public class QuestionVo { private String dataKey; @ApiModelProperty("显示值") private String dataValue; + @ApiModelProperty("是否选中 0:否 1:是") + private byte choose = 0; } @Data diff --git a/ht/src/main/java/com/ccsens/ht/service/IQuestionService.java b/ht/src/main/java/com/ccsens/ht/service/IQuestionService.java index b77d58af..5615fefd 100644 --- a/ht/src/main/java/com/ccsens/ht/service/IQuestionService.java +++ b/ht/src/main/java/com/ccsens/ht/service/IQuestionService.java @@ -17,33 +17,33 @@ public interface IQuestionService { /** * 根据类型和题号,查询试题 - * @param query - * @param userId - * @return + * @param query 类型和题号 + * @param userId userId + * @return 试题及相关 */ QuestionVo.Query queryQuestion(QuestionDto.Query query, Long userId); /** * 保存试题得分 - * @param score - * @param userId - * @return + * @param score 分数 + * @param userId userId + * @return 成功与否 */ - CodeEnum saveScore(QuestionDto.Score score, Long userId) throws IOException, NotSupportedFileTypeException; + CodeEnum saveScore(QuestionDto.Score score, Long userId); /** * 保存画图轨迹信息 - * @param param - * @param userId - * @return + * @param param 画图 + * @param userId userId + * @return 轨迹 */ List saveCanvas(QuestionDto.SavePatientCanvas param, Long userId); /** * 查看用户画图信息 - * @param param - * @param userId - * @return + * @param param 报告单+试题 + * @param userId userId + * @return 画图及分析 */ List getCanvas(QuestionDto.QueryPatientCanvas param, Long userId); @@ -61,4 +61,11 @@ public interface IQuestionService { * @param userId userId */ void delCanvas(QuestionDto.DelPatientCanvas param, Long userId); + + /** + * 保存题目的其他记录 + * @param records 记录 + * @param userId 用户ID + */ + void saveRecord(List records, Long userId); } 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 0cd99494..46f07541 100644 --- a/ht/src/main/java/com/ccsens/ht/service/QuestionService.java +++ b/ht/src/main/java/com/ccsens/ht/service/QuestionService.java @@ -185,7 +185,7 @@ public class QuestionService implements IQuestionService { } @Override - public CodeEnum saveScore(QuestionDto.Score score, Long userId) throws IOException, NotSupportedFileTypeException { + public CodeEnum saveScore(QuestionDto.Score score, Long userId) { log.info("保存分数{}", score); if (score.getPatientReportId() == null) { @@ -400,7 +400,7 @@ public class QuestionService implements IQuestionService { * @throws IOException * @throws NotSupportedFileTypeException */ - private List getHtPatientScores(QuestionDto.Score score, HtQuestion question, HtPatientReport report, List ruleList, Map nameOption, Map idOption) throws IOException, NotSupportedFileTypeException { + private List getHtPatientScores(QuestionDto.Score score, HtQuestion question, HtPatientReport report, List ruleList, Map nameOption, Map idOption) { List scores = new ArrayList<>(); for(QuestionDto.Option option : score.getOptions()) { HtQuestionOption questionOption = idOption.get(option.getId()); @@ -1029,4 +1029,12 @@ public class QuestionService implements IQuestionService { }); } } + + @Override + public void saveRecord(List records, Long userId) { + if (CollectionUtil.isEmpty(records)) { + return; + } + // TODO + } }