From d3bf339bd64d7b7efddc0afdd4beb1866b8b5a04 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期六, 21 九月 2024 00:47:55 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java |   36 ++++++++++++++++++++++++++++--------
 1 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
index ef20484..a6832fe 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
@@ -1,5 +1,6 @@
 package com.smartor.service.impl;
 
+import afu.org.checkerframework.checker.oigj.qual.O;
 import com.alibaba.fastjson2.JSON;
 import com.ruoyi.common.core.redis.RedisCache;
 import com.ruoyi.common.utils.DateUtils;
@@ -142,12 +143,13 @@
             String[] split = key.split("-");
             if (key.contains("-WJscriptCache")) {
                 List<SvyLibTemplateScriptVO> cacheList = redisCache.getCacheList(key);
-
+                cacheList.sort(Comparator.comparingLong(SvyLibTemplateScriptVO::getSort));
+                log.error("闂嵎鍥炵瓟缁撴灉锛歿}", cacheList);
                 for (int i = 0; i < cacheList.size(); i++) {
                     if (i == 0) {
                         //杩欎釜鏃堕棿瑕佹壘鍒扮涓�棰�
                         for (SvyLibTemplateScriptVO svyLibTemplateScriptVO : cacheList) {
-                            if (svyLibTemplateScriptVO.getSort() == 1) {
+                            if (svyLibTemplateScriptVO.getSort() == 1L) {
                                 //璇存槑鏄涓�棰�
                                 SvyTaskTemplateScriptVO svyTaskTemplateScriptVO = DtoConversionUtils.sourceToTarget(cacheList.get(0), SvyTaskTemplateScriptVO.class);
                                 List<SvyLibTemplateTargetoption> svyLibTemplateTargetoptions = cacheList.get(0).getSvyLibTemplateTargetoptions();
@@ -170,6 +172,7 @@
 
                         if (svyTaskTemplateScriptVO.getSort() == nextScriptno) {
                             Map<String, String> map = setWJInfo(svyTaskTemplateScriptVO, Long.valueOf(split[1]), Long.valueOf(split[0]));
+                            log.error("map鐨勪俊鎭负锛歿}", map);
                             nextScriptno = Long.valueOf(map.get("nextScriptNo"));
                             if (score == null) {
                                 score = Double.valueOf(map.get("score"));
@@ -185,6 +188,9 @@
             ServiceSubtask serviceSubtask = new ServiceSubtask();
             serviceSubtask.setTaskid(tid);
             serviceSubtask.setPatid(pid);
+            serviceSubtask.setSubmit(1L);
+            serviceSubtask.setSendstate(6L);
+            serviceSubtask.setExcep(serviceSubTaskAnswerReq.getExcep());
             serviceSubtask.setFinishtime(new Date());
             if (score != null) serviceSubtask.setScore(BigDecimal.valueOf(score));
             serviceSubtaskMapper.updateServiceSubtaskByCondition(serviceSubtask);
@@ -213,13 +219,27 @@
     }
 
     @Override
-    public List<SvyLibTemplateScriptVO> getQuestionCache(ServiceSubTaskCacheReq serviceSubTaskCacheReq) {
+    public Map<String, Object> getQuestionCache(ServiceSubTaskCacheReq serviceSubTaskCacheReq) {
+        Map<String, Object> map = new HashMap<>();
         RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
         Long tid = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceSubTaskCacheReq.getParam1(), pri_key));
         Long pid = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceSubTaskCacheReq.getParam2(), pri_key));
+        ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
+        serviceSubtaskVO.setTaskid(tid);
+        serviceSubtaskVO.setPatid(pid);
+        List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+        if (CollectionUtils.isEmpty(selectServiceSubtaskList) || selectServiceSubtaskList.size() == 0) {
+            map.put("submit", 0);
+        } else {
+            map.put("submit", selectServiceSubtaskList.get(0).getSubmit());
+            if (selectServiceSubtaskList.get(0).getSubmit() == 1) {
+                return map;
+            }
+        }
         //闂嵎
         List<SvyLibTemplateScriptVO> svyTaskTemplateScriptVOList = redisCache.getCacheList(pid + "-" + tid + "-WJscriptCache");
-        return svyTaskTemplateScriptVOList;
+        map.put("result", svyTaskTemplateScriptVOList);
+        return map;
     }
 
     @Override
@@ -231,7 +251,7 @@
         if (scriptInfoByCondition.get("type").equals("1")) {
             List<IvrLibaTemplateScriptVO> ivrLibaTemplateScriptVOList = (List) scriptInfoByCondition.get("script");
             for (IvrLibaTemplateScriptVO ivrLibaTemplateScriptVO : ivrLibaTemplateScriptVOList) {
-                String scriptResult = getScriptResult(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), ivrLibaTemplateScriptVO.getId());
+                String scriptResult = getScriptResult(serviceSubTaskQueryReq.getSubId(), serviceSubTaskQueryReq.getPatid(), ivrLibaTemplateScriptVO.getId());
                 ivrLibaTemplateScriptVO.setScriptResult(scriptResult);
             }
             map.put("scriptResult", ivrLibaTemplateScriptVOList);
@@ -240,7 +260,7 @@
         } else if (scriptInfoByCondition.get("type").equals("2")) {
             List<SvyLibTemplateScriptVO> svyLibTemplateScriptVOList = (List) scriptInfoByCondition.get("script");
             for (SvyLibTemplateScriptVO svyLibTemplateScriptVO : svyLibTemplateScriptVOList) {
-                String scriptResult = getScriptResult(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), svyLibTemplateScriptVO.getId());
+                String scriptResult = getScriptResult(serviceSubTaskQueryReq.getSubId(), serviceSubTaskQueryReq.getPatid(), svyLibTemplateScriptVO.getId());
                 svyLibTemplateScriptVO.setScriptResult(scriptResult);
             }
             map.put("scriptResult", scriptInfoByCondition);
@@ -257,9 +277,9 @@
         return null;
     }
 
-    private String getScriptResult(Long tid, Long pid, Long sid) {
+    private String getScriptResult(Long subid, Long pid, Long sid) {
         ServiceSubtaskDetail serviceSubtaskDetail = new ServiceSubtaskDetail();
-        serviceSubtaskDetail.setTaskid(tid);
+        serviceSubtaskDetail.setSubId(subid);
         serviceSubtaskDetail.setPatid(pid);
         serviceSubtaskDetail.setScriptid(sid);
         List<ServiceSubtaskDetail> serviceSubtaskDetails = serviceSubtaskDetailMapper.selectServiceSubtaskDetailList(serviceSubtaskDetail);

--
Gitblit v1.9.3