using Microsoft.AspNetCore.Mvc;
namespace Admin.NET.Plugin.AiDOP.Dto.S8;
public class AdoS8NotificationLogQueryDto
{
public long TenantId { get; set; } = 1;
public long FactoryId { get; set; } = 1;
public long? ExceptionId { get; set; }
public string? Channel { get; set; }
public bool? Success { get; set; }
public bool? Recovered { get; set; }
/// 关键字,匹配 payload / channel
public string? Keyword { get; set; }
[FromQuery(Name = "from")]
public DateTime? CreatedAtStart { get; set; }
[FromQuery(Name = "to")]
public DateTime? CreatedAtEnd { get; set; }
public int Page { get; set; } = 1;
public int PageSize { get; set; } = 20;
}
public class AdoS8NotificationLogListItemDto
{
public long Id { get; set; }
public long TenantId { get; set; }
public long FactoryId { get; set; }
public long? ExceptionId { get; set; }
public string Channel { get; set; } = string.Empty;
/// 从 payload.targetCount 解析;解析失败返回 null
public int? TargetCount { get; set; }
/// 从 payload.success 解析;解析失败返回 null
public bool? Success { get; set; }
/// 从 payload.recovered 解析;解析失败返回 null
public bool? Recovered { get; set; }
/// 从 payload.error 解析;解析失败返回 null
public string? ErrorMessage { get; set; }
public string? Payload { get; set; }
public DateTime CreatedAt { get; set; }
}