From e68836950c127b7784ed583a785ac778982bd743 Mon Sep 17 00:00:00 2001 From: zhuangyuanke Date: Wed, 18 Dec 2024 17:33:02 +0800 Subject: [PATCH] =?UTF-8?q?=E9=97=AE=E5=8D=B7=E9=A2=98=E7=9B=AE=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=AD=97=E6=AE=B5=20questionNameAlias?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/questionsubject/QuestionSubject.java | 12 ++++++++++-- .../service/aiob/impl/AIOBServiceImpl.java | 12 ++++++------ .../questionsubject/QuestionSubjectMapper.xml | 16 +++++++++++++++- 3 files changed, 31 insertions(+), 9 deletions(-) diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/domain/questionsubject/QuestionSubject.java b/postdischarge-manage/src/main/java/com/xinelu/manage/domain/questionsubject/QuestionSubject.java index 12841c09..5d831852 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/domain/questionsubject/QuestionSubject.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/domain/questionsubject/QuestionSubject.java @@ -51,8 +51,8 @@ public class QuestionSubject extends BaseEntity { * 组合单选题:COMBINATION_RADIO_SUBJECT,组合多选题:COMBINATION_MULTIPLE_SUBJECT,组合填空题:COMBINATION_BLANKS_SUBJECT, * 组合打分题:COMBINATION_SCORING_SUBJECT,日期填空题:DATE_BLANKS_SUBJECT,时间填空题:TIME_BLANKS_SUBJECT */ - @ApiModelProperty(value = "题目类型,单选题:MULTIPLE_CHOICE,多选题:MULTIPLE_CHOICE_QUESTIONS,填空题:FILL_IN_THE_BLANKS,打分题:SCORING_QUESTIONS,组合单选题:COMBINATION_RADIO_SUBJECT,组合多选题:COMBINATION_MULTIPLE_SUBJECT,组合填空题:COMBINATION_BLANKS_SUBJECT, 组合打分题:COMBINATION_SCORING_SUBJECT,日期填空题:DATE_BLANKS_SUBJECT,时间填空题:TIME_BLANKS_SUBJECT") - @Excel(name = "题目类型,单选题:MULTIPLE_CHOICE,多选题:MULTIPLE_CHOICE_QUESTIONS,填空题:FILL_IN_THE_BLANKS,打分题:SCORING_QUESTIONS, 组合单选题:COMBINATION_RADIO_SUBJECT,组合多选题:COMBINATION_MULTIPLE_SUBJECT,组合填空题:COMBINATION_BLANKS_SUBJECT, 组合打分题:COMBINATION_SCORING_SUBJECT,日期填空题:DATE_BLANKS_SUBJECT,时间填空题:TIME_BLANKS_SUBJECT") + @ApiModelProperty(value = "题目类型,单选题:MULTIPLE_CHOICE,多选题:MULTIPLE_CHOICE_QUESTIONS,填空题:FILL_IN_THE_BLANKS,打分题:SCORING_QUESTIONS,组合单选题:COMBINATION_RADIO_SUBJECT,组合多选题:COMBINATION_MULTIPLE_SUBJECT,组合填空题:COMBINATION_BLANKS_SUBJECT, 组合打分题:COMBINATION_SCORING_SUBJECT,日期填空题:DATE_BLANKS_SUBJECT,时间填空题:TIME_BLANKS_SUBJECT;反馈填空题:FEEDBACK_BLANKS_SUBJECT") + @Excel(name = "题目类型,单选题:MULTIPLE_CHOICE,多选题:MULTIPLE_CHOICE_QUESTIONS,填空题:FILL_IN_THE_BLANKS,打分题:SCORING_QUESTIONS, 组合单选题:COMBINATION_RADIO_SUBJECT,组合多选题:COMBINATION_MULTIPLE_SUBJECT,组合填空题:COMBINATION_BLANKS_SUBJECT, 组合打分题:COMBINATION_SCORING_SUBJECT,日期填空题:DATE_BLANKS_SUBJECT,时间填空题:TIME_BLANKS_SUBJECT;反馈填空题:FEEDBACK_BLANKS_SUBJECT") private String questionType; /** @@ -62,6 +62,14 @@ public class QuestionSubject extends BaseEntity { @Excel(name = "题目名称") private String questionName; + /** + * 题目名称别名 + */ + @ApiModelProperty(value = "题目名称") + @Excel(name = "题目名称") + private String questionNameAlias; + + /** * 题目说明 */ diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/aiob/impl/AIOBServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/aiob/impl/AIOBServiceImpl.java index 9111ccfd..b80529b0 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/aiob/impl/AIOBServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/aiob/impl/AIOBServiceImpl.java @@ -591,12 +591,12 @@ public class AIOBServiceImpl implements IAIOBService { List questionSubjectList = questionSubjectMapper.selectQuestionSubjectBy(node.getQuestionInfoId()); questionSubjectList.forEach(questionSubjectVO -> { // 判断问题中有无变量,有变量替换变量 - String questionName = replaceQuestionName(questionSubjectVO.getQuestionName(), labelFieldContentList); + String questionNameAlias = replaceQuestionName(questionSubjectVO.getQuestionNameAlias(), labelFieldContentList); // 根据通话记录筛查是否询问该问题 boolean hasQuestion = false; String aiobQuestionName = ""; for (String questionContent : contextMap.keySet()) { - if (questionContent.replaceAll("\\p{P}", "").contains(questionName.replaceAll("\\p{P}", ""))) { + if (questionContent.replaceAll("\\p{P}", "").contains(questionNameAlias.replaceAll("\\p{P}", ""))) { hasQuestion = true; aiobQuestionName = questionContent; break; @@ -702,16 +702,16 @@ public class AIOBServiceImpl implements IAIOBService { return null; } - private String replaceQuestionName(String questionName, List labelFieldContentList) { + private String replaceQuestionName(String questionNameAlias, List labelFieldContentList) { Pattern pattern = Pattern.compile("\\{%\\s*&[\\s\\S]*?\\s*%}"); - Matcher matcher = pattern.matcher(questionName); + Matcher matcher = pattern.matcher(questionNameAlias); while (matcher.find()) { LabelFieldInfoContentVo labelFieldContent = labelFieldContentList.stream().filter(s -> Objects.equals(s.getFieldCode(), matcher.group(1).replaceAll("_", "").toUpperCase())).findFirst().orElse(null); if (ObjectUtils.isNotEmpty(labelFieldContent)) { - questionName = questionName.replaceAll("\\{%\\s*&[\\s\\S]*?\\s*%}", ObjectUtils.isEmpty(labelFieldContent) ? "" : labelFieldContent.getFieldValue()); + questionNameAlias = questionNameAlias.replaceAll("\\{%\\s*&[\\s\\S]*?\\s*%}", ObjectUtils.isEmpty(labelFieldContent) ? "" : labelFieldContent.getFieldValue()); } } - return questionName; + return questionNameAlias; } /** diff --git a/postdischarge-manage/src/main/resources/mapper/manage/questionsubject/QuestionSubjectMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/questionsubject/QuestionSubjectMapper.xml index c991875d..28ef85de 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/questionsubject/QuestionSubjectMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/questionsubject/QuestionSubjectMapper.xml @@ -10,6 +10,7 @@ + @@ -35,6 +36,7 @@ question_number, question_type, question_name, + question_name_alias, question_description, write_description, fill_blanks_answer, @@ -70,6 +72,9 @@ and question_name like concat('%', #{questionName}, '%') + + and question_name_alias like concat('%', #{questionNameAlias}, '%') + and question_description = #{questionDescription} @@ -130,6 +135,8 @@ question_name, + question_name_alias, + question_description, write_description, @@ -174,6 +181,8 @@ #{questionName}, + #{questionNameAlias}, + #{questionDescription}, #{writeDescription}, @@ -226,6 +235,9 @@ question_name = #{questionName}, + question_name_alias = + #{questionNameAlias}, + question_description = #{questionDescription}, @@ -300,6 +312,7 @@ question_number, question_type, question_name, + question_name_alias, question_description, write_description, fill_blanks_answer, @@ -322,6 +335,7 @@ #{QuestionSubject.questionNumber}, #{QuestionSubject.questionType}, #{QuestionSubject.questionName}, + #{QuestionSubject.questionNameAlias}, #{QuestionSubject.questionDescription}, #{QuestionSubject.writeDescription}, #{QuestionSubject.fillBlanksAnswer}, @@ -355,4 +369,4 @@ from question_subject where question_info_id = #{questionInfoId} - \ No newline at end of file +