|
|
using Mesnac.Compressor.Data;
|
|
|
using Mesnac.Compressor.Entity;
|
|
|
using System;
|
|
|
using System.Collections.Generic;
|
|
|
using System.Data;
|
|
|
using System.Linq;
|
|
|
using System.Text;
|
|
|
|
|
|
namespace Mesnac.Compressor.Station
|
|
|
{
|
|
|
public class Common
|
|
|
{
|
|
|
public bool UpdateTray(string RFID, string barcode, string semibarcode)
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
sb.Append("update T_RP_WorkTrayRealTimeInfo set barcode='");
|
|
|
sb.Append(barcode).Append("', semibarcode='");
|
|
|
sb.Append(semibarcode).Append("', updateTime='").Append(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
|
|
sb.Append("' where RFIDNum='").Append(RFID).Append("'");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.ExecSql(sb.ToString());
|
|
|
return true;
|
|
|
}
|
|
|
catch
|
|
|
{
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
public bool InsertHistoryTray(string RFID, string barcode, string stationid)
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
sb.Append("INSERT INTO dbo.T_RP_WorkTrayHistoryInfo(barCode,RFIDNum,CurrentStation) VALUES('");
|
|
|
sb.Append(barcode).Append("', '").Append(RFID).Append("', '").Append(stationid).Append("')");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.ExecSql(sb.ToString());
|
|
|
return true;
|
|
|
}
|
|
|
catch
|
|
|
{
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 通过壳体条码,查找内部主条码
|
|
|
/// </summary>
|
|
|
/// <param name="semibarcode"></param>
|
|
|
/// <returns></returns>
|
|
|
public string GetMainBarcode(string semibarcode)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append("select top(1)barcode from T_SY_TraceState ");
|
|
|
sb.Append(" where SemiBarcode_A='").Append(semibarcode).Append("' order by BeginTime desc");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
var obj = db.dbHelper.ToScalar();
|
|
|
if (obj != null)
|
|
|
{
|
|
|
return obj.ToString();
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
return "";
|
|
|
}
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("获取系统条码语句错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
return "";
|
|
|
}
|
|
|
|
|
|
}
|
|
|
/// <summary>
|
|
|
///
|
|
|
/// </summary>
|
|
|
/// <param name="RFID"></param>
|
|
|
/// <returns></returns>
|
|
|
public string GetTraySemiBarcode(string RFID)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append("select semibarcode from T_RP_WorkTrayRealTimeInfo ");
|
|
|
sb.Append(" where RFIDNum='").Append(RFID).Append("'");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
return db.dbHelper.ToScalar().ToString();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("获取条码语句错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
return "";
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 判断数据是否数已经上传
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
/// <returns></returns>
|
|
|
public bool CheckNewData(StationInfo station, string barcode)
|
|
|
{
|
|
|
return true;
|
|
|
if (string.IsNullOrEmpty(barcode))
|
|
|
{
|
|
|
barcode = GetTraySemiBarcode(station.Data.RFIDNo);
|
|
|
}
|
|
|
if (string.IsNullOrEmpty(barcode))
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Warn("CheckNewData-" + station.StationCode + " 通过RFID号:" + station.Data.RFIDNo + "未找到对应条码");
|
|
|
return false;
|
|
|
}
|
|
|
station.Data.semibacode = barcode;
|
|
|
|
|
|
if (!JuadgeMaskID(barcode, station.Data.MaskID.ToString(), station.TableName))
|
|
|
{
|
|
|
//ICSharpCode.Core.LoggingService.Debug("工位:" + station.StationCode + "的RFID:" + station.Data.RFIDNo + "数据已上传。条码号:" + barcode + " 任务号:" + station.Data.MaskID.ToString());
|
|
|
return false;
|
|
|
}
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
///
|
|
|
/// </summary>
|
|
|
public void SaveStationData(StationInfo station)
|
|
|
{
|
|
|
//if (station.Data.NewFlag)
|
|
|
//{
|
|
|
ICSharpCode.Core.LoggingService.Debug("工位:" + station.StationCode + "的RFID:" + station.Data.RFIDNo + "数据已上传。任务号:" + station.Data.MaskID.ToString());
|
|
|
SqlHelper sh = new SqlHelper();
|
|
|
DbHandler db = new DbHandler();
|
|
|
|
|
|
//获取条码
|
|
|
|
|
|
string barcode = GetTraySemiBarcode(station.Data.RFIDNo);
|
|
|
string Mainbarcode = GetMainBarcode(barcode);
|
|
|
if (string.IsNullOrEmpty(barcode))
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Warn(station.StationCode + " 通过RFID号:" + station.Data.RFIDNo + "未找到对应条码");
|
|
|
return;
|
|
|
}
|
|
|
station.Data.semibacode = barcode;
|
|
|
//station.Data.ProductBarcode = "";
|
|
|
station.Data.MainBarcode = Mainbarcode;
|
|
|
//更新已有数据
|
|
|
if (!JuadgeMaskID(barcode, station.Data.MaskID.ToString(), station.TableName))
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Debug("工位:" + station.StationCode + "的RFID:" + station.Data.RFIDNo + "数据已上传。条码号:" + barcode + " 任务号:" + station.Data.MaskID.ToString());
|
|
|
return;
|
|
|
}
|
|
|
if (station.Data.MaterialBarcodeUpdate)
|
|
|
{
|
|
|
UpdateMaterialCode(station);
|
|
|
}
|
|
|
|
|
|
//更新当前工位
|
|
|
UpdateTraceStation(station);
|
|
|
if (station.Data.BarcodeUpdate)
|
|
|
{
|
|
|
updatebarcode(station);
|
|
|
updateSubInfo(station);
|
|
|
}
|
|
|
//插入新数据
|
|
|
string InsertSql = sh.DataInsertSql2(station);
|
|
|
db.ExecSql(InsertSql);
|
|
|
|
|
|
|
|
|
|
|
|
//如果是重投品,跟新重投次数
|
|
|
if (station.Data.Restart && !string.IsNullOrEmpty(station.Data.ProductBarcode))
|
|
|
{
|
|
|
UpdaterestartCount(station.Data.ProductBarcode);
|
|
|
ICSharpCode.Core.LoggingService.Debug("更新重投次数成功");
|
|
|
}
|
|
|
|
|
|
//不合格插入不合格工位
|
|
|
if (station.Data.ProductOkNg == 2)
|
|
|
{
|
|
|
UpdateTraceNgStation(station);
|
|
|
//UnbandTray(station);
|
|
|
}
|
|
|
|
|
|
ICSharpCode.Core.LoggingService.Debug("工位:" + station.StationCode + " 保存数据成功。托盘号:" + station.Data.RFIDNo + "条码:"+ barcode);
|
|
|
//}
|
|
|
}
|
|
|
///上传支线信息
|
|
|
private void updateSubInfo(StationInfo station)
|
|
|
{
|
|
|
if (station.Data.subLineList.Count <= 0)
|
|
|
{
|
|
|
return;
|
|
|
}
|
|
|
foreach (var sub in station.Data.subLineList)
|
|
|
{
|
|
|
SubInfoUpdate(sub.barcode, sub.lineID, station.Data.semibacode);
|
|
|
}
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 上传支线信息
|
|
|
/// </summary>
|
|
|
/// <param name="barcode"></param>
|
|
|
/// <param name="lineid"></param>
|
|
|
/// <param name="semibacode"></param>
|
|
|
/// <returns></returns>
|
|
|
public bool SubInfoUpdate(string barcode, string lineid, string semibacode)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
DbHandler db = new DbHandler();
|
|
|
try
|
|
|
{
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
sb.Append("EXEC SP_Pro_SubLineInfo '");
|
|
|
sb.Append(barcode).Append("','");
|
|
|
sb.Append(lineid).Append("','");
|
|
|
sb.Append(semibacode).Append("'");
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
return Convert.ToInt32(db.dbHelper.ToScalar()) == 0;
|
|
|
}
|
|
|
catch (Exception ex)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error(string.Format(ex.ToString()));
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 更新trace表产品条码和T_RP_SemiProInfo表产品条码
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
private void updatebarcode(StationInfo station)
|
|
|
{
|
|
|
if (string.IsNullOrEmpty(station.Data.ProductBarcode))
|
|
|
{
|
|
|
return;
|
|
|
}
|
|
|
UpdateSemiInfo(station);
|
|
|
if (station.IfMainline)
|
|
|
{
|
|
|
UpdateTraceBarcodeStation(station);
|
|
|
//这边是个坑啊
|
|
|
SubInfoUpdate(station.Data.ProductBarcode, "15", station.Data.semibacode);
|
|
|
}
|
|
|
}
|
|
|
private void UpdateSemiInfo(StationInfo station)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
//去掉换行符
|
|
|
string barcode = station.Data.semibacode.Replace("\r", "").Replace("\n", "").Replace("\t", "");
|
|
|
sb.Append(" UPDATE dbo.T_RP_SemiProInfo SET ProductBarcode='").Append(station.Data.ProductBarcode);
|
|
|
sb.Append("' WHERE SemiBarcode='").Append(barcode).Append("' ");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
db.dbHelper.ExecuteNonQuery();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("Trace表NG工位更新错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
}
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 更新物料信息
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
private void UpdateMaterialCode(StationInfo station)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append(" insert into dbo.T_RP_MaterialBarcode(barcode,productCode,stationID) values('");
|
|
|
sb.Append(station.Data.MainBarcode).Append("','");
|
|
|
sb.Append(station.Data.MaterialBarcode).Append("','");
|
|
|
sb.Append(station.stationID).Append("')");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
db.dbHelper.ExecuteNonQuery();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("物料条码更新出错:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
public void UpdateTraceNgStation(StationInfo station)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append(" UPDATE dbo.T_SY_TraceState SET NGStationID='").Append(station.stationID);
|
|
|
sb.Append("' WHERE barcode='").Append(station.Data.MainBarcode).Append("' ");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
db.dbHelper.ExecuteNonQuery();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("Trace表NG工位更新错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
}
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 更新当前工位
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
public void UpdateTraceStation(StationInfo station)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append(" UPDATE dbo.T_SY_TraceState SET CurrentStationID='").Append(station.stationID);
|
|
|
sb.Append("' WHERE barcode='").Append(station.Data.MainBarcode).Append("' ");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
db.dbHelper.ExecuteNonQuery();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("Trace工位更新错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 更新当前工位
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
public void UpdateTraceBarcodeStation(StationInfo station)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append(" UPDATE dbo.T_SY_TraceState SET ProductBarcode='").Append(station.Data.ProductBarcode);
|
|
|
sb.Append("' WHERE barcode='").Append(station.Data.MainBarcode).Append("' ");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
db.dbHelper.ExecuteNonQuery();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("Trace工位更新错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
}
|
|
|
}
|
|
|
/// <summary>
|
|
|
/// 判断当前条码和任务号是否上传过
|
|
|
/// </summary>
|
|
|
/// <param name="barcode"></param>
|
|
|
/// <param name="MaskID"></param>
|
|
|
/// <param name="TableName"></param>
|
|
|
/// <returns>上传过返回false</returns>
|
|
|
public bool JuadgeMaskID(string barcode, string MaskID, string TableName)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
DbHandler db = new DbHandler();
|
|
|
try
|
|
|
{
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
sb.Append("EXEC SP_Pro_Changeflag '");
|
|
|
sb.Append(barcode).Append("','");
|
|
|
sb.Append(MaskID).Append("','");
|
|
|
sb.Append(TableName).Append("'");
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
return Convert.ToInt32(db.dbHelper.ToScalar()) == 0;
|
|
|
}
|
|
|
catch (Exception ex)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error(string.Format(ex.ToString()));
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 更新当前工位
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
public void UpdaterestartCount(string Barcode)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append(" exec SP_Pro_UpdateRestartCount '").Append(Barcode).Append("'");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
db.dbHelper.ExecuteNonQuery();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("更新重投次数错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 生成新的产品信息
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
public string CreatNewProduct(StationInfo station)
|
|
|
{
|
|
|
string MainBarcode = "";
|
|
|
try
|
|
|
{
|
|
|
DbHandler db = new DbHandler();
|
|
|
//StationInsertInfo sinsert = new StationInsertInfo();
|
|
|
//生成系统条码,
|
|
|
MainBarcode = db.GetLastMainBarcode("M");
|
|
|
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error(e.ToString());
|
|
|
}
|
|
|
return MainBarcode;
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 生成新的产品信息
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
public string CreatNewSemibarcode(string Head, string lineID)
|
|
|
{
|
|
|
string semibarcode = "";
|
|
|
try
|
|
|
{
|
|
|
DbHandler db = new DbHandler();
|
|
|
//生成系统条码,
|
|
|
semibarcode = db.GetLastSemiBarcode(Head, lineID);
|
|
|
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error(e.ToString());
|
|
|
}
|
|
|
return semibarcode;
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
/// 解除绑定
|
|
|
/// </summary>
|
|
|
/// <param name="station"></param>
|
|
|
public void UnbandTray(StationInfo station)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append("Update T_RP_WorkTrayRealTimeInfo set barcode='',Semibarcode=''");
|
|
|
sb.Append(" where RFIDNum='").Append(station.Data.RFIDNo).Append("'");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
db.dbHelper.ExecuteNonQuery();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("获取条码语句错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
public string getSemiBacode(string productbarcode)
|
|
|
{
|
|
|
StringBuilder sb = new StringBuilder();
|
|
|
try
|
|
|
{
|
|
|
sb.Append(" SELECT TOP(1) semibarcode_A FROM dbo.T_SY_TraceState WHERE productbarcode='").Append(productbarcode).Append("' ");
|
|
|
DbHandler db = new DbHandler();
|
|
|
db.dbHelper.ClearParameter();
|
|
|
db.dbHelper.CommandType = CommandType.Text;
|
|
|
db.dbHelper.CommandText = "";
|
|
|
|
|
|
db.dbHelper.CommandText = sb.ToString();
|
|
|
return db.dbHelper.ToScalar().ToString();
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Error("Trace工位更新错误:" + sb.ToString() + "/r/n" + e.ToString());
|
|
|
return "";
|
|
|
}
|
|
|
}
|
|
|
|
|
|
#region 判断是否工作代码,yinzf 2023-3-1
|
|
|
public bool PreStationState(StationInfo station)
|
|
|
{
|
|
|
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
/// 判断托盘是否为空
|
|
|
/// state=0则表示空,state=2表示不合格,state=1表示合格
|
|
|
/// </summary>
|
|
|
/// <param name="stat"></param>
|
|
|
/// <returns></returns>
|
|
|
public bool TrayIsNull(StationInfo stat)
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
DbHandler db = new DbHandler();
|
|
|
//判断产品当前状态
|
|
|
WorkTray tray = db.GetProductQuality(stat.Data.RFIDNo);
|
|
|
if (tray.SemiBarcode.Equals(string.Empty))
|
|
|
{
|
|
|
return false;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
catch (Exception e)
|
|
|
{
|
|
|
ICSharpCode.Core.LoggingService.Warn("TrayIsNull函数错误" + e.ToString());
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
}
|
|
|
}
|
|
|
|