using Aitex.Core.RT.SCCore; using System; using System.Linq; using MECF.Framework.Common.Equipment; namespace Aitex.Core.RT.Log { public static class LOG { public enum Level { Undefine, Debug, Info, Warning, Error } public static ICommonLog InnerLogger { set; private get; } private static void Debug(string message) { if (InnerLogger != null && SC.GetValue("System.IsOpenDebugLog") ==true) InnerLogger.Debug(message); } private static void Info(string message) { if (InnerLogger != null) InnerLogger.Info(message); } private static void Warning(string message) { if (InnerLogger != null) InnerLogger.Warning(message); } private static void Error(string message) { if (InnerLogger != null) InnerLogger.Error(message); } public static void Write(eEvent id, ModuleName module, params string[] values) { var logItem= LogDefineManager.LogItems.Where(x => x.Id == id).FirstOrDefault(); if (logItem != null) { string message = ((int)logItem.Id).ToString().PadRight(10)+ module.ToString().PadRight(12) +string.Format(logItem.GlobalDescription_zh, values); Level level = Level.Undefine; Enum.TryParse(logItem.Level, out level); switch (level) { case Level.Debug: Debug(message); break; case Level.Info: Info(message); break; case Level.Warning: Warning(message); break; case Level.Error: Error(message); break; default: break; } } } } }