From 5d1d54e83546ba9fc85c69b32287883d04f4a475 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 01 十一月 2024 18:56:13 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/hanler/ChatWebSocketHandler.java |   78 +++++++++++++++++++++++---------------
 1 files changed, 47 insertions(+), 31 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/hanler/ChatWebSocketHandler.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/hanler/ChatWebSocketHandler.java
index fae4378..4f31ebc 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/hanler/ChatWebSocketHandler.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/hanler/ChatWebSocketHandler.java
@@ -139,7 +139,6 @@
                 //鐢ㄦ潵杩斿洖褰撳墠闇�瑕侀棶鐨勯棶棰樹俊鎭�
                 QuestionMessagePhone returnQues = new QuestionMessagePhone();
 
-
                 for (IvrLibaTemplateScriptVO ivrLibaTemplateScriptVO : ivrLibaTemplateScriptVOList) {
                     if (ivrLibaTemplateScriptVO.getSort() == ivrLibaTemplateVO1.getFirstQuestionNum().intValue())
                         //鑾峰彇绗竴棰樼殑闂
@@ -180,23 +179,25 @@
                         backQuset.add(ivrLibaTemplateScriptVO);
                         redisCache.setCacheObject(userId + "backQuset", backQuset, 120, TimeUnit.MINUTES);
 
-                        //濡傛灉鍑犳閮芥病鍝嶅簲锛屽氨涓嬩竴棰橈紙闇�瑕佸厛鍒ゆ柇鏄惁鏈変笅涓�棰橈級
-                        if (ivrLibaTemplateScriptVO.getSort() == 0) {
-                            //濡傛灉涓嬩竴棰樻病鏈変簡锛屽氨缁撴潫浜�
-                            QuestionMessagePhone returnQues = new QuestionMessagePhone();
-//                            returnQues.setCode(null);
-                            List<IvrLibaTemplateScriptVO> backQusetRedis = redisCache.getCacheObject(userId + "backQuset");
-                            returnQues.setContent(JSON.toJSONString(backQusetRedis));
-                            returnQues.setJsy(ivrLibaTemplateVO1.getRevisitAfter());
-                            redisCache.setCacheObject(userId + "returnQues", returnQues, 120, TimeUnit.MINUTES);
-                            redisCache.setCacheObject(userId + "isOver", 1, 120, TimeUnit.MINUTES);
+//                        //濡傛灉鍑犳閮芥病鍝嶅簲锛屽氨涓嬩竴棰橈紙闇�瑕佸厛鍒ゆ柇鏄惁鏈変笅涓�棰橈級
+//                        if (ivrLibaTemplateScriptVO.getSort() == 0) {
+                        //濡傛灉涓嬩竴棰樻病鏈変簡锛屽氨缁撴潫浜�
 
-                        } else {
-                            //濡傛灉鏈変笅涓�棰橈紝灏辨牴鎹綋鍓峵eagetID+1 鑾峰彇涓嬩竴棰�
-                            QuestionMessagePhone returnQues = getNextQuestion(ivrLibaTemplateScriptVOList, ivrLibaTemplateScriptVO);
-                            redisCache.setCacheObject(userId + "returnQues", returnQues, 120, TimeUnit.MINUTES);
-                            redisCache.setCacheObject(userId + "noVoice", 0, 120, TimeUnit.MINUTES);
-                        }
+                        //娌℃湁鍝嶅簲锛屽氨缁撴潫浜�
+                        QuestionMessagePhone returnQues = new QuestionMessagePhone();
+//                            returnQues.setCode(null);
+                        List<IvrLibaTemplateScriptVO> backQusetRedis = redisCache.getCacheObject(userId + "backQuset");
+                        returnQues.setContent(JSON.toJSONString(backQusetRedis));
+                        returnQues.setJsy(ivrLibaTemplateVO1.getRevisitAfter());
+                        redisCache.setCacheObject(userId + "returnQues", returnQues, 120, TimeUnit.MINUTES);
+                        redisCache.setCacheObject(userId + "isOver", 1, 120, TimeUnit.MINUTES);
+
+//                        } else {
+//                            //濡傛灉鏈変笅涓�棰橈紝灏辨牴鎹綋鍓峵eagetID+1 鑾峰彇涓嬩竴棰�
+//                            QuestionMessagePhone returnQues = getNextQuestion(ivrLibaTemplateScriptVOList, ivrLibaTemplateScriptVO);
+//                            redisCache.setCacheObject(userId + "returnQues", returnQues, 120, TimeUnit.MINUTES);
+//                            redisCache.setCacheObject(userId + "noVoice", 0, 120, TimeUnit.MINUTES);
+//                        }
                     } else {
                         //瀹為檯闈欓粯娆℃暟鏄惁 涓嶇瓑浜� 妯℃澘涓厤缃殑娆℃暟
 //                        QuestionMessage returnQues = redisCache.getCacheObject(userId + "returnQues");
@@ -206,10 +207,10 @@
                         Integer noVoice2 = redisCache.getCacheObject(userId + "noVoice");
                         noVoice2 = noVoice2 + 1;
 
-                        //缁欓棶棰樺姞涓婃棤鍖归厤璇濇湳
+                        //缁欓棶棰樺姞涓婇潤榛樿瘽鏈�
                         QuestionMessagePhone returnQues = redisCache.getCacheObject(userId + "returnQues");
                         IvrLibaTemplateScriptVO nowQuestion = returnQues.getNowQuestion();
-                        boolean contains = nowQuestion.getScriptContent().contains(nowQuestion.getNoMatchText());
+                        boolean contains = nowQuestion.getScriptContent().contains(nowQuestion.getSlienceText());
                         if (!contains) {
                             String scriptContent = nowQuestion.getSlienceText() + "," + nowQuestion.getScriptContent();
                             nowQuestion.setScriptContent(scriptContent);
@@ -321,7 +322,11 @@
                             }
                             log.info("==============================Targetregex鐨勫�间负锛歿},   Targetregex2鐨勫�间负锛歿}", ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex(), ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex2());
 
-                            if (StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex2()) && matcher2.matches() && StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex()) && matcher.matches() || StringUtils.isEmpty(ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex2()) && StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex()) && matcher.matches()) {
+                            if (StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex2()) && matcher2.matches() &&
+                                    StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex()) && matcher.matches() ||
+                                    StringUtils.isEmpty(ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex2()) &&
+                                            StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getTargetregex()) &&
+                                            matcher.matches()) {
                                 log.error("鍖归厤姝g‘浜�");
                                 //璇存槑鍖归厤姝g‘浜�
                                 ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).setIsUserOperation(1);
