From 2494e3538d2ca2003f250b3f75283a9444442068 Mon Sep 17 00:00:00 2001
From: huliguo <2023611923@qq.com>
Date: 星期一, 18 八月 2025 14:28:35 +0800
Subject: [PATCH] 增加导出条件

---
 guns-admin/src/main/java/com/stylefeng/guns/modular/api/PatrolTaskController.java |   34 +++++++++++++++++++++++++++++++---
 1 files changed, 31 insertions(+), 3 deletions(-)

diff --git a/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PatrolTaskController.java b/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PatrolTaskController.java
index e69e289..f36d398 100644
--- a/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PatrolTaskController.java
+++ b/guns-admin/src/main/java/com/stylefeng/guns/modular/api/PatrolTaskController.java
@@ -26,7 +26,11 @@
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.time.format.DateTimeParseException;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * @author zhibing.pu
@@ -218,17 +222,41 @@
 	@ApiOperation(value = "下载任务记录数据", tags = {"任务记录"})
 	@ApiImplicitParams({
 			@ApiImplicitParam(value = "列表数据id,多个逗号分隔", name = "ids", dataType = "String"),
-			@ApiImplicitParam(value = "状态(1=待执行,2=进行中,3=成功,4=失败)", name = "status", dataType = "int"),
+			@ApiImplicitParam(value = "状态(1=待执行,2=进行中,3=成功,4=失败)", name = "status", dataType = "String"),
 			@ApiImplicitParam(value = "规则编号", name = "code", dataType = "String"),
+			@ApiImplicitParam(value = "任务类型", name = "type", dataType = "int"),
+			@ApiImplicitParam(value = "任务名称", name = "name", dataType = "String"),
 			@ApiImplicitParam(value = "系统审核状态(1=未执行,2=正常,3=异常)", name = "sysStatus", dataType = "int"),
+			@ApiImplicitParam(value = "执行时间范围(开始时间)", name = "startTime", dataType = "String"),
+			@ApiImplicitParam(value = "执行时间范围(结束时间)", name = "endTime", dataType = "String"),
 	})
-	public void downloadTaskRecord(String ids, String code, Integer status,Integer sysStatus, HttpServletResponse response){
+	public void downloadTaskRecord(String ids, String code, String status,Integer type, String name, Integer sysStatus,String startTime ,String endTime,HttpServletResponse response){
 		List<String> id = null;
 		if(ToolUtil.isNotEmpty(ids)){
 			String[] split = ids.split(",");
 			id = Arrays.asList(split);
 		}
-		taskDetailService.downloadTaskRecord(id, code, status,sysStatus, response);
+		List<Integer> statusList=null;
+		if(ToolUtil.isNotEmpty(status)){
+			String[] split = status.split(",");
+			statusList = Arrays.stream(split)
+					.map(Integer::parseInt)
+					.collect(Collectors.toList());
+
+		}
+		LocalDateTime startTime2 = null;
+		LocalDateTime endTime2 = null;
+
+		// 定义匹配前端时间格式的解析器(处理带毫秒和Z的情况)
+		DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+		try {
+			// 解析为LocalDateTime(Z代表UTC时区,这里直接按字符串处理)
+			startTime2 = LocalDateTime.parse(startTime, formatter);
+			endTime2 = LocalDateTime.parse(endTime, formatter);
+		} catch (DateTimeParseException e) {
+			System.err.println("时间格式错误 " );
+		}
+		taskDetailService.downloadTaskRecord(id, code, statusList,sysStatus,type,name,startTime2,endTime2,response);
 	}
 	
 	

--
Gitblit v1.7.1