From 2dc0e508dacff4acd61bec58c3549db0e673bcbe Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 28 四月 2026 11:41:51 +0800
Subject: [PATCH] 【丽水】随访异常导出

---
 smartor/src/main/java/com/smartor/domain/ServiceSubtaskIsAbnormalStatistic.java          |   71 +++++++++++++++++++++++++++++++++++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java |   28 ++++++++++++++
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java            |    8 +++
 smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java                    |    3 +
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java      |    6 ++-
 5 files changed, 113 insertions(+), 3 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
index 7c459cc..6685d7f 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -20,6 +20,7 @@
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.common.utils.reflect.ReflectUtils;
+import com.ruoyi.quartz.task.RyTask;
 import com.ruoyi.system.service.ISysConfigService;
 import com.ruoyi.system.service.ISysUserDeptService;
 import com.smartor.domain.*;
@@ -77,6 +78,9 @@
 
     @Autowired
     private ISysConfigService configService;
+
+    @Autowired
+    private RyTask ryTask;
 
     @Value("${spring.profiles.active}")
     private String active;
@@ -580,6 +584,25 @@
         return success(serviceStatistics);
     }
 
+    /**
+     * 闅忚寮傚父缁熻瀵煎嚭
+     */
+    //@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
+    @Log(title = "闅忚缁熻瀵煎嚭", businessType = BusinessType.EXPORT)
+    @PostMapping("/getSfStatisticsIsAbnormalExport")
+    public void getSfStatisticsIsAbnormalExport(HttpServletResponse response, ServiceSubtaskCountReq serviceSubtaskCountReq) {
+        List<ServiceSubtaskIsAbnormalStatistic> sfStatistics = serviceSubtaskService.getSfStatisticsIsAbnormalExport(serviceSubtaskCountReq);
+        ExcelUtil<ServiceSubtaskIsAbnormalStatistic> util = new ExcelUtil<ServiceSubtaskIsAbnormalStatistic>(ServiceSubtaskIsAbnormalStatistic.class);
+        String sheetName = "";
+        String fileName = "";
+        if (active.equals("ls") || active.equals("druid")) {
+            fileName = sheetName = LocalDate.now().getMonthValue() + "鏈堝嚭闄㈤殢璁垮紓甯哥粺璁¤〃";
+            util.exportExcelWithFileName(response, sfStatistics, sheetName, fileName);
+        } else {
+            sheetName = "闅忚寮傚父缁熻瀵煎嚭";
+            util.exportExcel(response, sfStatistics, sheetName);
+        }
+    }
 
     /**
      * 鑾峰彇闅忚缁熻姣斾緥
@@ -737,4 +760,9 @@
         return serviceSubtaskService.getHeLibraryCount(heLibraryCountVO);
     }
 
+
+    @PostMapping("/test")
+    public void test() {
+        ryTask.longTaskSend();
+    }
 }
diff --git a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskIsAbnormalStatistic.java b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskIsAbnormalStatistic.java
new file mode 100644
index 0000000..e355670
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskIsAbnormalStatistic.java
@@ -0,0 +1,71 @@
+package com.smartor.domain;
+
+import com.ruoyi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 鍚勭梾鍖洪殢璁跨粺璁℃瘮渚�
+ *
+ * @author ruoyi
+ * @date 2024-12-11
+ */
+@ApiModel(value = "ServiceSubtaskStatistic", description = "鍚勭梾鍖洪殢璁跨粺璁℃瘮渚�")
+@Data
+public class ServiceSubtaskIsAbnormalStatistic implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "绉戝鐥呭尯")
+    private Integer statisticaltype;
+
+    @ApiModelProperty(value = "鍑洪櫌鐥呭尯缂栧彿")
+    private String leavehospitaldistrictcode;
+
+    @ApiModelProperty(value = "鍑洪櫌鐥呭尯鍚嶇О")
+    @Excel(name = " 鍑洪櫌鐥呭尯鍚嶇О ")
+    private String leavehospitaldistrictname;
+
+    @ApiModelProperty(value = "鍑洪櫌绉戝缂栧彿")
+    private String deptcode;
+
+    @ApiModelProperty(value = "鍑洪櫌绉戝鍚嶇О")
+    @Excel(name = " 鍑洪櫌鐥呭尯鍚嶇О ")
+    private String deptname;
+
+    /**
+     * 鎬у埆
+     */
+    @ApiModelProperty(value = "鎬у埆 1鐢�  2濂�")
+    private Long sex;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟0-10宀�")
+    private Long abnormalCount010 = 0L;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟10-20宀�")
+    private Long abnormalCount1020 = 0L;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟20-30宀�")
+    private Long abnormalCount2030 = 0L;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟30-40宀�")
+    private Long abnormalCount3040 = 0L;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟40-50宀�")
+    private Long abnormalCount4050 = 0L;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟50-60宀�")
+    private Long abnormalCount5060 = 0L;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟60-70宀�")
+    private Long abnormalCount6070 = 0L;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟70-80宀�")
+    private Long abnormalCount7090 = 0L;
+
+    @ApiModelProperty(value = "寮傚父浜烘暟80宀佷互涓�")
+    private Long abnormalCount80More = 0L;
+}
diff --git a/smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java b/smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
index 11554e9..fafffb0 100644
--- a/smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
+++ b/smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
@@ -137,6 +137,9 @@
     //瀵煎嚭闅忚
     public List<ServiceSubtaskStatistic> getSfStatisticsExport(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
+    //瀵煎嚭闅忚-寮傚父
+    public List<ServiceSubtaskIsAbnormalStatistic> getSfStatisticsIsAbnormalExport(ServiceSubtaskCountReq serviceSubtaskCountReq);
+
     public List<ServiceSubtaskStatistic> getSfStatisticsJoy(ServiceSubtaskCountReq serviceSubtaskCountReq);
 
     public List<ServiceSubtaskCount> getSfStatisticsJoydetails(ServiceSubtaskCountReq serviceSubtaskCountReq);
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 6af155d..6dedd3a 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
@@ -457,7 +457,9 @@
 
             //灏嗗綋鍓嶅彂閫佺姸鎬佹敼鎴�9瀹屾垚
             ServiceSubtaskPreachform serviceSubtaskPreachform = new ServiceSubtaskPreachform();
-            serviceSubtaskPreachform.setPreachform(serviceSubtaskList.get(0).getCurrentPreachform());
+            if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
+                serviceSubtaskPreachform.setPreachform(serviceSubtaskList.get(0).getCurrentPreachform());
+            }
             serviceSubtaskPreachform.setSubid(serviceSubtask.getId());
             serviceSubtaskPreachform.setTaskid(serviceSubtask.getTaskid());
             List<ServiceSubtaskPreachform> serviceSubtaskPreachforms = serviceSubtaskPreachformMapper.selectServiceSubtaskPreachformList(serviceSubtaskPreachform);
