67 lines
2.5 KiB
C#
67 lines
2.5 KiB
C#
using JY.Utility;
|
|||
|
|
using System;
|
||
|
|
using System.Collections.Generic;
|
||
|
|
using System.IO;
|
||
|
|
using System.Linq;
|
||
|
|
using System.Text;
|
||
|
|
using System.Threading.Tasks;
|
||
|
|
using System.Web.UI.WebControls;
|
||
|
|
|
||
|
|
namespace JY.Inspection.Mes
|
||
|
|
{
|
||
|
|
public interface IMesLog
|
||
|
|
{
|
||
|
|
void LogProductResult(DateTime curTime, string reqJsonStr, string respMes, long costTime);
|
||
|
|
void LogArrivalStation(DateTime curTime, string reqJsonStr, string respMes, long costTime);
|
||
|
|
|
||
|
|
void LogExitStation(DateTime curTime, string reqJsonStr, string respMes, long costTime);
|
||
|
|
}
|
||
|
|
|
||
|
|
public class MesLog : IMesLog
|
||
|
|
{
|
||
|
|
private void LogoutAction(string actionName, DateTime curTime, string reqJsonStr, string respMes, long costTime)
|
||
|
|
{
|
||
|
|
// 构建日志目录和文件路径
|
||
|
|
string mesLogPath = @"D:\APILog\MesLogs";
|
||
|
|
string logDate = curTime.ToString("yyyyMMdd");
|
||
|
|
string logHour = curTime.ToString("HH");
|
||
|
|
string logDirectory = Path.Combine(mesLogPath, logDate, actionName);
|
||
|
|
string logFilePath = Path.Combine(logDirectory, $"{logHour}.txt");
|
||
|
|
|
||
|
|
// 确保目录存在
|
||
|
|
Directory.CreateDirectory(logDirectory);
|
||
|
|
|
||
|
|
// 使用StringBuilder构建日志消息
|
||
|
|
var logBuilder = new StringBuilder();
|
||
|
|
logBuilder.AppendLine($"{curTime.ToString("yyyy-MM-dd HH:mm:ss.fff")}:{actionName}接口:{Global.systemConfig.ResultProcessMesUrl}");
|
||
|
|
logBuilder.AppendLine($"请求数据为:{reqJsonStr}");
|
||
|
|
logBuilder.AppendLine($"{curTime.AddMilliseconds(costTime).ToString("yyyy-MM-dd HH:mm:ss.fff")}:接口耗时:{costTime}ms");
|
||
|
|
logBuilder.AppendLine($"返回结果:{respMes}");
|
||
|
|
|
||
|
|
// 写入日志文件
|
||
|
|
TxtHelper.WriteTxt(logFilePath, logBuilder.ToString());
|
||
|
|
}
|
||
|
|
|
||
|
|
public void LogArrivalStation(DateTime curTime, string reqJsonStr, string respMes, long costTime)
|
||
|
|
{
|
||
|
|
string actionName = "产品入站";
|
||
|
|
|
||
|
|
LogoutAction(actionName, curTime, reqJsonStr, respMes, costTime);
|
||
|
|
}
|
||
|
|
|
||
|
|
public void LogExitStation(DateTime curTime, string reqJsonStr, string respMes, long costTime)
|
||
|
|
{
|
||
|
|
string actionName = "产品出站";
|
||
|
|
|
||
|
|
LogoutAction(actionName, curTime, reqJsonStr, respMes, costTime);
|
||
|
|
}
|
||
|
|
|
||
|
|
public void LogProductResult(DateTime curTime, string reqJsonStr, string respMes, long costTime)
|
||
|
|
{
|
||
|
|
string actionName = "产品结果加工参数";
|
||
|
|
|
||
|
|
LogoutAction(actionName, curTime, reqJsonStr, respMes, costTime);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|