From c4c1c6cf89781eb06dc02b677a8954fdb2666c43 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期三, 16 七月 2025 22:39:06 +0800
Subject: [PATCH] 添加时间筛选

---
 ycl-platform/src/main/java/com/ycl/task/SynchronizeDHAlarm.java                        |    4 
 ycl-platform/src/main/java/com/ycl/OSSImageMove.java                                   |    2 
 ycl-platform/src/main/java/com/ycl/vo/casePool/WorkOrderVO.java                        |   10 +-
 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java |    2 
 ycl-platform/src/main/java/com/ycl/controller/TestController.java                      |   23 +++++++
 ycl-platform/src/main/java/com/ycl/task/SynchronizeHKVideo.java                        |    1 
 ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java           |    4 
 ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml                  |   26 +++++---
 ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java      |    8 +-
 ycl-platform/src/main/java/com/ycl/PlatformApplication.java                            |   12 ++-
 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java   |   10 +-
 ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java              |    2 
 ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java |   58 ++++++++++---------
 13 files changed, 97 insertions(+), 65 deletions(-)

diff --git a/ycl-platform/src/main/java/com/ycl/OSSImageMove.java b/ycl-platform/src/main/java/com/ycl/OSSImageMove.java
index 59145f9..115fa3f 100644
--- a/ycl-platform/src/main/java/com/ycl/OSSImageMove.java
+++ b/ycl-platform/src/main/java/com/ycl/OSSImageMove.java
@@ -89,7 +89,7 @@
                 InputStream inputStream = conn.getInputStream();// 閫氳繃杈撳叆娴佽幏鍙栧浘鐗囨暟鎹�
 
                 if (inputStream != null) {
-                    String picData = ossService.uploadImages(inputStream, ".png", 0);
+                    String picData = ossService.uploadImages(inputStream, "png", 0);
                     backUrl.append(picData);
                 }
             } catch (IOException e) {
diff --git a/ycl-platform/src/main/java/com/ycl/PlatformApplication.java b/ycl-platform/src/main/java/com/ycl/PlatformApplication.java
index a362651..f77c2d7 100644
--- a/ycl-platform/src/main/java/com/ycl/PlatformApplication.java
+++ b/ycl-platform/src/main/java/com/ycl/PlatformApplication.java
@@ -44,11 +44,13 @@
                 "127.0.0.1",
                 env.getProperty("server.port"));
 
-        try {
-            new AppDemo().start();
-        } catch (Exception e) {
-            log.info("鎵ц澶у崕鎶ヨ绋嬪簭鍑洪敊锛�", e.getMessage());
-        }
+
+        ////////////////////////////////澶栫綉鏈嶅姟灞忚斀鍐呭////////////////////////////////
+//        try {
+//            new AppDemo().start();
+//        } catch (Exception e) {
+//            log.info("鎵ц澶у崕鎶ヨ绋嬪簭鍑洪敊锛�", e.getMessage());
+//        }
 
 //        try {
 //            // 鍚姩鏃讹紝淇濆瓨涓婁笅鏂囷紝骞朵繚瀛樹负闈欐��
diff --git a/ycl-platform/src/main/java/com/ycl/controller/TestController.java b/ycl-platform/src/main/java/com/ycl/controller/TestController.java
index c3b5027..0f1064c 100644
--- a/ycl-platform/src/main/java/com/ycl/controller/TestController.java
+++ b/ycl-platform/src/main/java/com/ycl/controller/TestController.java
@@ -9,12 +9,33 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.Map;
 
 @Api(tags = "绯荤粺绠$悊-娴嬭瘯")
 @RestController
