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

46 lines
1.8 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.Dto.Compensation;
using QYZH.InteractiveMagazine.Models.Entity;
namespace QYZH.InteractiveMagazine.IService;
/// <summary>
/// 补偿任务管理服务接口
/// </summary>
public interface ICompensationManageService : IBaseService<CompensationTask>
{
/// <summary>
/// 分页查询补偿任务
/// </summary>
/// <param name="input">查询参数</param>
/// <returns>分页结果</returns>
Task<PageListModel<CompensationManageOutput>> GetListAsync(CompensationTaskQueryInput input);
/// <summary>
/// 手动重试补偿任务(将状态改为 Pending重置 RetryCount
/// </summary>
/// <param name="taskId">任务Id</param>
/// <param name="operatorId">操作人Id</param>
/// <param name="operatorName">操作人用户名</param>
/// <param name="input">重试参数</param>
/// <param name="ipAddress">IP地址</param>
Task RetryAsync(long taskId, long operatorId, string operatorName, CompensationRetryInput input, string? ipAddress = null);
/// <summary>
/// 标记补偿任务为已解决
/// </summary>
/// <param name="taskId">任务Id</param>
/// <param name="operatorId">操作人Id</param>
/// <param name="operatorName">操作人用户名</param>
/// <param name="input">解决参数</param>
/// <param name="ipAddress">IP地址</param>
Task ResolveAsync(long taskId, long operatorId, string operatorName, CompensationResolveInput input, string? ipAddress = null);
/// <summary>
/// 获取补偿任务详情
/// </summary>
/// <param name="taskId">任务Id</param>
/// <returns>任务详情</returns>
Task<CompensationManageDetailOutput> GetDetailAsync(long taskId);
}