Browse Source

20201230添加根据报告单和试题id查询选项详情的接口

sd
zy_Java 5 years ago
parent
commit
309edfaa1c
  1. 15
      ht/src/main/java/com/ccsens/ht/api/QuestionController.java
  2. 8
      ht/src/main/java/com/ccsens/ht/service/IQuestionService.java
  3. 31
      ht/src/main/java/com/ccsens/ht/service/QuestionService.java

15
ht/src/main/java/com/ccsens/ht/api/QuestionController.java

@ -50,6 +50,21 @@ public class QuestionController {
return JsonResponse.newInstance().ok(query);
}
@MustLogin
@DoctorAudit
@ApiOperation(value = "通过报告单和试题id查询试题的答案",notes = "测评试题查询")
@ApiImplicitParams({
@ApiImplicitParam(name = "json", value = "测评试题查询信息", required = true)
})
@RequestMapping(value="/optionJson", method = RequestMethod.POST)
public JsonResponse<List<QuestionVo.OptionJson>> queryOptionJson(@RequestBody @ApiParam @Valid QueryDto<QuestionDto.QueryPatientCanvas> queryDto){
log.info("查询试题:{}", queryDto);
List<QuestionVo.OptionJson> optionJsonList = questionService.queryOptionJson(queryDto.getParam(), queryDto.getUserId());
log.info("查询试题结果:{}", optionJsonList);
return JsonResponse.newInstance().ok(optionJsonList);
}
@MustLogin
@DoctorAudit
@ApiOperation(value = "保存试题得分",notes = "保存试题得分")

8
ht/src/main/java/com/ccsens/ht/service/IQuestionService.java

@ -46,4 +46,12 @@ public interface IQuestionService {
* @return
*/
List<QuestionVo.PatientCanvas> getCanvas(QuestionDto.QueryPatientCanvas param, Long userId);
/**
* 通过报告单和试题id查询选项
* @param param 报告单id 试题id
* @param userId userId
* @return 返回选项
*/
List<QuestionVo.OptionJson> queryOptionJson(QuestionDto.QueryPatientCanvas param, Long userId);
}

31
ht/src/main/java/com/ccsens/ht/service/QuestionService.java

@ -92,8 +92,8 @@ public class QuestionService implements IQuestionService {
f = true;
questionVo.setShowShareAnswer((byte) 0);
}
//试题选项
List<QuestionVo.Option> optionList = htQuestionOptionDao.queryOption(question.getId(), query.getPatientReportId());
// //试题选项
// List<QuestionVo.Option> optionList = htQuestionOptionDao.queryOption(question.getId(), query.getPatientReportId());
//查询可以共享答案的试题的id
List<Long> shareAnswerIds = new ArrayList<>();
@ -105,7 +105,7 @@ public class QuestionService implements IQuestionService {
if(!f){
if(shareAnswer.getShowShareAnswer() == 1){
questionVo.setShowShareAnswer(shareAnswer.getShowShareAnswer());
optionList = htQuestionOptionDao.queryOption(shareAnswer.getShareAnswerId(), query.getPatientReportId());
// optionList = htQuestionOptionDao.queryOption(shareAnswer.getShareAnswerId(), query.getPatientReportId());
}
}
}
@ -155,8 +155,8 @@ public class QuestionService implements IQuestionService {
introduceExample.setOrderByClause("sort");
List<HtQuestionIntroducer> introduces = htQuestionIntroducerDao.selectByExample(introduceExample);
List<QuestionVo.Introduce> introduceVos = QuestionVo.Introduce.toIntroduces(introduces);
// //试题选项
// List<QuestionVo.Option> options = htQuestionOptionDao.queryOption(question.getId(), query.getPatientReportId());
//试题选项
List<QuestionVo.Option> optionList = htQuestionOptionDao.queryOption(question.getId(), query.getPatientReportId());
//答题记录
List<QuestionVo.Record> recordVos;
@ -177,6 +177,27 @@ public class QuestionService implements IQuestionService {
return data;
}
@Override
public List<QuestionVo.OptionJson> queryOptionJson(QuestionDto.QueryPatientCanvas param, Long userId) {
List<QuestionVo.OptionJson> optionJsons = new ArrayList<>();
List<QuestionVo.Option> options = htQuestionOptionDao.queryOption(param.getQuestionId(), param.getPatientReportId());
if (CollectionUtil.isNotEmpty(options)) {
//方便后续把相同属性的选项放到一个对象的List中
Map<String, QuestionVo.OptionJson> map = new HashMap<>();
options.forEach(option -> {
if (map.get(option.getName()) == null) {
QuestionVo.OptionJson json = new QuestionVo.OptionJson();
json.setName(option.getName());
map.put(json.getName(), json);
//相同属性的选项放在同一个optionJson里
optionJsons.add(json);
}
QuestionVo.OptionJson json = map.get(option.getName());
json.addOption(option);
});
}
return optionJsons;
}
@Override
public CodeEnum saveScore(QuestionDto.Score score, Long userId) throws IOException, NotSupportedFileTypeException {

Loading…
Cancel
Save