问卷新增字段 写值

This commit is contained in:
zhuangyuanke 2024-12-25 09:17:21 +08:00
parent 3862bdb017
commit ce5e3b68df
2 changed files with 21 additions and 3 deletions

View File

@ -11,6 +11,9 @@ import com.xinelu.manage.service.aiob.IAIOBService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.springframework.http.HttpRequest;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -93,7 +96,13 @@ public class AIOBController extends BaseController {
*/
@ApiOperation("任务单通电话回调")
@PostMapping("/taskCallBack")
public JSONObject taskCallBack(@RequestBody TaskCallbackDto taskCallbackDto) throws ClientException {
public JSONObject taskCallBack(@RequestBody TaskCallbackDto taskCallbackDto, HttpServletRequest request) throws ClientException {
// logger.info(request.getURI().getHost());
// logger.info(request.getURI().getRawPath());
logger.info(request.getRemoteHost());
// logger.info(request.getURI().getHost());
return aiobService.taskCallBack(taskCallbackDto.getCallbackType(), taskCallbackDto.getData());
}

View File

@ -451,7 +451,7 @@ public class AIOBServiceImpl implements IAIOBService {
}
//接通状态1-已接通
if (data.getEndType() != null && data.getEndType() == 0) {
if (data.getEndType() != null && data.getEndType() == 1) {
// 问卷记录保存
if (StringUtils.equals(signPatientManageRouteNode.getTaskNodeType(), TaskNodeTypeEnum.QUESTIONNAIRE_SCALE.getInfo())) {
parseQuestionInfo(data.getRecord(), signPatientManageRouteNode, signPatientManageRoute.getPatientId(), patientTaskExecuteRecord.getId());
@ -637,6 +637,8 @@ public class AIOBServiceImpl implements IAIOBService {
patientQuestionSubjectResult.setCreateTime(LocalDateTime.now());
//不管是否是 填空题 写入回答 文本
patientQuestionSubjectResult.setFillBlanksAnswer(nextRecord.getContent());
patientQuestionSubjectResult.setQuestionSubjectId(questionSubjectVO.getId());
patientQuestionSubjectResultMapper.insertPatientQuestionSubjectResult(patientQuestionSubjectResult);
// 3保存patient_question_option_result
@ -658,13 +660,19 @@ public class AIOBServiceImpl implements IAIOBService {
patientQuestionOptionResult.setId(null);
patientQuestionOptionResult.setCreateTime(LocalDateTime.now());
patientQuestionOptionResult.setQuestionSubjectResultId(patientQuestionSubjectResult.getId());
patientQuestionOptionResult.setQuestionSubjectOptionId(questionSubjectOption.getId());
patientQuestionOptionResults.add(patientQuestionOptionResult);
});
//判断问卷 满意项与异常项
patientQuestionSubmitResult.setRemarkableFlag(ContentedAndRemarkableFlagEnum.ROUTINE.getInfo());
patientQuestionSubmitResult.setContentedFlag(ContentedAndRemarkableFlagEnum.CONTENTED.getInfo());
if (CollectionUtils.isNotEmpty(patientQuestionOptionResults)) {
List<PatientQuestionOptionResult> remarkableFlag = patientQuestionOptionResults.stream().filter(Objects::nonNull).filter(item -> org.apache.commons.lang3.StringUtils.isNotBlank(item.getRemarkableFlag()) && Objects.nonNull(item.getOptionChooseSign()) && item.getOptionChooseSign().equals(0) && ContentedAndRemarkableFlagEnum.REMARKABLE.getInfo().equals(item.getRemarkableFlag())).collect(Collectors.toList());
List<PatientQuestionOptionResult> remarkableFlag = patientQuestionOptionResults.stream().filter(Objects::nonNull)
.filter(item -> org.apache.commons.lang3.StringUtils.isNotBlank(item.getRemarkableFlag())
&& Objects.nonNull(item.getOptionChooseSign()) && item.getOptionChooseSign().equals(0)
&& ContentedAndRemarkableFlagEnum.REMARKABLE.getInfo().equals(item.getRemarkableFlag()))
.collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(remarkableFlag)) {
patientQuestionSubmitResult.setRemarkableFlag(ContentedAndRemarkableFlagEnum.REMARKABLE.getInfo());
}
@ -673,6 +681,7 @@ public class AIOBServiceImpl implements IAIOBService {
patientQuestionSubmitResult.setContentedFlag(ContentedAndRemarkableFlagEnum.DISCONTENTED.getInfo());
}
}
questionSubmitResultMapper.updatePatientQuestionSubmitResult(patientQuestionSubmitResult);
if(patientQuestionOptionResults.size()>0) {
patientQuestionOptionResultMapper.saveQuestionOptionList(patientQuestionOptionResults);