fix:操作日志查询异常

This commit is contained in:
不做码农 2023-05-21 11:08:55 +08:00
parent a2364cdd78
commit 89293adcf0
4 changed files with 43 additions and 18 deletions

View File

@ -1,12 +1,10 @@
using Infrastructure.Attribute; using Infrastructure.Attribute;
using Infrastructure.Enums; using Infrastructure.Enums;
using Infrastructure.Model; using Infrastructure.Model;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using ZR.Admin.WebApi.Extensions; using ZR.Admin.WebApi.Extensions;
using ZR.Admin.WebApi.Filters; using ZR.Admin.WebApi.Filters;
using ZR.Common; using ZR.Common;
using ZR.Model;
using ZR.Model.System.Dto; using ZR.Model.System.Dto;
using ZR.Service.System.IService; using ZR.Service.System.IService;
@ -34,12 +32,10 @@ namespace ZR.Admin.WebApi.Controllers.monitor
/// <param name="sysOperLog"></param> /// <param name="sysOperLog"></param>
/// <returns></returns> /// <returns></returns>
[HttpGet("list")] [HttpGet("list")]
public IActionResult OperList([FromQuery] SysOperLogDto sysOperLog) public IActionResult OperList([FromQuery] SysOperLogQueryDto sysOperLog)
{ {
PagerInfo pagerInfo = new(sysOperLog.PageNum, sysOperLog.PageSize);
sysOperLog.OperName = !HttpContextExtension.IsAdmin(HttpContext) ? HttpContextExtension.GetName(HttpContext) : sysOperLog.OperName; sysOperLog.OperName = !HttpContextExtension.IsAdmin(HttpContext) ? HttpContextExtension.GetName(HttpContext) : sysOperLog.OperName;
var list = sysOperLogService.SelectOperLogList(sysOperLog, pagerInfo); var list = sysOperLogService.SelectOperLogList(sysOperLog);
return SUCCESS(list); return SUCCESS(list);
} }
@ -87,9 +83,10 @@ namespace ZR.Admin.WebApi.Controllers.monitor
[Log(Title = "操作日志", BusinessType = BusinessType.EXPORT)] [Log(Title = "操作日志", BusinessType = BusinessType.EXPORT)]
[ActionPermissionFilter(Permission = "monitor:operlog:export")] [ActionPermissionFilter(Permission = "monitor:operlog:export")]
[HttpGet("export")] [HttpGet("export")]
public IActionResult Export([FromQuery] SysOperLogDto sysOperLog) public IActionResult Export([FromQuery] SysOperLogQueryDto sysOperLog)
{ {
var list = sysOperLogService.SelectOperLogList(sysOperLog, new PagerInfo(1, 10000)); sysOperLog.PageSize = 100000;
var list = sysOperLogService.SelectOperLogList(sysOperLog);
var result = ExportExcelMini(list.Result, "操作日志", "操作日志"); var result = ExportExcelMini(list.Result, "操作日志", "操作日志");
return ExportExcel(result.Item2, result.Item1); return ExportExcel(result.Item2, result.Item1);
} }

View File

@ -1,5 +1,33 @@
namespace ZR.Model.System.Dto using System;
namespace ZR.Model.System.Dto
{ {
public class SysOperLogQueryDto : PagerInfo
{
/// <summary>
/// 操作人员
/// </summary>
public string OperName { get; set; }
/// <summary>
/// 业务类型 0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据
/// </summary>
public int BusinessType { get; set; } = -1;
/// <summary>
/// 状态
/// </summary>
public int Status { get; set; } = -1;
/// <summary>
/// 操作模块
/// </summary>
public string Title { get; set; }
/// <summary>
/// 请求参数
/// </summary>
public string OperParam { get; set; }
public DateTime? BeginTime { get; set; }
public DateTime? EndTime { get; set; }
}
public class SysOperLogDto : SysBase public class SysOperLogDto : SysBase
{ {
/// <summary> /// <summary>

View File

@ -1,9 +1,6 @@
using System.Collections.Generic; using ZR.Model;
using ZR.Model;
using ZR.Model.System.Dto;
using ZR.Model.System; using ZR.Model.System;
using ZR.Service.System; using ZR.Model.System.Dto;
using Infrastructure.Model;
namespace ZR.Service.System.IService namespace ZR.Service.System.IService
{ {
@ -15,9 +12,8 @@ namespace ZR.Service.System.IService
/// 查询系统操作日志集合 /// 查询系统操作日志集合
/// </summary> /// </summary>
/// <param name="operLog">操作日志对象</param> /// <param name="operLog">操作日志对象</param>
/// <param name="pager"></param>
/// <returns>操作日志集合</returns> /// <returns>操作日志集合</returns>
public PagedInfo<SysOperLog> SelectOperLogList(SysOperLogDto operLog, PagerInfo pager); public PagedInfo<SysOperLog> SelectOperLogList(SysOperLogQueryDto operLog);
/// <summary> /// <summary>
/// 清空操作日志 /// 清空操作日志

View File

@ -5,6 +5,7 @@ using SqlSugar;
using ZR.Model; using ZR.Model;
using ZR.Model.System; using ZR.Model.System;
using ZR.Model.System.Dto; using ZR.Model.System.Dto;
using ZR.Repository;
using ZR.Service.System.IService; using ZR.Service.System.IService;
namespace ZR.Service.System namespace ZR.Service.System
@ -35,7 +36,7 @@ namespace ZR.Service.System
/// <param name="sysOper">操作日志对象</param> /// <param name="sysOper">操作日志对象</param>
/// <param name="pager"></param> /// <param name="pager"></param>
/// <returns>操作日志集合</returns> /// <returns>操作日志集合</returns>
public PagedInfo<SysOperLog> SelectOperLogList(SysOperLogDto sysOper, PagerInfo pager) public PagedInfo<SysOperLog> SelectOperLogList(SysOperLogQueryDto sysOper)
{ {
sysOper.BeginTime = DateTimeHelper.GetBeginTime(sysOper.BeginTime, -1); sysOper.BeginTime = DateTimeHelper.GetBeginTime(sysOper.BeginTime, -1);
sysOper.EndTime = DateTimeHelper.GetBeginTime(sysOper.EndTime, 1); sysOper.EndTime = DateTimeHelper.GetBeginTime(sysOper.EndTime, 1);
@ -48,7 +49,10 @@ namespace ZR.Service.System
exp.AndIF(sysOper.Status != -1, it => it.Status == sysOper.Status); exp.AndIF(sysOper.Status != -1, it => it.Status == sysOper.Status);
exp.AndIF(sysOper.OperParam != null, it => it.OperParam.Contains(sysOper.OperParam)); exp.AndIF(sysOper.OperParam != null, it => it.OperParam.Contains(sysOper.OperParam));
return GetPages(exp.ToExpression(), pager, x => x.OperId, OrderByType.Desc); return Queryable().Where(exp.ToExpression())
.OrderBy(x => x.OperId, OrderByType.Desc)
.ToPage(sysOper);
//return GetList(exp.ToExpression(), pager, x => x.OperId, OrderByType.Desc);
} }
/// <summary> /// <summary>