From 9328e0ea9de05bd4aa7043a7d6b261d74417e79b Mon Sep 17 00:00:00 2001 From: zhaojun <873019219@qq.com> Date: Sun, 5 Mar 2023 15:28:14 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E6=A0=B9=E6=8D=AE=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=9D=A1=E4=BB=B6=E6=89=B9=E9=87=8F=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E7=9B=B4=E9=93=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DownloadLogManagerController.java | 27 ++++++++++++++++--- .../log/service/DownloadLogService.java | 11 +++++--- 2 files changed, 31 insertions(+), 7 deletions(-) diff --git a/src/main/java/im/zhaojun/zfile/module/log/controller/DownloadLogManagerController.java b/src/main/java/im/zhaojun/zfile/module/log/controller/DownloadLogManagerController.java index 9494c1d..d5f74e6 100644 --- a/src/main/java/im/zhaojun/zfile/module/log/controller/DownloadLogManagerController.java +++ b/src/main/java/im/zhaojun/zfile/module/log/controller/DownloadLogManagerController.java @@ -75,17 +75,17 @@ public class DownloadLogManagerController { .like(StrUtil.isNotEmpty(queryDownloadLogRequest.getUserAgent()), "user_agent", queryDownloadLogRequest.getUserAgent()) .ge(StrUtil.isNotEmpty(queryDownloadLogRequest.getDateFrom()), "create_time", queryDownloadLogRequest.getDateFrom()) .le(StrUtil.isNotEmpty(queryDownloadLogRequest.getDateTo()), "create_time", queryDownloadLogRequest.getDateTo()); - + Page selectResult = downloadLogService.selectPage(pages, queryWrapper); Map cache = new HashMap<>(); Stream shortLinkResultList = selectResult.getRecords().stream().map(model -> { String storageKey = model.getStorageKey(); - + StorageSource storageSource = cache.getOrDefault(storageKey, storageSourceService.findByStorageKey(storageKey)); cache.put(storageKey, storageSource); - + return downloadLogConvert.entityToResultList(model, storageSource); }); return AjaxJson.getPageData(selectResult.getTotal(), shortLinkResultList); @@ -113,4 +113,25 @@ public class DownloadLogManagerController { return AjaxJson.getSuccess(); } + @ApiOperationSupport(order = 4) + @PostMapping("/delete/batch/query") + @ResponseBody + @ApiOperation(value = "根据查询条件批量删除直链") + public AjaxJson batchDeleteBySearchParams(@RequestBody QueryDownloadLogRequest queryDownloadLogRequest) { + DownloadLog downloadLog = new DownloadLog(); + QueryWrapper queryWrapper = + new QueryWrapper<>(downloadLog) + .eq(StrUtil.isNotEmpty(queryDownloadLogRequest.getStorageKey()), "storage_key", queryDownloadLogRequest.getStorageKey()) + .like(StrUtil.isNotEmpty(queryDownloadLogRequest.getPath()), "path", queryDownloadLogRequest.getPath()) + .like(StrUtil.isNotEmpty(queryDownloadLogRequest.getShortKey()), "short_key", queryDownloadLogRequest.getShortKey()) + .like(StrUtil.isNotEmpty(queryDownloadLogRequest.getIp()), "ip", queryDownloadLogRequest.getIp()) + .like(StrUtil.isNotEmpty(queryDownloadLogRequest.getReferer()), "referer", queryDownloadLogRequest.getReferer()) + .like(StrUtil.isNotEmpty(queryDownloadLogRequest.getUserAgent()), "user_agent", queryDownloadLogRequest.getUserAgent()) + .ge(StrUtil.isNotEmpty(queryDownloadLogRequest.getDateFrom()), "create_time", queryDownloadLogRequest.getDateFrom()) + .le(StrUtil.isNotEmpty(queryDownloadLogRequest.getDateTo()), "create_time", queryDownloadLogRequest.getDateTo()); + + downloadLogService.deleteByQueryWarpper(queryWrapper); + return AjaxJson.getSuccess(); + } + } \ No newline at end of file diff --git a/src/main/java/im/zhaojun/zfile/module/log/service/DownloadLogService.java b/src/main/java/im/zhaojun/zfile/module/log/service/DownloadLogService.java index 6d0b25b..d65e506 100644 --- a/src/main/java/im/zhaojun/zfile/module/log/service/DownloadLogService.java +++ b/src/main/java/im/zhaojun/zfile/module/log/service/DownloadLogService.java @@ -28,18 +28,21 @@ public class DownloadLogService { public Page selectPage(Page pages, QueryWrapper queryWrapper) { return downloadLogMapper.selectPage(pages, queryWrapper); } - + public void removeById(Integer id) { downloadLogMapper.deleteById(id); } - + @Transactional(rollbackFor = Exception.class) public void removeBatchByIds(List ids) { downloadLogMapper.deleteBatchIds(ids); } - + + public void deleteByQueryWarpper(QueryWrapper queryWrapper) { + downloadLogMapper.delete(queryWrapper); + } public int deleteByStorageKey(String storageKey) { return downloadLogMapper.deleteByStorageKey(storageKey); } - + } \ No newline at end of file