wanshenmean
2 天以前 5e851678cc02257bbbd179446de36082430ca5bc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using System.Collections.Generic;
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEA_Core.BaseServices;
using WIDESEA_DTO.MES;
using WIDESEA_Model.Models;
 
namespace WIDESEA_IBasicService
{
    /// <summary>
    /// MES接口日志服务接口
    /// </summary>
    public interface IMesLogService : IService<Dt_MesApiLog>
    {
        /// <summary>
        /// 记录MES接口调用日志
        /// </summary>
        /// <param name="log">日志DTO</param>
        /// <returns>是否记录成功</returns>
        Task<bool> LogAsync(MesApiLogDto log);
 
        /// <summary>
        /// 获取最近的MES接口调用记录
        /// </summary>
        /// <param name="apiType">接口类型</param>
        /// <param name="count">记录数量</param>
        /// <returns>日志列表</returns>
        Task<List<MesApiLogDto>> GetRecentLogsAsync(string apiType, int count = 50);
 
        /// <summary>
        /// 分页查询MES日志
        /// </summary>
        /// <param name="query">查询条件</param>
        /// <param name="page">页码</param>
        /// <param name="pageSize">每页数量</param>
        /// <returns>日志列表和总数</returns>
        Task<(List<MesLogListItemDto> items, int total)> GetPageAsync(MesLogQueryDto query, int page, int pageSize);
 
        /// <summary>
        /// 获取单条日志详情
        /// </summary>
        /// <param name="id">日志ID</param>
        /// <returns>日志详情</returns>
        Task<MesLogDetailDto?> GetDetailAsync(long id);
 
        /// <summary>
        /// 获取统计数据
        /// </summary>
        /// <param name="query">查询条件</param>
        /// <returns>统计数据</returns>
        Task<MesLogStatisticsDto> GetStatisticsAsync(MesLogQueryDto query);
 
        /// <summary>
        /// 导出日志数据
        /// </summary>
        /// <param name="query">查询条件</param>
        /// <returns>CSV字节数组</returns>
        Task<byte[]> ExportAsync(MesLogQueryDto query);
    }
}