From 85183ce29f27f67edf9b80d9b15efff48091449f Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 09 四月 2026 13:49:42 +0800
Subject: [PATCH] 省立同德门急诊采集功能提交

---
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java |   34 +++++++++++++++++++++++-----------
 1 files changed, 23 insertions(+), 11 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 0fd2033..742e7f7 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
@@ -1,6 +1,7 @@
 package com.smartor.service.impl;
 
 import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.ruoyi.common.core.redis.RedisCache;
@@ -10,6 +11,7 @@
 import com.ruoyi.common.utils.StringUtils;
 import com.smartor.domain.*;
 import com.smartor.domain.DTO.ServiceSubtaskDetailDTO;
+import com.smartor.domain.VO.ServiceSubtaskDetailTraceVO;
 import com.smartor.domain.entity.ServiceSubtaskEntity;
 import com.smartor.mapper.*;
 import com.smartor.service.IServiceSubtaskAnswerService;
@@ -898,7 +900,12 @@
             subtaskDetailTrace.setAsrtext(stt.getOptioncontent());
             subtaskDetailTrace.setRecordpath(null);
             subtaskDetailTrace.setPatid(selectServiceSubtaskList.get(0).getPatid());
-            subtaskDetailTrace.setPatdesc(selectServiceSubtaskList.get(0).getSendname() + "," + selectServiceSubtaskList.get(0).getPhone() + "," + selectServiceSubtaskList.get(0).getDeptname());
+            JSONObject patdescJson1 = new JSONObject();
+            patdescJson1.put("sendname", selectServiceSubtaskList.get(0).getSendname());
+            patdescJson1.put("phone", selectServiceSubtaskList.get(0).getPhone());
+            patdescJson1.put("sex", selectServiceSubtaskList.get(0).getSex() == null ? selectServiceSubtaskList.get(0).getSex() == 1 ? "鐢�" : "濂�" : null);
+            patdescJson1.put("age", selectServiceSubtaskList.get(0).getAge());
+            subtaskDetailTrace.setPatdesc(patdescJson1.toJSONString());
             subtaskDetailTrace.setTodeptcode(svyTaskTemplateScriptVO.getDutyDeptCode());
             subtaskDetailTrace.setTodeptname(svyTaskTemplateScriptVO.getDutyDeptName());
             subtaskDetailTrace.setOrgid(selectServiceSubtaskList.get(0).getOrgid());
