From 066e23c438ec762c522d39817b513a13ec6b3767 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期一, 14 九月 2026 14:03:38 +0800
Subject: [PATCH] 【景宁】景宁 只要存在相同诊断、患者的门诊记录则当再次随访处理
---
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java | 51 ++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 48 insertions(+), 3 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java b/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java
index 8d6e806..7c54fe0 100644
--- a/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java
+++ b/smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java
@@ -1,8 +1,10 @@
package com.smartor.mapper;
import com.smartor.domain.*;
+import com.smartor.domain.DTO.QuestionCountKsOrBqDTO;
import com.smartor.domain.VO.PatSatisfactionReqVO;
import com.smartor.domain.VO.HeLibraryCountVO;
+import com.smartor.domain.VO.QuestionCountKsOrBqVO;
import com.smartor.domain.VO.ServiceSubtaskCotinueCountVO;
import com.smartor.domain.entity.ServiceSubtaskEntity;
import com.smartor.domain.entity.ServiceSubtaskSatisfactionEntity;
@@ -58,6 +60,8 @@
public List<ServiceSubtask> selectServiceSubtaskListAgain(ServiceSubtaskEntity serviceSubtaskVO);
+ public List<ServiceSubtask> selectServiceSubtaskListDeadLine(ServiceSubtaskEntity serviceSubtaskVO);
+
public List<Integer> selectSendstateByCondition(ServiceSubtask serviceSubtask);
/**
@@ -69,6 +73,21 @@
public int insertServiceSubtask(ServiceSubtask ServiceSubtask);
/**
+ * 浠诲姟缁勶紙appltype=5锛夛細缁熻鏌愪竴杞鍐呬粛鍦ㄨ繍琛岀殑 subtask 鏁伴噺銆�
+ * 浠嶅湪杩愯 = sendstate in (1,2,3) 涓旀湭鍒犻櫎銆�
+ * 鐢ㄤ簬鍒ゆ柇鏈疆鏄惁宸插叏閮� finalize锛堟垚鍔�/澶辫触/涓嶆墽琛�/瓒呮椂锛夈��
+ *
+ * @param scheduleId 璁″垝涓婚敭
+ * @param loopCount 杞锛�0=棣栬疆锛�
+ */
+ public int countActiveByScheduleIdAndLoop(@Param("scheduleId") Long scheduleId, @Param("loopCount") Long loopCount);
+
+ /**
+ * 浠诲姟缁勶紙appltype=5锛夛細鎷夊彇鏌愪竴杞鐨勫叏閮� subtask锛堢敤浜庡厠闅嗗埌涓嬩竴杞級銆�
+ */
+ public List<ServiceSubtask> selectByScheduleIdAndLoop(@Param("scheduleId") Long scheduleId, @Param("loopCount") Long loopCount);
+
+ /**
* 闅忚鍙婃椂鐜囷細搴旈殢璁挎椂闂�<瀹為檯闅忚鏃堕棿
*
* @param ServiceSubtask
@@ -77,7 +96,14 @@
public Double selectTimelyRate(ServiceSubtask ServiceSubtask);
/**
- * 闅忚鍙婃椂鐜囷細搴旈殢璁挎椂闂�<瀹為檯闅忚鏃堕棿
+ * 闅忚鍙婃椂鐜囷紙鎸� groupKey 鍒嗙粍鎵归噺缁熻锛�
+ * <p>
+ * rate锛氬嚭闄㈡椂闂�(endtime)璧� rateDay + 琛ュ伩澶╂暟 鍐呭畬鎴愰殢璁跨殑鍗犳瘮銆�
+ * 琛ュ伩澶╂暟鍙栬嚜 service_subtask_preachform.compensate_time 鎸夊瓙浠诲姟姹傚拰锛�
+ * 鐢ㄥ瓙浠诲姟蹇収鑰岄潪 service_task.preachform_desc锛屼繚璇佸巻鍙叉暟鎹笉闅忎换鍔℃敼閰嶇疆鑰屽彉鍔ㄣ��
+ * rateDay 涓虹┖鏃� rate 杩斿洖 NULL銆�
+ * <p>
+ * finishRate锛氬簲闅忚鏃堕棿(visit_time) <= 瀹為檯瀹屾垚鏃堕棿(finishtime) 鐨勫崰姣旓紝褰撳墠鏈闅忚缁熻浣跨敤銆�
*
* @param ServiceSubtaskvo
* @return
@@ -233,9 +259,28 @@
/**
* 缁熻闂鐨勯�夐」鐨勭櫨鍒嗘瘮
*
- * @param taskIds
+ * @param taskIds 浠诲姟 ID 鍒楄〃 (鐢ㄤ簬鏈嶅姟绫诲瀷 2)
+ * @param startOutHospTime
+ * @param endOutHospTime
* @return
*/
- List<ServiceSubtaskDetailRatioExport> statQuestionOption(@Param("taskIds") List<Long> taskIds, @Param("startOutHospTime") Date startOutHospTime, @Param("endOutHospTime") Date endOutHospTime);
+ List<ServiceSubtaskDetailRatioExport> statQuestionOption(@Param("taskIds") List<Long> taskIds, @Param("startOutHospTime") Date startOutHospTime, @Param("endOutHospTime") Date endOutHospTime, @Param("scoreStart") Double scoreStart, @Param("scoreEnd") Double scoreEnd, @Param("questiontext") String questiontext, @Param("valueType") String valueType);
+
+ /**
+ * 鏍规嵁瀛愪换鍔� ID 缁熻闂鐨勯�夐」鐨勭櫨鍒嗘瘮锛堢敤浜庢弧鎰忓害缁熻 serviceType=6锛�
+ *
+ * @param subtaskIds 瀛愪换鍔� ID 鍒楄〃 (鍙兘鍗曚釜 taskid 涓嬬殑鎵�鏈夊瓙浠诲姟 id)
+ * @param startOutHospTime
+ * @param endOutHospTime
+ * @return
+ */
+ List<ServiceSubtaskDetailRatioExport> statQuestionOptionBySubtaskIds(@Param("subtaskIds") List<Long> subtaskIds, @Param("startOutHospTime") Date startOutHospTime, @Param("endOutHospTime") Date endOutHospTime, @Param("scoreStart") Double scoreStart, @Param("scoreEnd") Double scoreEnd, @Param("questiontext") String questiontext, @Param("valueType") String valueType);
+
+ /**
+ * 鏍规嵁绉戝銆佺梾鍖恒�侀鐩被鍨嬬粺璁$殑绉戝銆佺梾鍖鸿瘎鍒�
+ * @param questionCountKsOrBqVO
+ * @return
+ */
+ List<QuestionCountKsOrBqDTO> statQuestionOptionByKsOrBq(QuestionCountKsOrBqVO questionCountKsOrBqVO);
}
--
Gitblit v1.9.3