using QYZH.InteractiveMagazine.Models.Dto;
using QYZH.InteractiveMagazine.Models.Entity;
namespace QYZH.InteractiveMagazine.IService;
///
/// 操作日志服务接口
///
public interface IOperationLogService : IBaseService
{
///
/// 记录操作日志
///
/// 操作人Id
/// 操作人用户名
/// 操作类型(使用 OperationLogActionType 常量)
/// 目标类型(使用 OperationLogTargetType 常量)
/// 目标记录Id
/// 目标名称
/// 操作详情(可选,JSON格式)
/// IP地址(可选)
Task LogAsync(long operatorId, string operatorName, string actionType, string targetType, long targetId, string? targetName = null, string? detail = null, string? ipAddress = null);
///
/// 分页查询操作日志
///
/// 查询参数
/// 分页结果
Task> GetListAsync(OperationLogQueryInput input);
///
/// 获取操作日志详情
///
/// 日志Id
/// 日志详情
Task GetDetailAsync(long id);
}