using DBHelper_SqlSugar; using Logs; using SqlSugar; using WCS.Entity; namespace WCS.Service.Helpers { public class LogHelper { /// /// 添加异常记录 /// /// 异常信息 /// 异常关联设备 /// 异常类型 关联WCS_EXCEPTIONTYPE枚举 public static void AddWCS_EXCEPTION(string msg, string device, string type) { Db.Do(db => { var exp = db.Default.Queryable() .Where(v => SqlFunc.DateDiff(DateType.Second, v.UPDATETIME, DateTime.Now) < 5) .Where(v => v.MSG == msg) .OrderByDescending(v => v.ID) .First() ?? new WCS_EXCEPTION { MSG = msg, DEVICECODE = device, EXCEPTIONTYPE = type, STARTTIME = DateTime.Now, TIMES = 0, UPDATETIME = DateTime.Now, UPDATEUSER = "WCS" }; exp.TIMES++; exp.UPDATETIME = DateTime.Now; db.Default.Storageable(exp).ExecuteCommand(); }); } /// /// 拼接日志消息 ,避免返回异常时写错导致异常 /// /// 异常信息 /// 异常关联设备 /// 异常类型 /// public static string SpliceLogMessage(string msg, string device, WCS_EXCEPTIONTYPE type, Type type1) { InfoLog.INFO_ERROR($"{type1.FullName}--{msg}--{device}--{type}"); return $"{msg}|{device}|{type}"; } } }