@@ -909,10 +916,10 @@
             traceService.insertServiceSubtaskDetailTtrace(subtaskDetailTrace);
         } else if (ObjectUtils.isNotEmpty(stt) && stt.getIsabnormal() == 1L) {
             //杩欓噷涓昏鏄�曞尰鎶や汉鍛樻妸寮傚父閫夐」鏀规垚浜嗛潪寮傚父鐨勶紝杩欓噷灏遍渶瑕佹煡涓�涓嬭繖鏉℃暟鎹槸涓嶆槸鍦ㄦ弧鎰忓害寮傚父琛紝濡傛灉鍦紝鍒欒鍒犻櫎
-            ServiceSubtaskDetailTrace subtaskDetailTrace = new ServiceSubtaskDetailTrace();
-            subtaskDetailTrace.setSubId(serviceSubtaskDetailVO.getSubId());
-            subtaskDetailTrace.setScriptid(svyTaskTemplateScriptVO.getId());
-            List<ServiceSubtaskDetailTrace> serviceSubtaskDetailTraces = traceService.selectServiceSubtaskDetailTtraceList(subtaskDetailTrace);
+            ServiceSubtaskDetailTraceVO subtaskDetailTraceVO = new ServiceSubtaskDetailTraceVO();
+            subtaskDetailTraceVO.setSubId(serviceSubtaskDetailVO.getSubId());
+            subtaskDetailTraceVO.setScriptid(svyTaskTemplateScriptVO.getId());
+            List<ServiceSubtaskDetailTrace> serviceSubtaskDetailTraces = traceService.selectServiceSubtaskDetailTtraceList(subtaskDetailTraceVO);
             if (CollectionUtils.isNotEmpty(serviceSubtaskDetailTraces)) {
                 traceService.deleteServiceSubtaskDetailTtraceById(serviceSubtaskDetailTraces.get(0).getId());
             }
@@ -1103,7 +1110,7 @@
             subtaskDetailTrace.setDetailId(serviceSubtaskDetail.getId());
             subtaskDetailTrace.setSubId(serviceSubtaskDetailVO.getSubId());
             subtaskDetailTrace.setTaskid(serviceSubtaskDetailVO.getTaskid());
-            subtaskDetailTrace.setTemplateid(ivrTaskTemplateScriptVO.getTemplateID()!=null ? Long.valueOf(ivrTaskTemplateScriptVO.getTemplateID()) : null);
+            subtaskDetailTrace.setTemplateid(ivrTaskTemplateScriptVO.getTemplateID() != null ? Long.valueOf(ivrTaskTemplateScriptVO.getTemplateID()) : null);
             subtaskDetailTrace.setTemplatequestionnum(ivrTaskTemplateScriptVO.getSort() == null ? null : Long.valueOf(ivrTaskTemplateScriptVO.getSort()));
 
             //鑾峰彇鍒嗙被淇℃伅
@@ -1131,7 +1138,12 @@
             subtaskDetailTrace.setAsrtext(ivrTaskTemplateScriptVO.getIvrtext());
             subtaskDetailTrace.setRecordpath(null);
             subtaskDetailTrace.setPatid(selectServiceSubtaskList.get(0).getPatid());
-            subtaskDetailTrace.setPatdesc(selectServiceSubtaskList.get(0).getSendname() + "," + selectServiceSubtaskList.get(0).getPhone() + "," + selectServiceSubtaskList.get(0).getDeptname());
+            JSONObject patdescJson2 = new JSONObject();
+            patdescJson2.put("sendname", selectServiceSubtaskList.get(0).getSendname());
+            patdescJson2.put("phone", selectServiceSubtaskList.get(0).getPhone());
+            patdescJson2.put("sex", selectServiceSubtaskList.get(0).getSex() == null ? selectServiceSubtaskList.get(0).getSex() == 1 ? "鐢�" : "濂�" : null);
+            patdescJson2.put("age", selectServiceSubtaskList.get(0).getAge());
+            subtaskDetailTrace.setPatdesc(patdescJson2.toJSONString());
             subtaskDetailTrace.setTodeptcode(ivrTaskTemplateScriptVO.getDutyDeptCode());
             subtaskDetailTrace.setTodeptname(ivrTaskTemplateScriptVO.getDutyDeptName());
             subtaskDetailTrace.setOrgid(selectServiceSubtaskList.get(0).getOrgid());
@@ -1142,10 +1154,10 @@
             traceService.insertServiceSubtaskDetailTtrace(subtaskDetailTrace);
         } else if (stt.getIsabnormal() != null && stt.getIsabnormal() != 1L) {
             //杩欓噷涓昏鏄�曞尰鎶や汉鍛樻妸寮傚父閫夐」鏀规垚浜嗛潪寮傚父鐨勶紝杩欓噷灏遍渶瑕佹煡涓�涓嬭繖鏉℃暟鎹槸涓嶆槸鍦ㄦ弧鎰忓害寮傚父琛紝濡傛灉鍦紝鍒欒鍒犻櫎
-            ServiceSubtaskDetailTrace subtaskDetailTrace = new ServiceSubtaskDetailTrace();
-            subtaskDetailTrace.setSubId(serviceSubtaskDetailVO.getSubId());
-            subtaskDetailTrace.setScriptid(ivrTaskTemplateScriptVO.getScriptID() == null ? ivrTaskTemplateScriptVO.getId() : ivrTaskTemplateScriptVO.getScriptID());
-            List<ServiceSubtaskDetailTrace> serviceSubtaskDetailTraces = traceService.selectServiceSubtaskDetailTtraceList(subtaskDetailTrace);
+            ServiceSubtaskDetailTraceVO subtaskDetailTraceVO = new ServiceSubtaskDetailTraceVO();
+            subtaskDetailTraceVO.setSubId(serviceSubtaskDetailVO.getSubId());
+            subtaskDetailTraceVO.setScriptid(ivrTaskTemplateScriptVO.getScriptID() == null ? ivrTaskTemplateScriptVO.getId() : ivrTaskTemplateScriptVO.getScriptID());
+            List<ServiceSubtaskDetailTrace> serviceSubtaskDetailTraces = traceService.selectServiceSubtaskDetailTtraceList(subtaskDetailTraceVO);
             if (CollectionUtils.isNotEmpty(serviceSubtaskDetailTraces)) {
                 traceService.deleteServiceSubtaskDetailTtraceById(serviceSubtaskDetailTraces.get(0).getId());
             }

--
Gitblit v1.9.3