using DataEntity;
|
using DataEntity.Share;
|
using DataRWDAL;
|
using DataRWDalDrive.Model;
|
using DriverLib.Engine;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Xml;
|
using XCommon;
|
using XCommon.Log;
|
using XCore;
|
using XCoreBLL;
|
using XHandler.Controls.Run.Com;
|
using XHandler.View;
|
using XImagingXhandler.XDAL;
|
|
namespace XHandler.Controls
|
{
|
/// <summary>
|
/// 振荡运行处理
|
/// </summary>
|
public class ShakeControl
|
{
|
string strCurrentCulture = "";
|
ShakerBll shakerBll = new ShakerBll();
|
public RunWnd launchView = null;
|
|
public ShakeControl(string strCurrentCulture)
|
{
|
this.strCurrentCulture = strCurrentCulture;
|
}
|
|
#region 执行振荡,返回结果字符串
|
/// <summary>
|
/// 执行振荡,返回结果字符串
|
/// </summary>
|
/// <param name="xmlEnv">板位节点信息</param>
|
/// <param name="methodNode">装载方法属性节点对象</param>
|
/// <param name="isSimulator">0:连接谁;1:仿真</param>
|
/// <returns></returns>
|
public bool ExecuteShake(XmlNode xmlEnv, XmlNode methodNode, bool isSimulator)
|
{
|
bool result = true;
|
HxResult ret = new HxResult();
|
if (launchView._cancelSource.IsCancellationRequested)
|
{
|
result = false;
|
return result;
|
}
|
|
#region Start Log
|
if (strCurrentCulture.Equals("zh-CN"))
|
{
|
launchView.AddLogs("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】> Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】" + Properties.MachineRunResource.strStart.ToString());
|
}
|
else
|
{
|
launchView.AddLogs("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】> Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】start:");
|
}
|
#endregion
|
|
#region 数据准备
|
MethodShake methodShake = shakerBll.GenerateMethodShakeDataByXmlNode(methodNode);
|
#endregion
|
|
#region 执行构建
|
try
|
{
|
launchView.SetWaitOne();//暂停
|
ret = shakerBll.ExecuteShake(methodShake, isSimulator);
|
|
if (ret.Result != ResultType.Success)
|
{
|
if (strCurrentCulture.Equals("zh-CN"))
|
{
|
launchView.AddLogs("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】" + Properties.MachineRunResource.strProgress.ToString() + Properties.RunShakeResource.strShakeFailed.ToString() + ret.AlarmInfo);
|
LoggerRunHelper.InfoLog("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】" + Properties.MachineRunResource.strProgress.ToString() + Properties.RunShakeResource.strShakeFailed.ToString() + ret.AlarmInfo);
|
}
|
else
|
{
|
launchView.AddLogs("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】progress: shake was failed! Error info:" + ret.AlarmInfo);
|
LoggerRunHelper.InfoLog("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】progress: shake was failed! Error info:" + ret.AlarmInfo);
|
}
|
result = false;
|
return result;
|
}
|
else
|
{
|
if (strCurrentCulture.Equals("zh-CN"))
|
{
|
launchView.AddLogs("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】" + Properties.MachineRunResource.strProgress.ToString() + Properties.RunShakeResource.strShakeSuccess.ToString());
|
LoggerRunHelper.InfoLog("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】" + Properties.MachineRunResource.strProgress.ToString() + Properties.RunShakeResource.strShakeSuccess.ToString());
|
}
|
else
|
{
|
launchView.AddLogs("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】progress:shake was successful!");
|
LoggerRunHelper.InfoLog("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】progress:shake was successful!");
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
LoggerHelper.ErrorLog("ERROR:", ex);
|
if (strCurrentCulture.Equals("zh-CN"))
|
{
|
launchView.AddLogs("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】" + Properties.MachineRunResource.strError.ToString() + " 源 " + ex.Source + " 错误信息 " + ex.Message + ";");
|
}
|
else
|
{
|
launchView.AddLogs("【" + DateTime.Now.ToString("HH:mm:ss:fff") + "】>Xhandler: 【" + methodNode.SelectSingleNode("name").InnerText + "】error:source:" + ex.Source + ";error:" + ex.Message + ";");
|
}
|
result = false;
|
}
|
|
#endregion
|
|
return result;
|
}
|
#endregion
|
}
|
}
|