小程序问卷字段新增

This commit is contained in:
zhangheng 2024-12-04 17:56:58 +08:00
parent 9c702e514d
commit cc338442dc
4 changed files with 25 additions and 18 deletions

View File

@ -628,6 +628,8 @@ public class AIOBServiceImpl implements IAIOBService {
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());
if (CollectionUtils.isNotEmpty(remarkableFlag)) {
@ -639,7 +641,6 @@ public class AIOBServiceImpl implements IAIOBService {
}
}
questionSubmitResultMapper.updatePatientQuestionSubmitResult(patientQuestionSubmitResult);
patientQuestionOptionResultMapper.saveQuestionOptionList(patientQuestionOptionResults);
totalScore[0] = totalScore[0].add(questionSubjectVO.getQuestionScore() == null ? BigDecimal.ZERO : questionSubjectVO.getQuestionScore());
} else {

View File

@ -51,13 +51,13 @@ public class PatientQuestionSubmitResultVO {
* 冗余:整个问卷中是否包含不满意项;DISCONTENTED:不满意;CONTENTED:满意;默认CONTENTED;
* 2024/12/2
*/
private String contentedFlag;
private String submitContentedFlag;
/**
* 冗余:整个问卷中是否包含异常项;REMARKABLE:异常的;ROUTINE:正常的;默认ROUTINE
* 2024/12/2
*/
private String remarkableFlag;
private String submitRemarkableFlag;
List<PatientQuestionSubjectResultVO> subjectResultList;

View File

@ -41,8 +41,8 @@
<result property="questionnaireDescription" column="questionnaire_description"/>
<result property="questionnaireTotalScore" column="questionnaire_total_score"/>
<result property="totalScore" column="total_score"/>
<result property="contentedFlag" column="contented_flag"/>
<result property="remarkableFlag" column="remarkable_flag"/>
<result property="submitContentedFlag" column="submitContentedFlag"/>
<result property="submitRemarkableFlag" column="submitRemarkableFlag"/>
<collection property="subjectResultList" javaType="java.util.List"
resultMap="PatientQuestionSubjectResultResult"/>
</resultMap>
@ -417,8 +417,8 @@
pqsm.questionnaire_description,
pqsm.questionnaire_total_score,
pqsm.total_score,
pqsm.contented_flag,
pqsm.remarkable_flag,
pqsm.contented_flag submitContentedFlag,
pqsm.remarkable_flag submitRemarkableFlag,
pqsj.id subjectResult,
pqsj.question_submit_result_id,
pqsj.question_info_id,

View File

@ -4,11 +4,7 @@ import com.alibaba.fastjson2.JSONObject;
import com.xinelu.common.constant.TaskStatisticsTypeConstants;
import com.xinelu.common.core.domain.AjaxResult;
import com.xinelu.common.core.page.TableDataInfo;
import com.xinelu.common.enums.NodeExecuteStatusEnum;
import com.xinelu.common.enums.QuestionTypeEnum;
import com.xinelu.common.enums.QuestionnaireStatusEnum;
import com.xinelu.common.enums.RouteNodeNameEnum;
import com.xinelu.common.enums.TaskContentEnum;
import com.xinelu.common.enums.*;
import com.xinelu.common.exception.ServiceException;
import com.xinelu.common.utils.PageServiceUtil;
import com.xinelu.common.utils.bean.BeanUtils;
@ -59,12 +55,6 @@ import java.util.Comparator;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* 小程序首页ServiceImpl
@ -223,6 +213,20 @@ public class HomePageServiceImpl implements HomePageService {
patientQuestionSubmitResult.setManageRouteId(patientTaskExecuteRecord.getManageRouteId());
patientQuestionSubmitResult.setManageRouteName(patientTaskExecuteRecord.getManageRouteName());
patientQuestionSubmitResult.setCreateTime(time);
List<PatientQuestionOptionResultDTO> patientQuestionOptionResultsFlag = new ArrayList<>();
patientQuestionSubmitResult.setRemarkableFlag(ContentedAndRemarkableFlagEnum.ROUTINE.getInfo());
patientQuestionSubmitResult.setContentedFlag(ContentedAndRemarkableFlagEnum.CONTENTED.getInfo());
dto.getSubjectResultDTOList().forEach(item -> patientQuestionOptionResultsFlag.addAll(item.getOptionResultList()));
if (CollectionUtils.isNotEmpty(patientQuestionOptionResultsFlag)) {
List<PatientQuestionOptionResultDTO> remarkableFlag = patientQuestionOptionResultsFlag.stream().filter(Objects::nonNull).filter(item -> 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());
}
List<PatientQuestionOptionResultDTO> contentedFlag = patientQuestionOptionResultsFlag.stream().filter(Objects::nonNull).filter(item -> StringUtils.isNotBlank(item.getContentedFlag()) && Objects.nonNull(item.getOptionChooseSign()) && item.getOptionChooseSign().equals(0) && ContentedAndRemarkableFlagEnum.DISCONTENTED.getInfo().equals(item.getRemarkableFlag())).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(contentedFlag)) {
patientQuestionSubmitResult.setContentedFlag(ContentedAndRemarkableFlagEnum.DISCONTENTED.getInfo());
}
}
// 新增患者问卷提交结果
if (patientQuestionSubmitResultMapper.insertPatientQuestionSubmitResult(patientQuestionSubmitResult) <= 0) {
log.info("新增任务记录表失败");
@ -239,6 +243,7 @@ public class HomePageServiceImpl implements HomePageService {
BeanUtils.copyBeanProp(saveQuestionSubject, questionSubjectResult);
saveQuestionSubject.setQuestionSubmitResultId(patientQuestionSubmitResult.getId());
saveQuestionSubject.setCreateTime(time);
saveQuestionSubject.setQuestionSubjectId(questionSubjectResult.getId());
patientQuestionSubjectResults.add(saveQuestionSubject);
if (CollectionUtils.isNotEmpty(questionSubjectResult.getOptionResultList())) {
patientQuestionOptionResults.addAll(questionSubjectResult.getOptionResultList());
@ -261,6 +266,7 @@ public class HomePageServiceImpl implements HomePageService {
PatientQuestionSubjectResult patientQuestionSubjectResult = patientQuestionSubjectResults.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getQuestionNumber()) && patientQuestionOptionResult.getQuestionNumber().compareTo(item.getQuestionNumber()) == 0).findFirst().orElse(new PatientQuestionSubjectResult());
saveQuestionOption.setQuestionSubjectResultId(patientQuestionSubjectResult.getId());
saveQuestionOption.setCreateTime(time);
saveQuestionOption.setQuestionSubjectOptionId(patientQuestionOptionResult.getId());
saveQuestionSubjectOptions.add(saveQuestionOption);
}
// 新增患者问卷题目选项提交结果