General.Services/SystemLogs/SystemLogsService.cs

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Linq;
using System.Threading.Tasks;
using General.Core.Data;
using General.Entities.Data;
using General.Entities.Models;
using Microsoft.EntityFrameworkCore;

namespace General.Services.SystemLogs
{
    public class SystemLogsService:ISystemLogsService
    {
        private readonly IRepository<tc_systemlogs> tc_SystemlogsRepository;

        public SystemLogsService(IRepository<tc_systemlogs> tc_systemlogsRepository)
        {
            tc_SystemlogsRepository = tc_systemlogsRepository;
        }



        /// <summary>
        /// 获取列表
        /// </summary>
        /// <param name="page"></param>
        /// <param name="limit"></param>
        /// <param name="message"></param>
        /// <param name="exception"></param>
        /// <param name="level"></param>
        /// <returns></returns>
        public async Task<AdminResult> GetList(int page, int limit, string message, string exception, string level)
        {
            AdminResult result = new AdminResult();
            var query = from d in tc_SystemlogsRepository.Table
                        orderby d.id descending
                        select new tc_systemlogs()
                        {
                             Exception = d.Exception,
                              id = d.id , Level  =d.Level , Message = d.Message, Timestamp=d.Timestamp
                        };

            if (!string.IsNullOrWhiteSpace(message))
            {
                query = query.Where(x=>x.Message.Contains(message));
            }
            if (!string.IsNullOrWhiteSpace(exception))
            {
                query = query.Where(x => x.Exception.Contains(exception));
            }
            if (!string.IsNullOrWhiteSpace(level))
            {
                query = query.Where(x => x.Level==level);
            }
            result.count = await query.CountAsync();
            result.data = await query.Skip((page - 1) * limit).Take(limit).ToListAsync();
            result.code = 0;
            

            return result;
        }
后面还有 25 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。