-@RequestMapping("/api/unauthorized/external/event")
+//@RequestMapping("/api/unauthorized/external/event")
+@RequestMapping("/API/FMDeviceService")
 public class TestController {
 
+
+    @PostMapping("/Push")
+    public String push(@RequestBody Map map) {
+        System.out.println("FMDeviceService/Push");
+        return "";
+    }
+
+    @PostMapping("/HeartBeat")
+    public String heartBeat(@RequestBody Map map) {
+        System.out.println("FMDeviceService/HeartBeat");
+
+//        return "{\n" +
+//                "\"req\": \"reqid\",\n" +
+//                "\"cmd\": \"OpenDoor\"\n" +
+//                "}\n";
+        return "";
+    }
+
+
     @ApiOperation("娣诲姞")
     @PostMapping("/add")
     public String add(@RequestBody EventAddParamDto book) {
diff --git a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
index 7acfe0e..b9518d3 100644
--- a/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
+++ b/ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
@@ -562,14 +562,16 @@
     @ApiOperation("宸ュ崟缁熻")
     public CommonResult getWorkOrder(@RequestParam Integer currentPage,
                                      @RequestParam Integer pageSize,
-                                     @RequestParam(required = false) String keyword) {
-        return CommonResult.success(baseCaseService.getWorkOrder(currentPage, pageSize, keyword));
+                                     @RequestParam(required = false) String keyword,
+                                     @RequestParam(required = false) String startTime,
+                                     @RequestParam(required = false) String endTime) {
+        return CommonResult.success(baseCaseService.getWorkOrder(currentPage, pageSize, keyword, startTime, endTime));
     }
 
     @PostMapping("/work_order/export")
     @ApiOperation("宸ュ崟缁熻-瀵煎嚭")
     public void getWorkOrderExport(HttpServletResponse response, QueryForViolationParam param) {
         String sheetName = "宸ュ崟鏁版嵁";
-        EasyExcelUtils.export(response, sheetName, WorkOrderVO.class, baseCaseService.getWorkOrderList(param.getKeyword()));
+        EasyExcelUtils.export(response, sheetName, WorkOrderVO.class, baseCaseService.getWorkOrderList(param.getKeyword(), param.getStartTime(), param.getEndTime()));
     }
 }
\ No newline at end of file
diff --git a/ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java b/ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java
index 6086cf7..10ed31c 100644
--- a/ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java
+++ b/ycl-platform/src/main/java/com/ycl/mapper/caseHandler/BaseCaseMapper.java
@@ -68,5 +68,5 @@
 
     Long selectOnTimeCaseRecentlyMonthCount();
 
-    IPage<WorkOrderVO> getWorkOrder(IPage<WorkOrderVO> page, String keyword);
+    IPage<WorkOrderVO> getWorkOrder(IPage<WorkOrderVO> page, @Param("keyword") String keyword, @Param("startTime") String startTime, @Param("endTime") String endTime);
 }
diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java
index 071f739..943f671 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/IBaseCaseService.java
@@ -94,7 +94,7 @@
 
     Map<String, Object> statistics();
 
-    IPage<WorkOrderVO> getWorkOrder(Integer current, Integer pageSize, String keyword);
+    IPage<WorkOrderVO> getWorkOrder(Integer current, Integer pageSize, String keyword, String startTime, String endTime);
 
-    List<WorkOrderVO> getWorkOrderList(String keyword);
+    List<WorkOrderVO> getWorkOrderList(String keyword, String startTime, String endTime);
 }
diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
index 863e7f6..91c8b33 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
@@ -264,7 +264,7 @@
             baseCase.setViolationsVO(violationsVO);
         } else {
             IllegalBuilding illegalBuilding = illegalBuildingMapper.selectById(baseCase.getId());
-            if(illegalBuilding!=null) {
+            if (illegalBuilding != null) {
                 LambdaQueryWrapper<DataDictionary> dict = new LambdaQueryWrapper<>();
                 dict.eq(DataDictionary::getId, illegalBuilding.getCategoryId());
                 DataDictionary dictionary = dataDictionaryMapper.selectOne(dict);
@@ -670,7 +670,7 @@
     }
 
     @Override
-    public IPage<WorkOrderVO> getWorkOrder(Integer pageIndex, Integer pageSize, String keyword) {
+    public IPage<WorkOrderVO> getWorkOrder(Integer pageIndex, Integer pageSize, String keyword, String startTime, String endTime) {
         if (pageIndex == null) {
             pageIndex = 1;
         }
@@ -678,13 +678,13 @@
             pageSize = 20;
         }
         IPage<WorkOrderVO> page = new Page<>(pageIndex, pageSize);
-        return baseCaseMapper.getWorkOrder(page, keyword);
+        return baseCaseMapper.getWorkOrder(page, keyword, startTime, endTime);
     }
 
     @Override
-    public List<WorkOrderVO> getWorkOrderList(String keyword) {
+    public List<WorkOrderVO> getWorkOrderList(String keyword, String startTime, String endTime) {
         IPage<WorkOrderVO> page = new Page<>(1, 5000);
-        IPage<WorkOrderVO> page1 = baseCaseMapper.getWorkOrder(page, keyword);
+        IPage<WorkOrderVO> page1 = baseCaseMapper.getWorkOrder(page, keyword, startTime, endTime);
         return page1.getRecords();
     }
 }
\ No newline at end of file
diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java
index 95df9ac..2fc75cf 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java
@@ -229,7 +229,7 @@
     private String saveOSS(String hkUrl) {
         InputStream inputStream = getImageStream(hkUrl);
         if (inputStream != null) {
-            String picData = ossService.uploadImages(inputStream, ".png",0);
+            String picData = ossService.uploadImages(inputStream, "png",0);
             return picData;
         } else return "";
     }
diff --git a/ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java
index dfc786e..994bcc8 100644
--- a/ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java
@@ -176,45 +176,47 @@
                         inputStream = new ByteArrayInputStream(os.toByteArray());
 
                     }
-                    picData = ossService.uploadImages(inputStream, extension,0);
+                    picData = ossService.uploadImages(inputStream, extension, 0);
                 } catch (Exception e) {
                     System.out.println("淇濆瓨鎶ヨ鏁版嵁澶辫触---鍥剧墖涓婁紶澶辫触锛�" + e.getMessage());
 //                    e.printStackTrace();
                 }
             }
