From 5db7759db3fa6792155d72139f9d5d9e56eb3436 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期四, 23 七月 2026 17:05:15 +0800
Subject: [PATCH] 【丽水】回写语言判断 增加AI识别
---
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 61 +++++++++++++++++-------------
1 files changed, 35 insertions(+), 26 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index 46958c5..36f658e 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -16,6 +16,7 @@
import com.ruoyi.common.utils.spring.SpringUtils;
import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.mapper.SysConfigMapper;
+import com.smartor.common.DeepSeekApi;
import com.smartor.common.FtpService;
import com.smartor.common.MtSubmitSmUtil;
import com.smartor.config.PhoneUtils;
@@ -1666,20 +1667,39 @@
if (StringUtils.isEmpty(phoneCallReqYQVO.getAsrtext())) {
continue;
}
- //鍖呭惈
- Matcher matcher = null;
- if (StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex())) {
- Pattern pattern = Pattern.compile(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex());
- matcher = pattern.matcher(phoneCallReqYQVO.getAsrtext());
+ //2-AI璇嗗埆
+ SysConfig configVoiceMatchType = new SysConfig();
+ configVoiceMatchType.setOrgid(phoneCallReqYQVO.getOrgid());
+ configVoiceMatchType.setConfigKey("sys.voice.match.type");
+ SysConfig matchType = sysConfigMapper.selectConfig(configVoiceMatchType);
+ boolean matchedFlag = false;
+ if(ObjectUtils.isNotEmpty(matchType) && StringUtils.isNotEmpty(matchType.getConfigValue()) && matchType.getConfigValue().equals("2")){
+ int checkFlag = DeepSeekApi.matchQuestionAnswer(ivrTaskTemplateScriptVO.getScriptContent(),
+ phoneCallReqYQVO.getAsrtext(),
+ ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetvalue());
+ if(checkFlag == 1){
+ matchedFlag = true;
+ }
+ }else {
+ //鍖呭惈
+ Matcher matcher = null;
+ if (StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex())) {
+ Pattern pattern = Pattern.compile(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex());
+ matcher = pattern.matcher(phoneCallReqYQVO.getAsrtext());
+ }
+ //涓嶅寘鍚�
+ Matcher matcher2 = null;
+ if (StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2())) {
+ Pattern pattern2 = Pattern.compile(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2());
+ matcher2 = pattern2.matcher(phoneCallReqYQVO.getAsrtext());
+ }
+
+ if (StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2()) && matcher2.matches() && StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex()) && matcher.matches() || StringUtils.isEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex()) && StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2()) && matcher2.matches() || StringUtils.isEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2()) && StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex()) && matcher.matches()) {
+ matchedFlag = true;
+ }
}
- //涓嶅寘鍚�
- Matcher matcher2 = null;
- if (StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2())) {
- Pattern pattern2 = Pattern.compile(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2());
- matcher2 = pattern2.matcher(phoneCallReqYQVO.getAsrtext());
- }
- if (StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2()) && matcher2.matches() && StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex()) && matcher.matches() || StringUtils.isEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex()) && StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2()) && matcher2.matches() || StringUtils.isEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex2()) && StringUtils.isNotEmpty(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getTargetregex()) && matcher.matches()) {
- //璇存槑鍖归厤姝g‘浜�
+ //璇存槑鍖归厤姝g‘浜�
+ if(matchedFlag){
//杩欓噷搴旇鍏堝垽鏂被鍨嬶紝鍘诲啀淇敼锛岃缃甀sUserOperation鏄崟閫夐鐨勬敼娉�
log.info("鍖归厤姝g‘浜嗗悧--------------");
ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).setIsUserOperation(1);
@@ -4791,20 +4811,9 @@
List<ServiceTaskdept> serviceTaskdepts = serviceTaskdeptService.selectServiceTaskdeptList(serviceTaskdept);
if (!CollectionUtils.isEmpty(serviceTaskdepts)) {
- ServiceTaskdept serviceTaskdept1 = serviceTaskdepts.get(0);
- PatArchive patArchiveVo = new PatArchive();
- patArchiveVo.setViptype("-1");
- List<PatArchive> patArchives = patArchiveMapper.selectPatArchiveList(patArchiveVo);
PatArchive patArchive = new PatArchive();
- if(!ObjectUtils.isNotEmpty(patArchives)){
- PatArchive newPatArchive = new PatArchive();
- newPatArchive.setPatientno("00000000");
- newPatArchive.setName("铏氭嫙鎮h��");
- patArchiveMapper.insertPatArchiveSingle(newPatArchive);
- patArchive = newPatArchive;
- }else {
- patArchive = patArchives.get(0);
- }
+ patArchive.setId(-1L);
+ patArchive.setName("铏氭嫙鎮h��");
//灏佽serviceSubtask
ServiceSubtask serviceSubtask = boxedServiceSubtask(serviceTask, patArchive);
int i = serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
--
Gitblit v1.9.3