diff --git "a/\350\223\235\346\231\223\346\242\205/WebApi07.Util/Log/LogHelper.cs" "b/\350\223\235\346\231\223\346\242\205/WebApi07.Util/Log/LogHelper.cs" new file mode 100644 index 0000000000000000000000000000000000000000..5527914f1c95b4b9d5831596465e6f206f81049a --- /dev/null +++ "b/\350\223\235\346\231\223\346\242\205/WebApi07.Util/Log/LogHelper.cs" @@ -0,0 +1,47 @@ +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.Text; +using WepApi07.Data.Entity; +using WepApi07.Domain; +using WepApi07.Domain.Enum; +using WepApi07.Intenface.Log; + +namespace WepApi07.Util.Log +{ + public static class LogHelper + { + public static void Logger(this IResponsitory log, Exception exception, LogsLevel logsLevel, int userId = 0) + { + var item = new Logs + { + LogLevel = (int)logsLevel, + ShortMessage = exception.Message, + FullMessage = exception.ToString(), + UserId=userId + }; + log.Insert(item); + } + public static void Info(this IResponsitory log, Exception exception, LogsLevel logsLevel = LogsLevel.信息, int userId = 0) + { + Logger(log,exception, logsLevel, userId); + + + } + + public static void Debug(this IResponsitory log, Exception exception, LogsLevel logsLevel = LogsLevel.调试, int userId = 0) + { + Logger(log, exception, logsLevel, userId); + } + + public static void Error(this IResponsitory log, Exception exception, LogsLevel logsLevel = LogsLevel.错误, int userId = 0) + { + Logger(log, exception, logsLevel, userId); + } + + public static void Fatal(this IResponsitory log, Exception exception, LogsLevel logsLevel = LogsLevel.崩溃, int userId = 0) + { + Logger(log, exception, logsLevel, userId); + } + } +} diff --git "a/\350\223\235\346\231\223\346\242\205/WepApi07.Implement/Log/Log.cs" "b/\350\223\235\346\231\223\346\242\205/WepApi07.Implement/Log/Log.cs" new file mode 100644 index 0000000000000000000000000000000000000000..2a9872ccccbafc7f668d7b0396112b78dec8cef3 --- /dev/null +++ "b/\350\223\235\346\231\223\346\242\205/WepApi07.Implement/Log/Log.cs" @@ -0,0 +1,61 @@ +using Microsoft.Extensions.Logging; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using WepApi07.Data.Entity; +using WepApi07.Domain; +using WepApi07.Domain.Enum; +using WepApi07.Intenface.Log; + + +namespace WepApi07.Implement.Log +{ + public class Log : ILog + { + private readonly IResponsitory _logsResponsitory; + + + + public Log(IResponsitory logsResponsitory) + { + _logsResponsitory = logsResponsitory; + } + + public void Clear() + { + var list = _logsResponsitory.Table.ToList(); + _logsResponsitory.Delete(list); + } + + public void Delete(Logs log) + { + _logsResponsitory.Delete(log); + } + + public Logs GetLogById(int id) + { + return _logsResponsitory.GetById(id); + } + + public void Insert(Logs log) + { + _logsResponsitory.Insert(log); + } + + public IEnumerable MultiQuery(DateTime beginTime, DateTime endTime, LogsLevel logLevel=LogsLevel.错误, int userId = 0) + { + var bTime = beginTime == null ? DateTime.Now : beginTime; + var eTime = endTime == null ? DateTime.Now : endTime; + + var list = _logsResponsitory.Table.Where(x => x.CreatedTime >= bTime && x.CreatedTime <= eTime && x.LogLevel==(int)logLevel); + + if (userId != 0) + { + list = list.Where(x => x.UserId == userId); + } + + return list; + } + } +} diff --git "a/\350\223\235\346\231\223\346\242\205/WepApi07.Intenface/Log/ILog.cs" "b/\350\223\235\346\231\223\346\242\205/WepApi07.Intenface/Log/ILog.cs" new file mode 100644 index 0000000000000000000000000000000000000000..5070f7dd367b0a1fb9c2cc9d4b03955ae7bec796 --- /dev/null +++ "b/\350\223\235\346\231\223\346\242\205/WepApi07.Intenface/Log/ILog.cs" @@ -0,0 +1,21 @@ +using Microsoft.Extensions.Logging; +using System; +using System.Collections.Generic; +using System.Text; +using WepApi07.Data; +using WepApi07.Data.Entity; +using WepApi07.Domain.Enum; + +namespace WepApi07.Intenface.Log +{ + public interface ILog + { + Logs GetLogById(int id); + void Insert(Logs log); + + void Delete(Logs log); + IEnumerable MultiQuery(DateTime beginTime, DateTime endTime, LogsLevel logLevel, int userId = 0); + + void Clear(); + } +}