From 971c22ce470e6fa2611b491044ece5b194f0af53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com> Date: Tue, 22 Mar 2022 11:34:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=9D=9E=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=91=98=E8=B4=A6=E5=8F=B7=E4=B8=80=E4=BA=9B=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E6=9D=83=E9=99=90=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../System/monitor/SysLogininforController.cs | 12 ++++++++++-- .../System/monitor/SysOperlogController.cs | 18 +++++++++++------- .../Extensions/HttpContextExtension.cs | 6 ++++++ 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/ZR.Admin.WebApi/Controllers/System/monitor/SysLogininforController.cs b/ZR.Admin.WebApi/Controllers/System/monitor/SysLogininforController.cs index 0df0ade..b56b80e 100644 --- a/ZR.Admin.WebApi/Controllers/System/monitor/SysLogininforController.cs +++ b/ZR.Admin.WebApi/Controllers/System/monitor/SysLogininforController.cs @@ -1,14 +1,14 @@ using Infrastructure; using Infrastructure.Attribute; using Infrastructure.Enums; +using Infrastructure.Model; using Microsoft.AspNetCore.Mvc; using SqlSugar; -using System.Linq.Expressions; +using ZR.Admin.WebApi.Extensions; using ZR.Admin.WebApi.Filters; using ZR.Common; using ZR.Model; using ZR.Model.System; -using ZR.Model.Vo; using ZR.Service.System.IService; namespace ZR.Admin.WebApi.Controllers.monitor @@ -52,6 +52,10 @@ namespace ZR.Admin.WebApi.Controllers.monitor [HttpDelete("clean")] public IActionResult CleanLoginInfo() { + if (!HttpContextExtension.IsAdmin(HttpContext)) + { + return ToResponse(ApiResult.Error("操作失败")); + } sysLoginService.TruncateLogininfo(); return SUCCESS(1); } @@ -66,6 +70,10 @@ namespace ZR.Admin.WebApi.Controllers.monitor [ActionPermissionFilter(Permission = "monitor:logininfor:remove")] public IActionResult Remove(string infoIds) { + if (!HttpContextExtension.IsAdmin(HttpContext)) + { + return ToResponse(ApiResult.Error("操作失败")); + } long[] infoIdss = Tools.SpitLongArrary(infoIds); return SUCCESS(sysLoginService.DeleteLogininforByIds(infoIdss)); } diff --git a/ZR.Admin.WebApi/Controllers/System/monitor/SysOperlogController.cs b/ZR.Admin.WebApi/Controllers/System/monitor/SysOperlogController.cs index c71ef7d..3bf7224 100644 --- a/ZR.Admin.WebApi/Controllers/System/monitor/SysOperlogController.cs +++ b/ZR.Admin.WebApi/Controllers/System/monitor/SysOperlogController.cs @@ -1,19 +1,14 @@ using Infrastructure.Attribute; using Infrastructure.Enums; using Infrastructure.Model; +using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Mvc; +using ZR.Admin.WebApi.Extensions; using ZR.Admin.WebApi.Filters; using ZR.Common; using ZR.Model; using ZR.Model.System.Dto; -using ZR.Model.System; -using ZR.Model.Vo; using ZR.Service.System.IService; -using System; -using System.IO; -using OfficeOpenXml; -using Microsoft.AspNetCore.Hosting; -using System.Collections.Generic; namespace ZR.Admin.WebApi.Controllers.monitor { @@ -40,6 +35,7 @@ namespace ZR.Admin.WebApi.Controllers.monitor { PagerInfo pagerInfo = new(sysOperLog.pageNum, sysOperLog.PageSize); + sysOperLog.operName = !HttpContextExtension.IsAdmin(HttpContext) ? HttpContextExtension.GetName(HttpContext) : sysOperLog.operName; var list = sysOperLogService.SelectOperLogList(sysOperLog, pagerInfo); return SUCCESS(list, "MM/dd HH:mm"); @@ -55,6 +51,10 @@ namespace ZR.Admin.WebApi.Controllers.monitor [HttpDelete("{operIds}")] public IActionResult Remove(string operIds) { + if (!HttpContextExtension.IsAdmin(HttpContext)) + { + return ToResponse(ApiResult.Error("操作失败")); + } long[] operIdss = Tools.SpitLongArrary(operIds); return SUCCESS(sysOperLogService.DeleteOperLogByIds(operIdss)); } @@ -68,6 +68,10 @@ namespace ZR.Admin.WebApi.Controllers.monitor [HttpDelete("clean")] public ApiResult ClearOperLog() { + if (!HttpContextExtension.IsAdmin(HttpContext)) + { + return ApiResult.Error("操作失败"); + } sysOperLogService.CleanOperLog(); return ToJson(1); diff --git a/ZR.Admin.WebApi/Extensions/HttpContextExtension.cs b/ZR.Admin.WebApi/Extensions/HttpContextExtension.cs index 535d9d8..2df4734 100644 --- a/ZR.Admin.WebApi/Extensions/HttpContextExtension.cs +++ b/ZR.Admin.WebApi/Extensions/HttpContextExtension.cs @@ -79,6 +79,12 @@ namespace ZR.Admin.WebApi.Extensions return uid; } + public static bool IsAdmin(this HttpContext context) + { + long id = GetUId(context); + return id == 1; + } + /// /// ClaimsIdentity ///