You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

308 lines
8.9 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using Sln.Iot.Repository.dao;
using Sln.Iot.Serilog;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static System.Runtime.CompilerServices.RuntimeHelpers;
namespace Sln.Iot.Repository.service
{
public class ErrorService
{
private static readonly Lazy<ErrorService> lazy = new Lazy<ErrorService>(() => new ErrorService());
public static ErrorService Instance
{
get
{
return lazy.Value;
}
}
private SQLiteHelper<Vacuum1Error> _helperV1 = SQLiteHelper<Vacuum1Error>.Instance;
private SQLiteHelper<Vacuum2Error> _helperV2 = SQLiteHelper<Vacuum2Error>.Instance;
private SQLiteHelper<LiftError> _helperL = SQLiteHelper<LiftError>.Instance;
private SQLiteHelper<OvenError> _helperO = SQLiteHelper<OvenError>.Instance;
private SerilogHelper _log = SerilogHelper.Instance;
#region 真空1错误操作
/// <summary>
/// 插入报错真空1
/// </summary>
/// <returns></returns>
public bool InsertVacuum1Error(string Guid, string Message, string CNMessage, string code)
{
try
{
var res = _helperV1.Insert(new Vacuum1Error()
{
ErrorGuid = Guid,
ErrorName = Message,
CNErrorName = CNMessage,
ErrorCode = code
});
return res == 0 ? false : true;
}
catch (Exception ex)
{
_log.Error("报警信息插入错误V1", ex);
return false;
}
}
/// <summary>
/// 删除报错真空1
/// </summary>
/// <returns></returns>
public string DeleteVacuum1Error(string Message)
{
try
{
var restr = _helperV1.QuerySingle(x => x.ErrorName == Message).ErrorGuid;
var res = _helperV1.SqlExcute($"DELETE FROM Vacuum1Error WHERE ErrorName = '{Message}'");
if (res == 0)
{
throw new Exception("删除数据不成功可能没有指定ErrorMessage的错误");
}
return restr;
}
catch (Exception ex)
{
_log.Error("报警信息删除错误V1", ex);
return string.Empty;
}
}
/// <summary>
/// 获取报错列表
/// </summary>
/// <returns></returns>
public List<Vacuum1Error> GetV1List()
{
try
{
var res = _helperV1.QueryAll();
return res;
}
catch (Exception ex)
{
_log.Error("报警信息获取错误V1", ex);
return new List<Vacuum1Error>();
}
}
#endregion
#region 真空2错误操作
/// <summary>
/// 插入报错真空2
/// </summary>
/// <returns></returns>
public bool InsertVacuum2Error(string Guid, string Message, string CNMessage, string code)
{
try
{
var res = _helperV2.Insert(new Vacuum2Error()
{
ErrorGuid = Guid,
ErrorName = Message,
CNErrorName = CNMessage,
ErrorCode = code
});
return res == 0 ? false : true;
}
catch (Exception ex)
{
_log.Error("报警信息插入错误V2", ex);
return false;
}
}
/// <summary>
/// 删除报错真空2
/// </summary>
/// <returns></returns>
public string DeleteVacuum2Error(string Message)
{
try
{
var restr = _helperV2.QuerySingle(x => x.ErrorName == Message).ErrorGuid;
var res = _helperV2.SqlExcute($"DELETE FROM Vacuum1Error WHERE ErrorName = '{Message}'");
if (res == 0)
{
throw new Exception("删除数据不成功可能没有指定ErrorMessage的错误");
}
return restr;
}
catch (Exception ex)
{
_log.Error("报警信息删除错误V2", ex);
return string.Empty;
}
}
/// <summary>
/// 获取报错列表
/// </summary>
/// <returns></returns>
public List<Vacuum2Error> GetV2List()
{
try
{
var res = _helperV2.QueryAll();
return res;
}
catch (Exception ex)
{
_log.Error("报警信息获取错误V2", ex);
return new List<Vacuum2Error>();
}
}
#endregion
#region 提升机错误操作
/// <summary>
/// 插入报错提升机
/// </summary>
/// <returns></returns>
public bool InsertLiftError(string Guid, string Message, string CNMessage, string code)
{
try
{
var res = _helperL.Insert(new LiftError()
{
ErrorGuid = Guid,
ErrorName = Message,
CNErrorName = CNMessage,
ErrorCode = code
});
return res == 0 ? false : true;
}
catch (Exception ex)
{
_log.Error("报警信息插入错误L", ex);
return false;
}
}
/// <summary>
/// 删除报错提升机
/// </summary>
/// <returns></returns>
public string DeleteliftError(string Message)
{
try
{
var restr = _helperL.QuerySingle(x => x.ErrorName == Message).ErrorGuid;
var res = _helperL.SqlExcute($"DELETE FROM Vacuum1Error WHERE ErrorName = '{Message}'");
if (res == 0)
{
throw new Exception("删除数据不成功可能没有指定ErrorMessage的错误");
}
return restr;
}
catch (Exception ex)
{
_log.Error("报警信息删除错误L", ex);
return string.Empty;
}
}
/// <summary>
/// 获取报错列表提升机
/// </summary>
/// <returns></returns>
public List<LiftError> GetLiftList()
{
try
{
var res = _helperL.QueryAll();
return res;
}
catch (Exception ex)
{
_log.Error("报警信息获取错误L", ex);
return new List<LiftError>();
}
}
#endregion
#region 烤箱错误操作
/// <summary>
/// 插入报错烤箱
/// </summary>
/// <returns></returns>
public bool InsertOvenError(string Guid, string Message, string CNMessage, string code)
{
try
{
var res = _helperO.Insert(new OvenError()
{
ErrorGuid = Guid,
ErrorName = Message,
CNErrorName = CNMessage,
ErrorCode = code
});
return res == 0 ? false : true;
}
catch (Exception ex)
{
_log.Error("报警信息插入错误O", ex);
return false;
}
}
/// <summary>
/// 删除报错烤箱
/// </summary>
/// <returns></returns>
public string DeleteOvenError(string Message)
{
try
{
var restr = _helperO.QuerySingle(x => x.ErrorName == Message).ErrorGuid;
var res = _helperO.SqlExcute($"DELETE FROM Vacuum1Error WHERE ErrorName = '{Message}'");
if (res == 0)
{
throw new Exception("删除数据不成功可能没有指定ErrorMessage的错误");
}
return restr;
}
catch (Exception ex)
{
_log.Error("报警信息删除错误O", ex);
return string.Empty;
}
}
/// <summary>
/// 获取报错列表烤箱
/// </summary>
/// <returns></returns>
public List<OvenError> GetOvenList()
{
try
{
var res = _helperO.QueryAll();
return res;
}
catch (Exception ex)
{
_log.Error("报警信息获取错误O", ex);
return new List<OvenError>();
}
}
#endregion
}
}