1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- using DBHelper;
- using Microsoft.EntityFrameworkCore;
- using System;
- using System.Linq;
- using WCS.Core;
- using WCS.Entity;
- namespace WCS.Service.Helpers
- {
- public class LogHelper
- {
- /// <summary>
- /// 添加异常记录
- /// </summary>
- /// <param name="msg">异常信息</param>
- /// <param name="device">异常关联设备</param>
- /// <param name="type">异常类型 关联WCS_EXCEPTIONTYPE枚举</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() ?? 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}";
- }
- }
- }
|