From f707e57880960c51610aa59a9c131afeb7a658a0 Mon Sep 17 00:00:00 2001 From: bairubing Date: Thu, 13 Mar 2025 16:24:21 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=98=8E=E6=96=B0=E5=A2=9E=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E5=8D=8A=E5=B9=B4=E5=89=8D=E5=AE=9A=E6=97=B6=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=97=A5=E5=BF=97=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/Log/Dto/PageTaskLogInput.cs | 1 + .../Service/Log/ScheduledTaskLogService.cs | 37 ++++++++++++++----- .../Web/src/api/log/scheduledTaskLog.ts | 21 +++++++---- .../src/views/log/scheduledTaskLog/index.vue | 33 ++++++++++++++--- .../projectManagement/index.vue | 5 +-- .../changeNoticeEcn/index.vue | 4 +- .../projectManagement/index.vue | 4 +- 7 files changed, 76 insertions(+), 29 deletions(-) diff --git a/admin.net.pro/Admin.NET/Vistar.Application/Service/Log/Dto/PageTaskLogInput.cs b/admin.net.pro/Admin.NET/Vistar.Application/Service/Log/Dto/PageTaskLogInput.cs index 1e10b6c..f54c404 100644 --- a/admin.net.pro/Admin.NET/Vistar.Application/Service/Log/Dto/PageTaskLogInput.cs +++ b/admin.net.pro/Admin.NET/Vistar.Application/Service/Log/Dto/PageTaskLogInput.cs @@ -25,4 +25,5 @@ public class PageTaskLogInput : BasePageInput public DateTime? EndTime { get; set; } public string TaskName { get; set; } + public bool presenceLog { get; set; } } diff --git a/admin.net.pro/Admin.NET/Vistar.Application/Service/Log/ScheduledTaskLogService.cs b/admin.net.pro/Admin.NET/Vistar.Application/Service/Log/ScheduledTaskLogService.cs index f0af710..6283270 100644 --- a/admin.net.pro/Admin.NET/Vistar.Application/Service/Log/ScheduledTaskLogService.cs +++ b/admin.net.pro/Admin.NET/Vistar.Application/Service/Log/ScheduledTaskLogService.cs @@ -1,10 +1,4 @@ -// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。 -// -// 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。 -// -// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任! - -using Admin.NET.Core; +using Admin.NET.Core; using Furion.DependencyInjection; using Furion.DynamicApiController; using Microsoft.AspNetCore.Mvc; @@ -43,7 +37,8 @@ public class ScheduledTaskLogService : IDynamicApiController, ITransient return await _scheduledTaskLogRep.AsQueryable() .WhereIF(!string.IsNullOrWhiteSpace(input.StartTime.ToString()), u => u.LogDateTime >= input.StartTime) .WhereIF(!string.IsNullOrWhiteSpace(input.EndTime.ToString()), u => u.LogDateTime <= input.EndTime) - .WhereIF(!string.IsNullOrWhiteSpace(input.TaskName), u => u.TaskName == input.TaskName) + .WhereIF(!string.IsNullOrWhiteSpace(input.TaskName), u => u.TaskName.Contains(input.TaskName)) + .WhereIF(input.presenceLog, u => u.ReturnResult != "未查询到符合条件的记录") .ToPagedListAsync(input.Page, input.PageSize); } @@ -56,8 +51,32 @@ public class ScheduledTaskLogService : IDynamicApiController, ITransient public async Task GetDetail(long id) { var data= await _scheduledTaskLogRep.AsQueryable().Where(x => x.Id == id).FirstAsync(); - return data.ReturnResult; } + /// + /// 删除半年前定时任务日志 🔖 + /// + /// + [SuppressMonitor] + [DisplayName("删除半年前定时任务日志")] + [HttpGet] + public async Task DeleteHalfaYearTaskLog() + { + // 计算半年前的日期 + var halfYearAgo = DateTime.Now.AddMonths(-6); + + // 执行删除操作并获取影响行数 + var deletedCount = await _scheduledTaskLogRep.AsDeleteable() + .Where(x => x.LogDateTime < halfYearAgo) + .ExecuteCommandAsync(); + if (deletedCount > 0) + { + return $"成功删除{deletedCount}条半年前定时任务日志"; + } + else { + return "未查询到半年前定时任务日志"; + } + + } } diff --git a/admin.net.pro/Web/src/api/log/scheduledTaskLog.ts b/admin.net.pro/Web/src/api/log/scheduledTaskLog.ts index 1b2ee11..ff889a0 100644 --- a/admin.net.pro/Web/src/api/log/scheduledTaskLog.ts +++ b/admin.net.pro/Web/src/api/log/scheduledTaskLog.ts @@ -2,17 +2,24 @@ import request from '/@/utils/request'; enum Api { PageScheduledTaskLog = '/api/scheduledTaskLog/page', Detail = '/api/scheduledTaskLog/detail', + HalfaYearTaskLog = '/api/scheduledTaskLog/halfaYearTaskLog', } -export const PageScheduledTaskLog = (params?: any) => +export const PageScheduledTaskLog = (params?: any) => request({ url: Api.PageScheduledTaskLog, method: 'post', data: params, }); - export const Detail = (id?: any) => - request({ - url: Api.Detail+"/"+id, - method: 'Get', - data: id, - }); +export const Detail = (id?: any) => + request({ + url: Api.Detail + "/" + id, + method: 'Get', + data: id, + }); +export const HalfaYearTaskLog = (id?: any) => + request({ + url: Api.HalfaYearTaskLog, + method: 'Get', + data:id + }); \ No newline at end of file diff --git a/admin.net.pro/Web/src/views/log/scheduledTaskLog/index.vue b/admin.net.pro/Web/src/views/log/scheduledTaskLog/index.vue index e1ba12a..cef9e80 100644 --- a/admin.net.pro/Web/src/views/log/scheduledTaskLog/index.vue +++ b/admin.net.pro/Web/src/views/log/scheduledTaskLog/index.vue @@ -22,6 +22,11 @@ + + + + + @@ -32,7 +37,7 @@ 查询 - 重置 + 重置 @@ -49,14 +54,20 @@ - + + + @@ -71,18 +82,19 @@