| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 | 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    {        ///// <summary>        ///// 添加异常记录        ///// </summary>        ///// <param name="msg">异常信息</param>        ///// <param name="time">时间</param>        //public static void AddWCS_EXCEPTION(string msg, DateTime time)        //{        //    DB.Do(db =>        //    {        //        var exp = db.Default.Set<WCS_EXCEPTION>()        //        .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<WCS_EXCEPTION>().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();        //    });        //}        /// <summary>        /// 添加异常记录        /// </summary>        /// <param name="msg">异常信息</param>        /// <param name="device">异常关联设备</param>        /// <param name="type">异常类型</param>        public static void AddWCS_EXCEPTION(string msg, string device, string type)        {            DB.Do(db =>            {                var exp = db.Default.Set<WCS_EXCEPTION>()                .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<WCS_EXCEPTION>().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();            });        }        /// <summary>        /// 拼接日志消息 ,避免返回异常时写错导致异常        /// </summary>        /// <param name="msg">异常信息</param>        /// <param name="device">异常关联设备</param>        /// <param name="type">异常类型</param>        /// <returns></returns>        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}";        }        ///// <summary>        ///// 秒表        ///// </summary>        //public static void Timer<T>(Action<> act, string msg)        //{        //    var timer = new Stopwatch();        //    timer.Start();                  //    timer.Stop();        //    InfoLog.INFO_TIMING(msg + $"{timer.ElapsedMilliseconds}");        //}    }}
 |