diff --git a/framework/src/main/java/com/yfd/platform/system/controller/SysLogController.java b/framework/src/main/java/com/yfd/platform/system/controller/SysLogController.java index 9f2081a..7e4c209 100644 --- a/framework/src/main/java/com/yfd/platform/system/controller/SysLogController.java +++ b/framework/src/main/java/com/yfd/platform/system/controller/SysLogController.java @@ -56,7 +56,7 @@ public class SysLogController { /********************************** * 用途说明: 导出日志数据 - * 参数说明 sysLogs 所需导出的字典项集合 + * 参数说明 sysLogs 所需导出的日志集合 * 返回值说明: com.yfd.platform.config.ResponseResult 返回导出成功或者失败 ***********************************/ @Log(module = "系统日志", value = "导出系统日志到Excel") @@ -71,4 +71,15 @@ public class SysLogController { startDate, endDate, page); sysLogService.exportExcel(sysLogPage.getRecords(), response); } + + @Log(module = "系统日志", value = "导出系统日志到Excel(全量)") + @GetMapping("/exportExcelAll") + @Operation(summary = "导出日志数据(全量)") + public void exportExcelAll(String username, String optType, + String startDate, String endDate, + HttpServletResponse response) throws IOException { + List sysLogs = + sysLogService.listLogs(username, optType, startDate, endDate); + sysLogService.exportExcel(sysLogs, response); + } } diff --git a/framework/src/main/java/com/yfd/platform/system/service/ISysLogService.java b/framework/src/main/java/com/yfd/platform/system/service/ISysLogService.java index 85fdffa..585bac6 100644 --- a/framework/src/main/java/com/yfd/platform/system/service/ISysLogService.java +++ b/framework/src/main/java/com/yfd/platform/system/service/ISysLogService.java @@ -30,6 +30,9 @@ public interface ISysLogService extends IService { String startDate, String endDate, Page page); + List listLogs(String username, String optType, String startDate, + String endDate); + /********************************** * 用途说明: 导出日志数据 diff --git a/framework/src/main/java/com/yfd/platform/system/service/impl/SysLogServiceImpl.java b/framework/src/main/java/com/yfd/platform/system/service/impl/SysLogServiceImpl.java index 0b9d3bb..dce380d 100644 --- a/framework/src/main/java/com/yfd/platform/system/service/impl/SysLogServiceImpl.java +++ b/framework/src/main/java/com/yfd/platform/system/service/impl/SysLogServiceImpl.java @@ -77,6 +77,27 @@ public class SysLogServiceImpl extends ServiceImpl impleme return sysLogMapper.selectPage(page, queryWrapper); } + @Override + public List listLogs(String username, String optType, + String startDate, String endDate) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (StrUtil.isNotBlank(username)) { + queryWrapper.like(SysLog::getUsername, username); + } + if (StrUtil.isNotBlank(optType)) { + queryWrapper.eq(SysLog::getOpttype, optType); + } + DateTime parseStartDate = DateUtil.parse(startDate); + DateTime parseEndDate = DateUtil.parse(endDate); + DateTime dateTime = DateUtil.offsetDay(parseEndDate, 1); + if (parseStartDate != null && parseEndDate != null) { + queryWrapper.ge(SysLog::getLogtime, parseStartDate) + .lt(SysLog::getLogtime, dateTime); + } + queryWrapper.orderByDesc(SysLog::getLogtime); + return this.list(queryWrapper); + } + /********************************** * 用途说明: 导出日志数据 * 参数说明 sysLogs 所需导出的字典项集合