陈昶聿
6 小时以前 cccb9150471097edd5f01e5c2a5724bfcea0101b
targetQuesMate 增加AI调试
已修改4个文件
31 ■■■■■ 文件已修改
smartor/src/main/java/com/smartor/domain/IvrLibaTargetVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/IvrLibaTargetServiceImpl.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/IvrLibaTargetVO.java
@@ -225,4 +225,7 @@
    @ApiModelProperty(value = "用于查询标签的,不用于存数据")
    private String optionDesc;
    @ApiModelProperty(value = "问题文本,用于AI识别")
    private String questionText;
}
smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
@@ -210,4 +210,6 @@
    public List<ServiceSubtaskDetailRatioExport> statQuestionOption(List<Long> taskIds, Date startOutHospTime, Date endOutHospTime);
    public String scanGenerateSubtask(ServiceTask serviceTaskVo);
    public Integer matchOptionIndex(String url, String questionText, String voiceText, List<IvrTaskTemplateTargetoption> options, String uuid);
}
smartor/src/main/java/com/smartor/service/impl/IvrLibaTargetServiceImpl.java
@@ -8,11 +8,13 @@
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.ISysConfigService;
import com.smartor.domain.*;
import com.smartor.mapper.IvrLibaTargetMapper;
import com.smartor.mapper.IvrLibaTargetTagMapper;
import com.smartor.mapper.IvrLibaTargetoptionMapper;
import com.smartor.service.IIvrLibaTargetService;
import com.smartor.service.IServiceSubtaskService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
@@ -43,6 +45,12 @@
    @Autowired
    private IvrLibaTargetoptionMapper ivrLibaTargetoptionMapper;
    @Autowired
    private ISysConfigService configService;
    @Autowired
    private IServiceSubtaskService serviceSubtaskService;
    /**
     * 查询指标选项库
@@ -251,7 +259,24 @@
     */
    @Override
    public String targetQuesMate(IvrLibaTargetVO ivrLibaTargetVO) {
        //1-AI识别
        String url = configService.selectConfigByKey("sys.voice.match.ai.url");
        if (ObjectUtils.isNotEmpty(url)) {
            String matchedText = "";
            String questionText = ivrLibaTargetVO.getQuestionText();
            String voiceText = ivrLibaTargetVO.getContent();
            List<IvrTaskTemplateTargetoption> options = DtoConversionUtils.sourceToTarget(ivrLibaTargetVO.getTargetoptionList(), IvrTaskTemplateTargetoption.class);
            //1-AI识别
            Integer matched = serviceSubtaskService.matchOptionIndex(url, questionText, voiceText, options, "1");
            if (ObjectUtils.isNotEmpty(matched)) {
                if (matched >= 0) {
                    matchedText = options.get(matched).getTargetvalue();
                }
            }
            log.info("ai匹配成功,匹配结果是:" + matchedText);
            return matchedText;
        }
        for (IvrLibaTargetoption ivrLibaTargetoption : ivrLibaTargetVO.getTargetoptionList()) {
            Matcher matcher = null;
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -5197,6 +5197,7 @@
     * @param options
     * @return
     */
    @Override
    public Integer matchOptionIndex(String url, String questionText, String voiceText, List<IvrTaskTemplateTargetoption> options, String uuid) {
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("userQuestion", questionText);