@@ -331,10 +336,9 @@
                                 redisCache.setCacheObject(userId + "backQuset", backQuset, 120, TimeUnit.MINUTES);
                                 //灏嗛潤榛樼疆涓�0
                                 redisCache.setCacheObject(userId + "noVoice", 0, 120, TimeUnit.MINUTES);
-                                //鑾峰彇涓嬩竴棰�
-                                Integer nextQuestion = ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getNextQuestion();
-                                if (nextQuestion > ivrLibaTemplateScriptVOList.size()) {
-                                    //濡傛灉涓嬩竴棰樻病鏈変簡锛屽氨缁撴潫浜�
+
+                                //鍒ゆ柇涓�涓嬶紝杩欎釜閫夐」缁撴灉鏄笉鏄繕鏈夌户缁棶涓嬪幓鐨勫繀瑕侊紝渚嬪閫夐」缁撴灉鏄埆浜轰笉鎯崇户缁洖绛旈棶棰橈紝灏辫缁撴潫鎺�
+                                if (ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getIsEnd() == 1) {
                                     QuestionMessagePhone returnQues = new QuestionMessagePhone();
                                     List<IvrLibaTemplateScriptVO> backQusetRedis = redisCache.getCacheObject(userId + "backQuset");
                                     returnQues.setContent(JSON.toJSONString(backQusetRedis));
@@ -342,16 +346,28 @@
                                     redisCache.setCacheObject(userId + "returnQues", returnQues, 120, TimeUnit.MINUTES);
                                     redisCache.setCacheObject(userId + "isOver", 1, 120, TimeUnit.MINUTES);
                                 } else {
-                                    for (IvrLibaTemplateScriptVO script : ivrLibaTemplateScriptVOList) {
-                                        if (script.getSort() == nextQuestion) {
-                                            QuestionMessagePhone returnQues = new QuestionMessagePhone();
-                                            returnQues.setNowQuestion(script);
-                                            redisCache.setCacheObject(userId + "returnQues", returnQues, 120, TimeUnit.MINUTES);
-                                            break;
+                                    //鑾峰彇涓嬩竴棰�
+                                    Integer nextQuestion = ivrLibaTemplateScriptVO.getIvrLibaScriptTargetoptionList().get(j).getNextQuestion();
+                                    if (nextQuestion > ivrLibaTemplateScriptVOList.size()) {
+                                        //濡傛灉涓嬩竴棰樻病鏈変簡锛屽氨缁撴潫浜�
+                                        QuestionMessagePhone returnQues = new QuestionMessagePhone();
+                                        List<IvrLibaTemplateScriptVO> backQusetRedis = redisCache.getCacheObject(userId + "backQuset");
+                                        returnQues.setContent(JSON.toJSONString(backQusetRedis));
+                                        returnQues.setJsy(ivrLibaTemplateVO1.getRevisitAfter());
+                                        redisCache.setCacheObject(userId + "returnQues", returnQues, 120, TimeUnit.MINUTES);
+                                        redisCache.setCacheObject(userId + "isOver", 1, 120, TimeUnit.MINUTES);
+                                    } else {
+                                        for (IvrLibaTemplateScriptVO script : ivrLibaTemplateScriptVOList) {
+                                            if (script.getSort() == nextQuestion) {
+                                                QuestionMessagePhone returnQues = new QuestionMessagePhone();
+                                                returnQues.setNowQuestion(script);
+                                                redisCache.setCacheObject(userId + "returnQues", returnQues, 120, TimeUnit.MINUTES);
+                                                break;
+                                            }
                                         }
                                     }
+                                    break;
                                 }
-                                break;
                             } else {
                                 log.error("鏃犲尮閰�");
                                 //娌℃湁鍖归厤鍒�

--
Gitblit v1.9.3