@@ -900,7 +902,7 @@
         }
 
         //鍒ゆ柇涓�涓嬪綋鍓嶇殑闂鏄笉鏄弧鎰忓害闂锛屽苟涓攄utyDeptCode鏄惁鏈夊�硷紝骞朵笖閫夐」鏄笉鏄紓甯搁�夐」锛屽鏋滃叏绗﹀悎锛屽垯寰�婊℃剰搴﹂棶棰樺紓甯歌〃鏂板
-        if (StringUtils.isNotEmpty(svyTaskTemplateScriptVO.getDutyDeptCode()) && 1 == stt.getIsabnormal()) {
+        if (StringUtils.isNotEmpty(svyTaskTemplateScriptVO.getDutyDeptCode()) && stt != null && 1 == stt.getIsabnormal()) {
             isabnormalFlag = 1L;
             ServiceSubtaskDetailTrace subtaskDetailTrace = new ServiceSubtaskDetailTrace();
             subtaskDetailTrace.setDetailId(serviceSubtaskDetail.getId());
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index 9b04a47..0cefff1 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -2477,7 +2477,7 @@
         return jsRates;
     }
 
-    @Override
+
     public List<ServiceSubtaskStatistic> getSfStatisticsExport(ServiceSubtaskCountReq serviceSubtaskCountReq) {
         List<ServiceSubtaskStatistic> sfStatistics = getSfStatistics(serviceSubtaskCountReq);
         // 娣诲姞鎬昏琛�
@@ -2491,6 +2491,12 @@
         return sfStatistics;
     }
 
+    @Override
+    public List<ServiceSubtaskIsAbnormalStatistic> getSfStatisticsIsAbnormalExport(ServiceSubtaskCountReq serviceSubtaskCountReq){
+
+        return null;
+    }
+
     /**
      * 鑾峰彇闅忚缁熻姣斾緥
      *

--
Gitblit v1.9.3