From bb5c9f74bcd20f299a514ad36ff47e6dd1dce7ae Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期三, 04 十一月 2026 09:29:08 +0800
Subject: [PATCH] 【丽水】默认完成-下次补偿判断,上一次补偿方式是微信,状态是已领取,没选的填充默认选项,已完成

---
 smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java |  180 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 176 insertions(+), 4 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java b/smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
index 83f15bb..54d5f9e 100644
--- a/smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
+++ b/smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
@@ -2,10 +2,16 @@
 
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.smartor.domain.*;
+import com.smartor.domain.DTO.MydTrendReqDTO;
+import com.smartor.domain.DTO.MzMydScoreRankDTO;
+import com.smartor.domain.DTO.QuestionCountKsOrBqDTO;
+import com.smartor.domain.DTO.QuestionResultDTO;
 import com.smartor.domain.ServiceSubtask;
+import com.smartor.domain.VO.*;
 import com.smartor.domain.entity.ServiceSubtaskEntity;
 import org.springframework.web.bind.annotation.RequestBody;
 
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -16,6 +22,12 @@
  * @date 2024-02-02
  */
 public interface IServiceSubtaskService {
+    /**
+     * 涓芥按涓尰闄� orgid銆�
+     * 寰俊鍏紬鍙峰凡棰嗗彇鏈~鍐欐寜榛樿閫夐」瀹屾垚锛屾殏鏃跺彧瀵硅鏈烘瀯鐢熸晥锛屽叾浠栧尰闄粛璧板師琛ュ伩閫昏緫銆�
+     */
+    String WECHAT_DEFAULT_COMPLETE_ORGID = "47231022633110211A2101";
+
     /**
      * 鏌ヨ鍗曚竴浠诲姟锛堥殢璁匡級
      *
@@ -49,9 +61,21 @@
      */
     public List<ServiceSubtaskRes> patItem(ServiceSubtaskEntity serviceSubtaskEntity);
 
+    public List<ServiceSubtask> getServiceSubtasks(ServiceSubtaskEntity serviceSubtaskEntity);
+
+    /**
+     * 杞Щ绉戝鐥呭尯
+     *
+     * @param transferDeptVO
+     * @return
+     */
+    public Integer transferDept(TransferDeptVO transferDeptVO);
+
     public List<ServiceSubtask> patItem2(ServiceSubtaskEntity serviceSubtaskEntity);
 
     public Map<String, Object> patItemCount(ServiceSubtaskEntity serviceSubtaskEntity);
+
+    public Map<String, Object> countByCondition(ServiceSubtaskEntity serviceSubtaskEntity);
 
     /**
      * 鏂板鍗曚竴浠诲姟锛堥殢璁匡級
@@ -59,7 +83,7 @@
      * @param ServiceSubtask 鍗曚竴浠诲姟锛堥殢璁匡級
      * @return 缁撴灉
      */
-    public int insertServiceSubtask(ServiceSubtask ServiceSubtask);
+    public Map<String, Object> insertServiceSubtask(ServiceSubtask ServiceSubtask);
 
     /**
      * 鍐嶆鏂板鍗曚竴浠诲姟锛堥殢璁匡級
@@ -70,12 +94,30 @@
     public String addSubTaskAgain(ServiceSubtask ServiceSubtask);
 
     /**
+     * 棣栨闅忚浠诲姟瓒呮椂鍚庯紝鎸変笅涓�浠诲姟鑷姩鐢熸垚鍐嶆闅忚浠诲姟锛堥殢璁夸腑蹇冿級銆�
+     * <p>
+     * 涓庢墜鍔ㄥ叆鍙g殑宸紓锛氶殢璁夸腑蹇冪瀹ゆ湭閰嶇疆鏃跺洖閫�鍘熶换鍔$瀹わ紱鍚屼竴鍘熶换鍔″彧鐢熸垚涓�鏉★紙閿� + 鏉′欢鏇存柊骞傜瓑锛夈��
+     *
+     * @param serviceSubtask 宸茶秴鏃剁殑棣栨闅忚瀛愪换鍔�
+     * @return 缁撴灉鎻忚堪
+     */
+    public String addSubTaskAgainByDeadline(ServiceSubtask serviceSubtask);
+
+    /**
      * 淇敼鍗曚竴浠诲姟锛堥殢璁匡級
      *
      * @param ServiceSubtask 鍗曚竴浠诲姟锛堥殢璁匡級
      * @return 缁撴灉
      */
     public Boolean updateServiceSubtask(ServiceSubtask ServiceSubtask);
+
+    /**
+     * 瀛愪换鍔℃ā鏉夸慨鏀�
+     *
+     * @param serviceSubtaskTemplateVO
+     * @return
+     */
+    public Boolean updateTemplate(ServiceSubtaskTemplateVO serviceSubtaskTemplateVO);
 
     /**
      * 鎵归噺鍒犻櫎鍗曚竴浠诲姟锛堥殢璁匡級
@@ -110,6 +152,20 @@
      */
     public PhoneCallBackYQVO phoneCallBackYQ(PhoneCallReqYQVO phoneCallReqYQVO);
 
+    public PhoneCallBackSHVO getFirstQues(PhoneCallReqYQVO phoneCallReqYQVO);
+
+    public PhoneCallBackSHVO processResust(PhoneCallResultYQVO phoneCallReqYQVO);
+
+    /**
+     * 闂缁撴灉鍗犳瘮
+     *
+     * @param QuestionResultVO
+     * @param serviceSubtaskRes
+     * @return
+     */
+    public List<ServiceSubtaskDetailRatioExport> getDetailRatio(SltdMydTotalVO sltdMydTotalVO, List<ServiceSubtaskRes> serviceSubtaskRes);
+
+
     /**
      * 闆ㄧ划浠诲姟鎷夊彇
      *
@@ -131,22 +187,138 @@
     public List<ServiceSubtaskCount> getSfFzInfoEveryMonth(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
     public List<ServiceSubtaskStatistic> getSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
+    public List<ServiceSubtaskStatistic> getSpecialSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
     //瀵煎嚭闅忚
     public List<ServiceSubtaskStatistic> getSfStatisticsExport(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
+    //瀵煎嚭闅忚-寮傚父
+    public List<ServiceSubtaskIsAbnormalStatistic> getSfStatisticsIsAbnormalExport(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
     public List<ServiceSubtaskStatistic> getSfStatisticsJoy(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
     public List<ServiceSubtaskCount> getSfStatisticsJoydetails(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
+    public List<ServiceSubtask> getSfStatisticsHyperlink(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
     public List<ServiceStatisticsResponse> getServiceStatistics(ServiceStatisticsRequest request);
 
     public List<ServiceSubtaskStatistic> getSfStatisticsScript(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
-    public Map<String, ServiceSubtaskScriptCount> getSfStatisticsScriptDetails(ServiceSubtaskCountReq serviceSubtaskCountReq);
+    public Map<String, Object> getSfStatisticsScriptDetails(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
+    /**
+     * 闂閫夐」鏁板瓧涓嬮捇锛氭煡璇㈤�夋嫨浜嗘寚瀹氶�夐」鐨� service_subtask 鍒楄〃
+     *
+     * @param serviceSubtaskCountReq 缁熻缁村害銆佺瀹�/鐥呭尯銆佷换鍔°�侀鐩強閫夐」鏉′欢
+     * @return service_subtask 鍒楄〃
+     */
+    public List<ServiceSubtask> getSfStatisticsScriptDetailsHyperlink(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
     public List<PatArchiveSrmVO> sendMsgTemplate(List<PatArchiveSrmVO> patArchiveSrmVOS);
 
-    public List<ServiceSubtaskDiagname> convertToDiagnameList(List<ServiceSubtask> subtaskList) ;
+    public List<ServiceSubtaskDiagname> convertToDiagnameList(List<ServiceSubtask> subtaskList);
 
+    /**
+     * 缁熻浠诲姟鍚勭鐘舵�佺殑鏁伴噺 -銆愰殢璁垮伐浣滃彴銆�
+     *
+     * @param entity 鏌ヨ鏉′欢锛堢瀹�/鐥呭尯鏉冮檺銆乻oonTimeoutHours 鍗冲皢瓒呮椂灏忔椂鏁扮瓑锛�
+     * @return 鍚� pendingVisitCount銆乫ailedVisitCount銆乤bnormalVisitCount銆亀arnningVisitCount銆�
+     * allVisitCount銆乻oonTimeoutCount 鐨勭粺璁$粨鏋�
+     */
     public Map<String, Object> getCurrentUserServiceSubtaskCount(ServiceSubtaskEntity entity);
-    }
+
+    /**
+     * 鎸夌梾鍖烘垨绉戝缁熻寤剁画鎶ょ悊鏁伴噺
+     * 閮戒笉浼犳椂鍚屾椂鎸夌梾鍖哄拰绉戝鍚勭粺璁′竴閬�
+     *
+     * @param vo 鏌ヨ鏉′欢锛坙eavehospitaldistrictcodes 涓� deptcodes 浜掓枼锛�
+     * @return noContinueCount銆丆ontinueCount 鍙� detail 鍒楄〃
+     */
+    Map<String, Object> getContinueNurseCount(ServiceSubtaskCotinueCountVO vo);
+
+    /**
+     * 璁剧疆澶辫触浠诲姟榛樿鍊�,骞跺皢澶辫触浠诲姟閲嶆柊缃负鎴愬姛
+     * <p>
+     * *@param failDay   (澶辫触澶╂暟锛氳窛绂诲綋鍓嶆棩鏈熷け璐ュぉ鏁�)
+     *
+     * @return
+     */
+    public void setFailSubTaskDefalutVal(Long failDay);
+
+    /**
+     * 寰俊鍏紬鍙峰凡棰嗗彇鏈~鍐欙細鎸夐鐩粯璁ら�夐」琛ラ綈褰撳墠瀛愪换鍔★紝骞跺皢褰撳墠瀛愪换鍔″畬鎴愩��
+     * <p>
+     * 浠呭鐞嗕紶鍏ョ殑褰撳墠瀛愪换鍔★紙subid锛夛紝鍙厑璁革細
+     * 闂嵎绫诲瀷(type=2)銆佸綋鍓嶅彂閫佹柟寮忎负鍏紬鍙�(5)銆佸瓙浠诲姟宸查鍙�(1)銆佹湭鎻愪氦(submit!=1)銆�
+     * 褰撳墠鍏紬鍙峰彂閫佹柟寮忎负宸插彂閫�(2)/宸查鍙�(3) 鐨勬暟鎹��
+     * 鍏朵粬浠诲姟銆佸叾浠栧彂閫佹柟寮忋�佸叾浠栧瓙浠诲姟鍧囦笉鍙楀奖鍝嶃��
+     *
+     * @param serviceSubtask 褰撳墠瀛愪换鍔�
+     * @return true=宸叉寜榛樿閫夐」瀹屾垚锛沠alse=涓嶆弧瓒虫潯浠舵垨娌℃湁鍙~鍏呯殑榛樿閫夐」
+     */
+    public Boolean completeWechatClaimedByDefault(ServiceSubtask serviceSubtask);
+
+    public Map<String, Object> getHeLibraryCount(@RequestBody HeLibraryCountVO heLibraryCountVO);
+
+    public List<ServiceSubtask> gethelibraryCountHyperlink(@RequestBody HeLibraryCountVO heLibraryCountVO);
+
+    Map<String, Object> smsSubTask(Long subid);
+
+    Map<String, Object> weChatSubTask(Long subid);
+
+    /**
+     * 缁熻闂鐨勯�夐」鐨勭櫨鍒嗘瘮 (鐢ㄤ簬鏈嶅姟绫诲瀷 2)
+     *
+     * @param taskIds    浠诲姟 ID 鍒楄〃
+     * @param subtaskIds 瀛愪换鍔� ID 鍒楄〃锛堝彲閫夛級锛氫紶浜嗗氨鍙粺璁¤繖鎵瑰瓙浠诲姟锛堟湰娆″鍑虹殑鎮h�咃級锛屽垎姣嶄篃鐢ㄥ悓涓�鎵规暟鎹�
+     * @return
+     */
+    public List<ServiceSubtaskDetailRatioExport> statQuestionOption(List<Long> taskIds, Date startFinishTime, Date endFinishTime, Date startOutHospTime, Date endOutHospTime, String scriptContent, Double scoreStart, Double scoreEnd, String valueType, List<Long> subtaskIds);
+
+    /**
+     * 瀵煎嚭銆岄棶棰樿鎯呭崰姣斻�嶄笓鐢ㄧ粺璁★紙鍙粺璁℃湰娆″鍑虹殑杩欐壒鎮h�咃級
+     * <p>
+     * 鏁伴噺 = 閫夋嫨璇ラ�夐」鐨勬偅鑰呮暟锛涙瘮渚� = 鏁伴噺 / 璇ラ浣滅瓟鎮h�呮暟锛涘垎鏁� = 璇ラ�夐」鏄庣粏 score 涔嬪拰锛�
+     * 浠诲姟鍚嶇О/浠诲姟缂栧彿 = service_task.task_name / taskid銆�
+     *
+     * @param subtaskIds   鏈瀵煎嚭鐨勫瓙浠诲姟 ID
+     * @param questiontext 闂鍐呭锛堝彲閫夛級
+     */
+    public List<ServiceSubtaskDetailRatioExport> statMydQuestionOptionForExport(List<Long> subtaskIds, String questiontext);
+
+    /**
+     * 鏍规嵁瀛愪换鍔� ID 缁熻闂鐨勯�夐」鐨勭櫨鍒嗘瘮锛堢敤浜庢弧鎰忓害缁熻 serviceType=6锛�
+     *
+     * @param subtaskIds 瀛愪换鍔� ID 鍒楄〃
+     * @return
+     */
+    public List<ServiceSubtaskDetailRatioExport> statQuestionOptionBySubtaskIds(List<Long> subtaskIds, Date startOutHospTime, Date endOutHospTime, Date startFinishTime, Date endFinishTime, String scriptContent, Double scoreStart, Double scoreEnd, String valueType);
+
+    public  Map<String, Map<String, List<QuestionCountKsOrBqDTO>>> statQuestionOptionByKsOrBq(QuestionCountKsOrBqVO questionCountKsOrBqVO);
+
+    public String scanGenerateSubtask(ServiceTask serviceTaskVo);
+
+    public List<MydTrendReqDTO> mydTrend(MydTrendReqVO mydTrendReqVO);
+
+    /**
+     * 鏍规嵁鏃堕棿缁欏害杩涜瀵规瘮婊℃剰搴﹀垎鏁�
+     * @param mydTrendReqVO
+     * @return
+     */
+    public List<MydTrendReqDTO> sltdMydTotalByDimension(MydTrendReqVO mydTrendReqVO);
+
+    public Integer matchOptionIndex(String url, String questionText, String voiceText, List<IvrTaskTemplateTargetoption> options, String uuid);
+
+    /**
+     * 闂ㄨ瘖婊℃剰搴︾患鍚堝緱鍒嗘帓鍚嶏紙鎸夌瀹ゆ垨鐥呭尯锛�
+     * <p>
+     * 缁煎悎婊℃剰搴� = 危(璇勫垎鏄庣粏鏉冮噸) / 璇勫垎鏄庣粏鏉℃暟 脳 100%锛�
+     * 鏉冮噸鍙彇 1銆�0.8銆�0.6銆�0.4銆�0.2 浜旀。銆�
+     *
+     * @param mzMydScoreRankVO 鏌ヨ鏉′欢
+     * @return 鎺掑悕缁撴灉锛屽凡鎸夌患鍚堝緱鍒嗛檷搴忓苟濉厖鍚嶆锛堜粠 1 寮�濮嬶級
+     */
+    public List<MzMydScoreRankDTO> mzMydScoreRank(MzMydScoreRankVO mzMydScoreRankVO);
+}

--
Gitblit v1.9.3