using DBHelper; using Microsoft.EntityFrameworkCore; using System; using System.Diagnostics; using System.Linq; using WCS.Entity; using WCS.Service.Log; namespace WCS.Service.Helpers { public class LogHelper { ///// ///// 添加异常记录 ///// ///// 异常信息 ///// 时间 //public static void AddWCS_EXCEPTION(string msg, DateTime time) //{ // DB.Do(db => // { // var exp = db.Default.Set() // .Where(v => EF.Functions.DateDiffSecond(v.UPDATETIME, DateTime.Now) < 5) // .Where(v => v.MSG == msg) // .OrderByDescending(v => v.ID) // .FirstOrDefault(); // if (exp == null) // { // exp = db.Default.Set().Add(new WCS_EXCEPTION // { // MSG = msg, // STARTTIME = DateTime.Now, // TIMES = 0, // UPDATETIME = DateTime.Now, // UPDATEUSER = "WCS" // }).Entity; // } // exp.TIMES++; // exp.UPDATETIME = DateTime.Now; // db.Default.SaveChanges(); // }); //} /// /// 添加异常记录 /// /// 异常信息 /// 异常关联设备 /// 异常类型 public static void AddWCS_EXCEPTION(string msg, string device, string type) { DB.Do(db => { var exp = db.Default.Set() .Where(v => EF.Functions.DateDiffSecond(v.UPDATETIME, DateTime.Now) < 5) .Where(v => v.MSG == msg) .OrderByDescending(v => v.ID) .FirstOrDefault(); if (exp == null) { exp = db.Default.Set().Add(new WCS_EXCEPTION { MSG = msg, DEVICE = device, EXCEPTIONTYPE = type, STARTTIME = DateTime.Now, TIMES = 0, UPDATETIME = DateTime.Now, UPDATEUSER = "WCS" }).Entity; } exp.TIMES++; exp.UPDATETIME = DateTime.Now; db.Default.SaveChanges(); }); } /// /// 拼接日志消息 ,避免返回异常时写错导致异常 /// /// 异常信息 /// 异常关联设备 /// 异常类型 /// 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}"; } ///// ///// 秒表 ///// //public static void Timer(Action<> act, string msg) //{ // var timer = new Stopwatch(); // timer.Start(); // timer.Stop(); // InfoLog.INFO_TIMING(msg + $"{timer.ElapsedMilliseconds}"); //} } }