From 2867cf7076a584a34e63174cec0a8b89cdd03e4c Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 06 十一月 2026 13:42:55 +0800
Subject: [PATCH] Merge branch 'master' into smartor_ls_261103

---
 ruoyi-task/src/main/java/com/ruoyi/task/mapper/ServiceSubtaskMapper.java |  100 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 100 insertions(+), 0 deletions(-)

diff --git a/ruoyi-task/src/main/java/com/ruoyi/task/mapper/ServiceSubtaskMapper.java b/ruoyi-task/src/main/java/com/ruoyi/task/mapper/ServiceSubtaskMapper.java
index e23f262..e7e2a02 100644
--- a/ruoyi-task/src/main/java/com/ruoyi/task/mapper/ServiceSubtaskMapper.java
+++ b/ruoyi-task/src/main/java/com/ruoyi/task/mapper/ServiceSubtaskMapper.java
@@ -38,11 +38,29 @@
 
     /**
      * 鏌ヨ鍗曚竴浠诲姟锛堥殢璁匡級鍒楄〃
+     * <p>
+     * 鍏ュ弬 soonTimeout=1 涓� soonTimeoutHours=N 鏃讹紝浠呰繑鍥炩�滃皻鏈秴鏃躲�佷笖灏嗗湪 N 灏忔椂鍐呰秴鏃垛�濈殑鏁版嵁锛�
+     * 鎴鏃堕棿鍙e緞涓� getCurrentUserServiceSubtaskCount 鐨� soonTimeoutCount 涓�鑷淬��
      *
      * @param serviceSubtaskVO 鍗曚竴浠诲姟锛堥殢璁匡級
      * @return 鍗曚竴浠诲姟锛堥殢璁匡級闆嗗悎
      */
     public List<ServiceSubtask> selectServiceSubtaskList(ServiceSubtaskEntity serviceSubtaskVO);
+
+    /**
+     * 鍒嗛〉绗竴闃舵锛氬彧鍙栧綋鍓嶉〉鐨勫瓙浠诲姟 id銆�
+     * <p>
+     * where / order 涓� {@link #selectServiceSubtaskList} 鍏辩敤鍚屼竴浠� XML 鐗囨
+     * 锛坽@code serviceSubtaskWhere} / {@code serviceSubtaskOrderByPaged}锛夛紝
+     * 淇濊瘉涓ゆ潯璇彞鍙e緞涓�鑷达紝涓嶄細鍑虹幇銆岀涓�闃舵閫夊嚭琛屻�佺浜岄樁娈靛張琚繃婊ゆ帀銆嶃��
+     * <p>
+     * 涔嬫墍浠ヨ鍗曠嫭涓�鏉★細鍒楄〃璇彞 select 绾� 100 鍒楋紝娣辩炕椤垫椂琚� offset 璺宠繃鐨勬瘡涓�琛�
+     * 閮借鍥炶〃璇绘暣琛岋紱鑰屽彧鍙� id 鐨勮鍙ュ彲浠ヨ蛋瑕嗙洊绱㈠紩骞舵彁鍓嶆埅鏂��
+     *
+     * @param serviceSubtaskVO 鏌ヨ鏉′欢锛坧ageNum 鏄� offset銆乸ageSize 鏄瘡椤垫潯鏁帮紝鐢辫皟鐢ㄦ柟绠楀ソ锛�
+     * @return 褰撳墠椤电殑瀛愪换鍔� id锛屽凡鎸夋帓搴忚鍒欐帓濂藉簭
+     */
+    public List<Long> selectServiceSubtaskIdsPage(ServiceSubtaskEntity serviceSubtaskVO);
 
     
 
@@ -140,6 +158,14 @@
 
     public Boolean updateServiceSubtaskByCondition(ServiceSubtask ServiceSubtask);
 