-            List<VideoAlarmReport> videoAlarmReports = new ArrayList<>();
+            if (!StringUtils.isEmpty(picData)) {
+                List<VideoAlarmReport> videoAlarmReports = new ArrayList<>();
 
-            List<AlarmDataParam> alarmData = alarmParam.getAlarmData();
-            for (AlarmDataParam alarmDatum : alarmData) {
-                List<VideoAlarmReport> list = getByAlarmId(alarmDatum.getAlarmID());
-                try {
-                    Date date = sdf.parse(alarmDatum.getAlarmTime());
-                    Instant instant = date.toInstant();
-                    ZoneId zoneId = ZoneId.systemDefault();
-                    VideoAlarmReport videoAlarmReport = VideoAlarmReport.builder()
-                            .ip(cameraInf.getIp()).port(cameraInf.getPort())
-                            .user(cameraInf.getUser()).password(cameraInf.getPassword())
-                            .channel(cameraInf.getChannel()).platResourceId(cameraInf.getPlatResourceID())
-                            .picData(picData).alarmTime(instant.atZone(zoneId).toLocalDateTime())
-                            .alarmId(alarmDatum.getAlarmID()).algoType(alarmDatum.getAlgoType())
-                            .alarmType(alarmDatum.getAlarmType()).alarmName(alarmDatum.getAlarmName())
-                            .algoName(alarmDatum.getAlgoName()).alarmObj(JSON.toJSONString(alarmDatum.getAlarmObject()))
-                            .build();
-                    if (list.size() == 0) {
+                List<AlarmDataParam> alarmData = alarmParam.getAlarmData();
+                for (AlarmDataParam alarmDatum : alarmData) {
+                    List<VideoAlarmReport> list = getByAlarmId(alarmDatum.getAlarmID());
+                    try {
+                        Date date = sdf.parse(alarmDatum.getAlarmTime());
+                        Instant instant = date.toInstant();
+                        ZoneId zoneId = ZoneId.systemDefault();
+                        VideoAlarmReport videoAlarmReport = VideoAlarmReport.builder()
+                                .ip(cameraInf.getIp()).port(cameraInf.getPort())
+                                .user(cameraInf.getUser()).password(cameraInf.getPassword())
+                                .channel(cameraInf.getChannel()).platResourceId(cameraInf.getPlatResourceID())
+                                .picData(picData).alarmTime(instant.atZone(zoneId).toLocalDateTime())
+                                .alarmId(alarmDatum.getAlarmID()).algoType(alarmDatum.getAlgoType())
+                                .alarmType(alarmDatum.getAlarmType()).alarmName(alarmDatum.getAlarmName())
+                                .algoName(alarmDatum.getAlgoName()).alarmObj(JSON.toJSONString(alarmDatum.getAlarmObject()))
+                                .build();
+                        if (list.size() == 0) {
 
-                        videoAlarmReports.add(videoAlarmReport);
+                            videoAlarmReports.add(videoAlarmReport);
 
-                        this.saveBatch(videoAlarmReports, videoAlarmReports.size());
+                            this.saveBatch(videoAlarmReports, videoAlarmReports.size());
 
-                        violationsService.saveFromVideo(videoAlarmReports);
+                            violationsService.saveFromVideo(videoAlarmReports);
 
-                    } else {
-                        videoAlarmReport.setId(list.get(0).getId());
-                        this.updateById(videoAlarmReport);
-                    }
-                } catch (ParseException e) {
-                    System.out.println("淇濆瓨鎶ヨ鏁版嵁澶辫触锛�" + e.getMessage());
+                        } else {
+                            videoAlarmReport.setId(list.get(0).getId());
+                            this.updateById(videoAlarmReport);
+                        }
+                    } catch (ParseException e) {
+                        System.out.println("淇濆瓨鎶ヨ鏁版嵁澶辫触锛�" + e.getMessage());
 //                    e.printStackTrace();
+                    }
                 }
             }
         }
diff --git a/ycl-platform/src/main/java/com/ycl/task/SynchronizeDHAlarm.java b/ycl-platform/src/main/java/com/ycl/task/SynchronizeDHAlarm.java
index 9f42306..cf066fe 100644
--- a/ycl-platform/src/main/java/com/ycl/task/SynchronizeDHAlarm.java
+++ b/ycl-platform/src/main/java/com/ycl/task/SynchronizeDHAlarm.java
@@ -44,7 +44,7 @@
 
     @Autowired
     private IImageResourcesService imageService;
-
+    ////////////////////////////////澶栫綉鏈嶅姟灞忚斀鍐呭////////////////////////////////
     @Scheduled(cron = "0 */1 * * * ?")
     @Transactional(rollbackFor = Exception.class)
     public void scheduledTask() {
@@ -82,7 +82,7 @@
         }
     }
 
