master
zby 2 months ago
parent 23b210cbaf
commit 7a4cd6cb77

@ -8,6 +8,7 @@ using log4net;
using Newtonsoft.Json;
using Service.Execute.Api;
using Service.Execute.Model;
using Service.Execute.Model.Tbox;
using Service.Execute.SwapException;
using Service.Execute.Utils;
using Service.Init;
@ -44,7 +45,7 @@ public class StationReadyState : IState
}
_CommonMgr.InsertStep(InfoEnum.BusinessSwappingStep.Idel,
machine);
////开启雷达
var beginRadar = ControlRadar(machine, 1);
@ -381,6 +382,7 @@ public class StationReadyState : IState
}
private SwapOrder BuildOrder(RfidReadModel rfidReadModel)
{
SwapOrder swapOrder = new SwapOrder()

@ -74,211 +74,211 @@ public class SummaryFailuresReqHandler : SimpleChannelInboundHandler<SummaryFail
return;
}*/
//lstEquipAlarmDefine = EquipAlarmDefineRepository.QueryListByClause(i => i.EquipCode == "plc");
//List<string> lstAlarm = new List<string>();
lstEquipAlarmDefine = EquipAlarmDefineRepository.QueryListByClause(i => i.EquipCode == "plc");
List<string> lstAlarm = new List<string>();
//if (msg.ScreenEmergencyStop)
// Alarm("1");
//if (msg.PassageEmergencyStop)
// Alarm("2");
//if (msg.RobotEmergencyStop)
// Alarm("3");
//if (msg.FaultyRelays)
// Alarm("4");
//if (msg.TelecommFailures)
// Alarm("5");
//if (msg.MasterFailures)
// Alarm("6");
//if (msg.TitleFailures)
// Alarm("7");
//if (msg.TitleXFailures)
// Alarm("8");
//if (msg.TitleYFailures)
// Alarm("9");
//if (msg.TitleZFailures)
// Alarm("10");
//if (msg.TitleMFailures)
// Alarm("11");
//if (msg.WireBroken0)
// Alarm("12");
//if (msg.WireBroken1)
// Alarm("13");
//if (msg.WireBroken2)
// Alarm("14");
//if (msg.WireBroken3)
// Alarm("15");
//if (msg.XPositiveLimit)
// Alarm("16");
//if (msg.XNegativeLimit)
// Alarm("17");
//if (msg.YPositiveLimit)
// Alarm("18");
//if (msg.YNegativeLimit)
// Alarm("19");
//if (msg.ZPositiveLimit)
// Alarm("20");
//if (msg.ZNegativeLimit)
// Alarm("21");
//if (msg.MPositiveLimit)
// Alarm("22");
//if (msg.MNegativeLimit)
// Alarm("23");
//if (msg.XDriveFailure)
// Alarm("24");
//if (msg.YDriveFailure)
// Alarm("25");
//if (msg.ZDriveFailure)
// Alarm("26");
//if (msg.MDriveFailure)
// Alarm("27");
//if (msg.DoorLeft)
// Alarm("28");
//if (msg.DoorcloseLeft)
// Alarm("29");
//if (msg.DoorRight)
// Alarm("30");
//if (msg.DoorcloseRight)
// Alarm("31");
//if (msg.DoorRepaiDhambers)
// Alarm("32");
//if (msg.DoorcloseRepairChambers)
// Alarm("33");
//if (msg.DoorRepaiCabinet)
// Alarm("34");
//if (msg.DoorRowFrames)
// Alarm("35");
//if (msg.X1RetractionFailure)
// Alarm("36");
//if (msg.X1StickingFault)
// Alarm("37");
//if (msg.X2RetractionFailure)
// Alarm("38");
//if (msg.X2StickingFault)
// Alarm("39");
//if (msg.LocalBattIncorrect)
// Alarm("40");
//if (msg.NoLocalBattery)
// Alarm("41");
//if (msg.LocalStorageBatteries)
// Alarm("42");
//if (msg.RemoteBattIncorrect)
// Alarm("43");
//if (msg.RemoteBattery)
// Alarm("44");
//if (msg.RemoteStorageBatteries)
// Alarm("45");
//if (msg.RemoteMoveLibraryBattery)
// Alarm("46");
//if (msg.RemoteLibraryBatteries)
// Alarm("47");
//if (msg.RemoteAreBatteries)
// Alarm("48");
//if (msg.RemoteMoveElectLibrary)
// Alarm("49");
//if (msg.RemoteelectrLibrary)
// Alarm("50");
//if (msg.RemoteelectrAreBatteries)
// Alarm("51");
//if (msg.RemoteStorageLibrary)
// Alarm("52");
//if (msg.RemotStorageAreBatteries)
// Alarm("53");
//if (msg.RemoteOutboundLibrary)
// Alarm("54");
//if (msg.RemotOutboundAreBatteries)
// Alarm("55");
//if (msg.RemoteBackupLibrary)
// Alarm("56");
//if (msg.RemotBackupAreBatteries)
// Alarm("57");
//if (msg.BatteryCompartAbnormal01)
// Alarm("58");
//if (msg.BatteryCompartAbnormal02)
// Alarm("59");
//if (msg.BatteryCompartAbnormal03)
// Alarm("60");
//if (msg.BatteryCompartAbnormal04)
// Alarm("61");
//if (msg.BatteryCompartAbnormal05)
// Alarm("62");
//if (msg.BatteryCompartAbnormal06)
// Alarm("63");
//if (msg.BatteryCompartAbnormal07)
// Alarm("64");
//if (msg.BatteryCompartAbnormal08)
// Alarm("65");
//if (msg.BatteryCompartAbnormal09)
// Alarm("66");
//if (msg.BatteryWasDetectCompartment)
// Alarm("67");
//if (msg.RepairWasDetectCompartment)
// Alarm("68");
//if (msg.WasDetectCompartment214)
// Alarm("69");
//if (msg.ZSpreaderForceSensor)
// Alarm("70");
//if (msg.YZSafetyBitAlarm)
// Alarm("71");
//if (msg.YZSafetyWarehouseBitAlarm)
// Alarm("72");
if (msg.ScreenEmergencyStop)
Alarm("1");
if (msg.PassageEmergencyStop)
Alarm("2");
if (msg.RobotEmergencyStop)
Alarm("3");
if (msg.FaultyRelays)
Alarm("4");
if (msg.TelecommFailures)
Alarm("5");
if (msg.MasterFailures)
Alarm("6");
if (msg.TitleFailures)
Alarm("7");
if (msg.TitleXFailures)
Alarm("8");
if (msg.TitleYFailures)
Alarm("9");
if (msg.TitleZFailures)
Alarm("10");
if (msg.TitleMFailures)
Alarm("11");
if (msg.WireBroken0)
Alarm("12");
if (msg.WireBroken1)
Alarm("13");
if (msg.WireBroken2)
Alarm("14");
if (msg.WireBroken3)
Alarm("15");
if (msg.XPositiveLimit)
Alarm("16");
if (msg.XNegativeLimit)
Alarm("17");
if (msg.YPositiveLimit)
Alarm("18");
if (msg.YNegativeLimit)
Alarm("19");
if (msg.ZPositiveLimit)
Alarm("20");
if (msg.ZNegativeLimit)
Alarm("21");
if (msg.MPositiveLimit)
Alarm("22");
if (msg.MNegativeLimit)
Alarm("23");
if (msg.XDriveFailure)
Alarm("24");
if (msg.YDriveFailure)
Alarm("25");
if (msg.ZDriveFailure)
Alarm("26");
if (msg.MDriveFailure)
Alarm("27");
if (msg.DoorLeft)
Alarm("28");
if (msg.DoorcloseLeft)
Alarm("29");
if (msg.DoorRight)
Alarm("30");
if (msg.DoorcloseRight)
Alarm("31");
if (msg.DoorRepaiDhambers)
Alarm("32");
if (msg.DoorcloseRepairChambers)
Alarm("33");
if (msg.DoorRepaiCabinet)
Alarm("34");
if (msg.DoorRowFrames)
Alarm("35");
if (msg.X1RetractionFailure)
Alarm("36");
if (msg.X1StickingFault)
Alarm("37");
if (msg.X2RetractionFailure)
Alarm("38");
if (msg.X2StickingFault)
Alarm("39");
if (msg.LocalBattIncorrect)
Alarm("40");
if (msg.NoLocalBattery)
Alarm("41");
if (msg.LocalStorageBatteries)
Alarm("42");
if (msg.RemoteBattIncorrect)
Alarm("43");
if (msg.RemoteBattery)
Alarm("44");
if (msg.RemoteStorageBatteries)
Alarm("45");
if (msg.RemoteMoveLibraryBattery)
Alarm("46");
if (msg.RemoteLibraryBatteries)
Alarm("47");
if (msg.RemoteAreBatteries)
Alarm("48");
if (msg.RemoteMoveElectLibrary)
Alarm("49");
if (msg.RemoteelectrLibrary)
Alarm("50");
if (msg.RemoteelectrAreBatteries)
Alarm("51");
if (msg.RemoteStorageLibrary)
Alarm("52");
if (msg.RemotStorageAreBatteries)
Alarm("53");
if (msg.RemoteOutboundLibrary)
Alarm("54");
if (msg.RemotOutboundAreBatteries)
Alarm("55");
if (msg.RemoteBackupLibrary)
Alarm("56");
if (msg.RemotBackupAreBatteries)
Alarm("57");
if (msg.BatteryCompartAbnormal01)
Alarm("58");
if (msg.BatteryCompartAbnormal02)
Alarm("59");
if (msg.BatteryCompartAbnormal03)
Alarm("60");
if (msg.BatteryCompartAbnormal04)
Alarm("61");
if (msg.BatteryCompartAbnormal05)
Alarm("62");
if (msg.BatteryCompartAbnormal06)
Alarm("63");
if (msg.BatteryCompartAbnormal07)
Alarm("64");
if (msg.BatteryCompartAbnormal08)
Alarm("65");
if (msg.BatteryCompartAbnormal09)
Alarm("66");
if (msg.BatteryWasDetectCompartment)
Alarm("67");
if (msg.RepairWasDetectCompartment)
Alarm("68");
if (msg.WasDetectCompartment214)
Alarm("69");
if (msg.ZSpreaderForceSensor)
Alarm("70");
if (msg.YZSafetyBitAlarm)
Alarm("71");
if (msg.YZSafetyWarehouseBitAlarm)
Alarm("72");
////查询当前PLC的实时报警信息
//var lstNowEquipAlarmRecord = EquipAlarmRecordRepository.QueryListByClause(i => i.EquipCode == "plc");
//var sqllstAlarm = lstNowEquipAlarmRecord.Select(obj => obj.ErrorCode).ToList(); //当前报警列表
//查询当前PLC的实时报警信息
var lstNowEquipAlarmRecord = EquipAlarmRecordRepository.QueryListByClause(i => i.EquipCode == "plc");
var sqllstAlarm = lstNowEquipAlarmRecord.Select(obj => obj.ErrorCode).ToList(); //当前报警列表
//// 找出实时报警中存在但数据库中不存在的元素
//List<string> uniqueToList1 = lstAlarm.Except(sqllstAlarm).ToList();
// 找出实时报警中存在但数据库中不存在的元素
List<string> uniqueToList1 = lstAlarm.Except(sqllstAlarm).ToList();
//// 找出数据库中存在但实时报警中不存在的元素
//List<string> uniqueToList2 = sqllstAlarm.Except(lstAlarm).ToList();
//if (uniqueToList1.Count > 0)
//{
// //这里要添加新的报警数据
// foreach (var errorCode in uniqueToList1)
// {
// EquipAlarmDefine? alarmDefine =
// EquipAlarmDefineRepository.QueryByClause(i => i.ErrorCode == errorCode);
// if (alarmDefine != null)
// {
// EquipAlarmRecord record = new EquipAlarmRecord()
// {
// EquipTypeCode = alarmDefine.EquipTypeCode,
// EquipCode = "plc",
// ErrorCode = errorCode,
// ErrorLevel = alarmDefine.ErrorLevel,
// ErrorMsg = alarmDefine.ErrorMsg,
// ProcessMethod = alarmDefine.ProcessMethod,
// StartTime = DateTime.Now
// };
// EquipAlarmRecordRepository.Insert(record);
// }
// }
//}
//else if (uniqueToList2.Count > 0)
//{
// //这些是要清除实时报警,并且处理记录的。
// // 使用LINQ找出ErrorCode在uniqueToList2中的EquipAlarmRecord对象
// List<EquipAlarmRecord> filteredObjectList = lstNowEquipAlarmRecord
// .Where(obj => uniqueToList2.Contains(obj.ErrorCode))
// .ToList();
// foreach (var VARIABLE in filteredObjectList)
// {
// EquipAlarmProcessRecord EquipAlarmProcessRecord = new EquipAlarmProcessRecord();
// EquipAlarmProcessRecord.EquipTypeCode = VARIABLE.EquipTypeCode;
// EquipAlarmProcessRecord.EquipCode = VARIABLE.EquipCode;
// EquipAlarmProcessRecord.ErrorCode = VARIABLE.ErrorCode;
// EquipAlarmProcessRecord.ErrorLevel = VARIABLE.ErrorLevel;
// EquipAlarmProcessRecord.ErrorMsg = VARIABLE.ErrorMsg;
// EquipAlarmProcessRecord.ProcessMethod = VARIABLE.ProcessMethod;
// EquipAlarmProcessRecord.StartTime = VARIABLE.StartTime;
// EquipAlarmProcessRecord.ProcessTime = DateTime.Now;
// 找出数据库中存在但实时报警中不存在的元素
List<string> uniqueToList2 = sqllstAlarm.Except(lstAlarm).ToList();
if (uniqueToList1.Count > 0)
{
//这里要添加新的报警数据
foreach (var errorCode in uniqueToList1)
{
EquipAlarmDefine? alarmDefine =
EquipAlarmDefineRepository.QueryByClause(i => i.ErrorCode == errorCode);
if (alarmDefine != null)
{
EquipAlarmRecord record = new EquipAlarmRecord()
{
EquipTypeCode = alarmDefine.EquipTypeCode,
EquipCode = "plc",
ErrorCode = errorCode,
ErrorLevel = alarmDefine.ErrorLevel,
ErrorMsg = alarmDefine.ErrorMsg,
ProcessMethod = alarmDefine.ProcessMethod,
StartTime = DateTime.Now
};
EquipAlarmRecordRepository.Insert(record);
}
}
}
else if (uniqueToList2.Count > 0)
{
//这些是要清除实时报警,并且处理记录的。
// 使用LINQ找出ErrorCode在uniqueToList2中的EquipAlarmRecord对象
List<EquipAlarmRecord> filteredObjectList = lstNowEquipAlarmRecord
.Where(obj => uniqueToList2.Contains(obj.ErrorCode))
.ToList();
foreach (var VARIABLE in filteredObjectList)
{
EquipAlarmProcessRecord EquipAlarmProcessRecord = new EquipAlarmProcessRecord();
EquipAlarmProcessRecord.EquipTypeCode = VARIABLE.EquipTypeCode;
EquipAlarmProcessRecord.EquipCode = VARIABLE.EquipCode;
EquipAlarmProcessRecord.ErrorCode = VARIABLE.ErrorCode;
EquipAlarmProcessRecord.ErrorLevel = VARIABLE.ErrorLevel;
EquipAlarmProcessRecord.ErrorMsg = VARIABLE.ErrorMsg;
EquipAlarmProcessRecord.ProcessMethod = VARIABLE.ProcessMethod;
EquipAlarmProcessRecord.StartTime = VARIABLE.StartTime;
EquipAlarmProcessRecord.ProcessTime = DateTime.Now;
// EquipAlarmProcessRecordRepository.Insert(EquipAlarmProcessRecord);
// }
EquipAlarmProcessRecordRepository.Insert(EquipAlarmProcessRecord);
}
// EquipAlarmRecordRepository.Delete(filteredObjectList);
//}
EquipAlarmRecordRepository.Delete(filteredObjectList);
}
ClientMgr.PlcClient.Auto = msg.T3 == 1;

Loading…
Cancel
Save