+    /**
+     * 寰俊鍏紬鍙峰凡棰嗗彇鏈~鍐欐寜榛樿閫夐」瀹屾垚锛氬彧鏇存柊褰撳墠瀛愪换鍔★紝涓斿彧鍏佽 sendstate=1銆佹湭鎻愪氦鐨勬暟鎹��
+     *
+     * @param serviceSubtask 蹇呭~ id銆乫inishtime銆乺esult銆乺emark
+     * @return 褰卞搷琛屾暟
+     */
+    public int updateWechatDefaultComplete(ServiceSubtask serviceSubtask);
+
     public Boolean updateServiceSubtaskByTaskGuid(ServiceSubtask ServiceSubtask);
 
     /**
@@ -153,6 +179,30 @@
     public int deleteServiceSubtaskByCondition(@Param("taskid") Long id, @Param("patid") Long patid);
 
     /**
+     * 鍒犻櫎鎮h�呭嚭闄㈣褰曞搴旂殑鏈畬鎴愰殢璁夸换鍔�
+     *
+     * @param patid      鎮h�匢D
+     * @param inhospids  鍑洪櫌璁板綍ID闆嗗悎
+     * @param sendstates 鏈畬鎴愮姸鎬侀泦鍚�
+     * @return 鍒犻櫎鏉℃暟
+     */
+    public int deleteUnfinishedServiceSubtaskByInhospids(@Param("patid") Long patid,
+                                                         @Param("inhospids") List<Long> inhospids,
+                                                         @Param("sendstates") List<Long> sendstates);
+
+    /**
+     * 缁熻鎮h�呮寚瀹氫换鍔′笅鏈畬鎴愮殑闅忚浠诲姟鏁伴噺锛堢敤浜庝汉宸ラ殢璁块噸澶嶆牎楠岋級
+     *
+     * @param patid      鎮h�匢D
+     * @param taskid     浠诲姟ID
+     * @param sendstates 鏈畬鎴愮姸鎬侀泦鍚�
+     * @return 鏈畬鎴愪换鍔℃暟閲�
+     */
+    int countUnfinishedServiceSubtaskByPatidAndTaskid(@Param("patid") Long patid,
+                                                      @Param("taskid") Long taskid,
+                                                      @Param("sendstates") List<Long> sendstates);
+
+    /**
      * 鍒犻櫎鍗曚竴浠诲姟锛堥殢璁匡級
      *
      * @return 缁撴灉
@@ -162,6 +212,25 @@
     public List<ServiceSubtaskCount> getSfFzInfoEveryMonth(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
     public List<ServiceSubtask> getSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
+    /**
+     * 闅忚鍒嗙被缁熻锛氭寜鍒嗙粍锛坓roupKey=drcode / leaveldeptcode / leavehospitaldistrictcode锛夊湪搴撻噷鑱氬悎銆�
+     * <p>
+     * 鐢ㄤ簬鏇夸唬鈥滄妸 getSfStatistics 鍛戒腑鐨勫叏閮ㄦ槑缁嗚鎹炲洖鍐呭瓨鍐嶉�愯绱姞鈥濈殑鑰佸仛娉曪紝
+     * 鍙繑鍥炲垎缁勬暟锛堝嚑鍗佽锛夌殑缁撴灉锛涚粺璁″彛寰勪笌 {@code getStatisticCategory} 瀹屽叏涓�鑷淬��
+     *
+     * @param serviceSubtaskCountReq 鏌ヨ鏉′欢锛堝繀椤诲凡璁剧疆 groupKey / groupKeyList锛�
+     * @return 姣忎釜鍒嗙粍鐨勮仛鍚堢粺璁�
+     */
+    public List<ServiceSubtaskStatistic> getSfStatisticsScriptSum(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
+    /**
+     * 闅忚鍒嗙被缁熻锛氭弧鎰忓害棰樼洰閲忔寜鍒嗙粍鑱氬悎锛堟浛浠� getSfStatisticsCategory 鐨� IN 澶у垪琛� + 鍐呭瓨杩囨护锛夈��
+     *
+     * @param serviceSubtaskCountReq 鏌ヨ鏉′欢锛堝繀椤诲凡璁剧疆 groupKey / groupKeyList / configValue锛�
+     * @return 姣忚鍖呭惈 groupCode銆乯oyAllCount銆乯oyCount 涓変釜閿�
+     */
+    public List<Map<String, Object>> getSfStatisticsScriptJoySum(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
     public List<ServiceSubtaskStatistic> getSpecialSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
@@ -194,6 +263,14 @@
      */
     public List<ServiceSubtaskScriptCount> getSfStatisticsScriptItemDetails(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
+    /**
+     * 闂閫夐」鏁板瓧涓嬮捇锛氭煡璇㈤�夋嫨浜嗘寚瀹氶�夐」鐨� service_subtask 鍒楄〃
+     *
+     * @param serviceSubtaskCountReq 缁熻缁村害銆佺瀹�/鐥呭尯銆佷换鍔°�侀鐩強閫夐」鏉′欢
+     * @return service_subtask 鍒楄〃
+     */
+    public List<ServiceSubtask> getSfStatisticsScriptDetailsHyperlink(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
 
     public List<PatMedRes> getDeptRanking(PatMedReq patMedReq);
 
@@ -212,6 +289,7 @@
      * ywc: 宸插畬鎴愭暟閲� sendstate = 6L
      * dfs: 寰呭彂閫佹暟閲� sendstate = 1L, 3L, 4L, 5L, 6L, 7L
      * yfs: 宸插彂閫佹暟閲� sendstate = 2L
+     * cs: 瓒呮椂鏁伴噺 sendstate = 7L
      * yc: 寮傚父鏁伴噺 excep = '1'
      * yc: 璀﹀憡鏁伴噺 excep = '2'
      */
@@ -226,8 +304,20 @@
      * failedVisitCount: 褰撳墠鐧诲綍浜洪殢璁夸换鍔″け璐ユ�婚噺
      * abnormalVisitVount: 褰撳墠鐧诲綍浜洪殢璁夸换鍔″紓甯告�婚噺
      * allVisitCount: 褰撳墠鐧诲綍浜洪殢璁夸换鍔℃�婚噺
+     * soonTimeoutCount: 褰撳墠鐧诲綍浜哄嵆灏嗚秴鏃舵暟閲忥紙瓒呮椂鎴鏃堕棿鍦� soonTimeoutHours 灏忔椂鍐咃紝浠呯粺璁″皻鏈秴鏃剁殑鏁版嵁锛�
      */
     public Map<String, Object> getCurrentUserServiceSubtaskCount(ServiceSubtaskEntity serviceSubtaskVO);
+
+    /**
+     * 褰撳墠鐧诲綍浜哄緟澶勭悊闅忚浠诲姟锛屾寜鍑洪櫌骞存湀鍒嗙粍缁熻
+     * <p>
+     * 缁熻鍙e緞锛氬嚭闄㈤殢璁�/闂ㄨ瘖闅忚锛坰ervice_type in 2,3锛�+ 浜哄伐锛坈urrent_preachform = '1'锛�
+     * + 寰呴殢璁跨姸鎬侊紙sendstate in 1,2,3,5,7锛�+ 鍑洪櫌鏃堕棿鏃╀簬绛変簬浠婂ぉ - 7 澶┿��
+     *
+     * @param serviceSubtaskVO 鏌ヨ鏉′欢锛坥rgid銆佺瀹ゃ�佺梾鍖猴級
+     * @return 姣忚鍖呭惈 month锛坹yyy-MM锛変笌 cnt锛堟暟閲忥級锛屾暟閲忎负 0 鐨勬湀浠戒笉浼氳繑鍥�
+     */
+    public List<Map<String, Object>> countPendingManualTaskByMonth(ServiceSubtaskEntity serviceSubtaskVO);
 
     /**
      * 鑾峰彇闂ㄨ瘖闅忚浜烘暟
@@ -282,4 +372,14 @@
 
     
 
+    /**
+     * 鏉′欢鏇存柊鍘熶换鍔$殑鈥滄槸鍚﹀啀娆¢殢璁库�濇爣璇嗭紝鐢ㄤ簬浜屾闅忚骞傜瓑鎺у埗銆�
+     * 浠呭綋褰撳墠鍊间笉鏄洰鏍囧�兼椂鎵嶆洿鏂帮紝杩斿洖鍙楀奖鍝嶈鏁般��
+     *
+     * @param id           瀛愪换鍔� ID
+     * @param isVisitAgain 鐩爣鍊硷紙2-宸插啀娆¢殢璁匡級
+     * @return 鍙楀奖鍝嶈鏁帮紝1 琛ㄧず鎶㈠埌鐢熸垚鏉冿紝0 琛ㄧず宸茶鍏朵粬璇锋眰澶勭悊
+     */
+    int updateIsVisitAgainById(@Param("id") Long id, @Param("isVisitAgain") Integer isVisitAgain);
+
 }

--
Gitblit v1.9.3