-
+    ////////////////////////////////澶栫綉鏈嶅姟灞忚斀鍐呭////////////////////////////////
     @Scheduled(cron = "0 0 0 * * ?")
 //    @Transactional(rollbackFor = Exception.class)
     public void deleteAlarmTask() {
diff --git a/ycl-platform/src/main/java/com/ycl/task/SynchronizeHKVideo.java b/ycl-platform/src/main/java/com/ycl/task/SynchronizeHKVideo.java
index 20510e4..2136e1b 100644
--- a/ycl-platform/src/main/java/com/ycl/task/SynchronizeHKVideo.java
+++ b/ycl-platform/src/main/java/com/ycl/task/SynchronizeHKVideo.java
@@ -27,6 +27,7 @@
     @Autowired
     private VideoUtil videoUtil;
 
+    ////////////////////////////////澶栫綉鏈嶅姟灞忚斀鍐呭////////////////////////////////
     //    @Scheduled(cron = "0 */5 * * * ?")   // 姣�5鍒嗛挓鎵ц
     @Scheduled(cron = "0 0 1 * * ?")
     @Transactional(rollbackFor = Exception.class)
diff --git a/ycl-platform/src/main/java/com/ycl/vo/casePool/WorkOrderVO.java b/ycl-platform/src/main/java/com/ycl/vo/casePool/WorkOrderVO.java
index 04fdb9e..46f5e88 100644
--- a/ycl-platform/src/main/java/com/ycl/vo/casePool/WorkOrderVO.java
+++ b/ycl-platform/src/main/java/com/ycl/vo/casePool/WorkOrderVO.java
@@ -5,15 +5,15 @@
 
 
 public class WorkOrderVO {
-    @ExcelProperty(value = "濮撳悕", index = 1)
+    @ExcelProperty(value = "濮撳悕", index = 0)
     private String name;
-    @ExcelProperty(value = "浠诲姟鎬绘暟", index = 2)
+    @ExcelProperty(value = "浠诲姟鎬绘暟", index = 1)
     private Integer taskCount;
-    @ExcelProperty(value = "宸插畬鎴愭暟閲�", index = 3)
+    @ExcelProperty(value = "宸插畬鎴愭暟閲�", index = 2)
     private Integer finishCount;
-    @ExcelProperty(value = "鏈畬鎴愭暟閲�", index = 4)
+    @ExcelProperty(value = "鏈畬鎴愭暟閲�", index = 3)
     private Integer notFinishCount;
-    @ExcelProperty(value = "瀹屾垚鐜�", index = 5)
+    @ExcelProperty(value = "瀹屾垚鐜�", index = 4)
     private Double finishRadio;
 
     public String getName() {
diff --git a/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml b/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml
index 6769787..65f8419 100644
--- a/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml
+++ b/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml
@@ -477,17 +477,21 @@
     <select id="getWorkOrder" resultType="com.ycl.vo.casePool.WorkOrderVO">
         SELECT username as name,count(DISTINCT id) taskCount,SUM(CASE WHEN state>7 THEN 1 ELSE 0 END) finishCount
         from (
-                 SELECT a.username , bc.id,max(bc.state) state
-                 from ums_base_case bc
-                          INNER JOIN ums_dispose_record dr on bc.id = dr.base_case_id
-                          INNER JOIN ums_admin a on dr.handler_id = a.id
-                 where ( bc.state = 6 or bc.state = 7
-                     or bc.state = 8 or bc.state = 9)
-                <if test="keyword !=''and keyword!=null">
-                    and a.username  like concat('%', #{keyword},'%')
-                </if>
-                 GROUP BY a.username  ,bc.id
-             ) tmp
+        SELECT a.username , bc.id,max(bc.state) state
+        from ums_base_case bc
+        INNER JOIN ums_dispose_record dr on bc.id = dr.base_case_id
+        INNER JOIN ums_admin a on dr.handler_id = a.id
+        where ( bc.state = 6 or bc.state = 7
+        or bc.state = 8 or bc.state = 9)
+        <if test="keyword !=''and keyword!=null">
+            and a.username like concat('%', #{keyword},'%')
+        </if>
+        <if test="startTime !=''and startTime!=null and endTime!=''and endTime!=null">
+            and bc.create_time BETWEEN #{startTime}
+            AND #{endTime}
+        </if>
+        GROUP BY a.username ,bc.id
+        ) tmp
         GROUP BY username
     </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0