Files
QYZH.InteractiveMagazine/QYZH.InteractiveMagazine.IService/IOperationLogService.cs
glz 78b686f9e5 refactor: 批量新增枚举类型并完成实体、DTO、服务层枚举替换
- 新增30+业务枚举类型覆盖用户、宠物、商城、社区、积分等模块
- 完成实体类、DTO、服务层的字符串枚举替换为强类型枚举
- 修复用户状态枚举名称变更,将Frozen改为Disabled
- 新增批量发布社区消息接口与控制器实现
- 新增操作日志、积分管理、补偿任务相关服务与DTO
2026-06-08 16:57:44 +08:00

38 lines
1.5 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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