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.

147 lines
4.2 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 System.Data;
using Chloe;
using WorkerSynReport.Data;
namespace WorkerSynReport.Plc;
/// <summary>
/// 配料日志
/// </summary>
public class LjLogControl
{
private IDbContextLocal _dbContext;
public LjLogControl(IDbContextLocal dbContext)
{
_dbContext = dbContext;
}
/// <summary>
/// 通过内容查询日志
/// </summary>
/// <param name="txt">查询关键字</param>
public DataTable ManualLogSelect(string txt)
{
string sql;
if (!string.IsNullOrEmpty(txt))
{
sql = BaseSelect($"where logtext like '%{txt}%'");
}
else
{
sql = BaseSelect("");
}
return _dbContext.Session.ExecuteDataTable(sql);
}
/// <summary>
/// 通过内容和机台号查询日志
/// </summary>
/// <param name="txt">查询关键字</param>
public DataTable ManualLogSelect(string txt, int deviceNo)
{
string sql;
if (deviceNo == 0)
{
return ManualLogSelect(txt);
}
else
{
sql = BaseSelect($"where deviceNo = {deviceNo} and logtext like '%{txt}%'");
return _dbContext.Session.ExecuteDataTable(sql);
}
}
/// <summary>
/// 通过时间查询日志
/// </summary>
/// <param name="txt">查询关键字</param>
public DataTable ManualLogSelect(string startTime, string endTime)
{
string sql = BaseSelect($"where logtime BETWEEN '{startTime}' AND '{endTime}'");
return _dbContext.Session.ExecuteDataTable(sql);
}
private static string BaseSelect(string sql)
{
string s = "select top 500 id, logtext, logtime, value, deviceno from Manual_Log " + sql +
" order by id desc";
return s;
}
/// <summary>
/// 完整手动日志插入
/// </summary>
/// <param name="logName">日志内容</param>
/// <param name="value">值</param>
/// <param name="valuekind">值类型 0无 1水称设定值 2水称称量值 3螺旋设定值 4螺旋称量值</param>
/// <param name="deviceno">设备编号</param>
/// <param name="devicekind">设备类型 0无 1水称 2螺旋湿混 3糊化 4干混</param>
public void ManualLogControl(string logName, int value, int valuekind, int deviceno, int devicekind)
{
var Log = new LjLogEntity()
{
logtext = logName,
logtime = DateTime.Now,
userid = "Admin",
value = value,
deviceno = deviceno,
devicekind = devicekind,
valuekind = valuekind,
createdate = DateTime.Now.ToString("yyyyMMdd")
};
_dbContext.Save(Log);
}
/// <summary>
/// 无数值 有设备 日志记录
/// </summary>
/// <param name="logName">日志内容</param>
/// <param name="deviceno">设备编号</param>
/// <param name="devicekind">设备类型</param>
public void ManualLogControl(string logName, int deviceno, int devicekind)
{
var Log = new LjLogEntity()
{
logtext = logName,
logtime = DateTime.Now,
userid = "Admin",
value = 0,
deviceno = deviceno,
devicekind = devicekind,
valuekind = 0,
createdate = DateTime.Now.ToString("yyyyMMdd")
};
_dbContext.Save(Log);
}
/// <summary>
/// 无数值 无设备 日志记录
/// </summary>
/// <param name="logName"></param>
public void ManualLogControl(string logName)
{
var Log = new LjLogEntity()
{
logtext = logName,
logtime = DateTime.Now,
userid = "Admin",
value = 0,
deviceno = 0,
devicekind = 0,
valuekind = 0,
createdate = DateTime.Now.ToString("yyyyMMdd")
};
_dbContext.Save(Log);
}
}