using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CFX;
using CFX.Structures;
using Sln.Iot.CFX.Event;
namespace Sln.Iot.CFX
{
///
/// 入场前CFX测试
///
public class CFXTest
{
CFXHelper _cfxHelper = CFXHelper.Instance;
HeartbeatEvent heartbeatEvent = new HeartbeatEvent();
EndpointConnectedEvent endpointConnectedEvent = new EndpointConnectedEvent();
EndpointShuttingDownEvent endpointShuttingDownEvent = new EndpointShuttingDownEvent();
FaultAcknowledgedEvent faultAcknowledgedEvent = new FaultAcknowledgedEvent();
FaultClearedEvent faultClearedEvent = new FaultClearedEvent();
FaultOccurredEvent faultOccurredEvent = new FaultOccurredEvent();
LogEntryRecordedEvent logEntryRecordedEvent = new LogEntryRecordedEvent();
RecipeActivatedEvent recipeActivatedEvent = new RecipeActivatedEvent();
RecipeModifiedEvent recipeModifiedEvent = new RecipeModifiedEvent();
StationOfflineEvent stationOfflineEvent = new StationOfflineEvent();
StationOnlineEvent stationOnlineEvent = new StationOnlineEvent();
StationParametersModifiedEvent stationParametersModifiedEvent = new StationParametersModifiedEvent();
StationStateChangedEvent stationStateChangedEvent = new StationStateChangedEvent();
UnitsArrivedEvent unitsArrivedEvent = new UnitsArrivedEvent();
UnitsDepartedEvent unitsDepartedEvent = new UnitsDepartedEvent();
UnitsProcessedEvent unitsProcessedEvent = new UnitsProcessedEvent();
WorkCompletedEvent workCompletedEvent = new WorkCompletedEvent();
WorkStageCompletedEvent workStageCompletedEvent = new WorkStageCompletedEvent();
WorkStagePausedEvent workStagePausedEvent = new WorkStagePausedEvent();
WorkStageResumedEvent workStageResumedEvent = new WorkStageResumedEvent();
WorkStageStartedEvent workStageStartedEvent = new WorkStageStartedEvent();
WorkStartedEvent workStartedEvent = new WorkStartedEvent();
public void Test1()
{
// 实例化所有事件对象
// 发布所有事件
//_cfxHelper.PublishEvent(new CFXEnvelope(heartbeatEvent.Handle("CFX.A00.SDSH000003")));
_cfxHelper.PublishEvent(new CFXEnvelope(endpointConnectedEvent.Handle("CFX.A00.SDSH000003")));
_cfxHelper.PublishEvent(new CFXEnvelope(faultOccurredEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(faultAcknowledgedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(stationStateChangedEvent.Handle(ResourceState.USD_Repair)));
_cfxHelper.PublishEvent(new CFXEnvelope(faultClearedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(stationStateChangedEvent.Handle(ResourceState.PRD)));
_cfxHelper.PublishEvent(new CFXEnvelope(logEntryRecordedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(recipeActivatedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(recipeModifiedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(stationOfflineEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(stationOnlineEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "-1", "0", "-1", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "0", "1", "0", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "1", "4", "1", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "2", "2", "2", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "3", "2", "3", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "4", "2", "4", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "5", "2", "5", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "6", "1", "6", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "7", "2", "7", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "8", "2", "8", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "9", "2", "9", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "10", "3", "10", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "11", "3", "11", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(stationParametersModifiedEvent.Handle(ParameterSet("SDSH000003", "制程设备", "12", "2", "12", "1000", "0", "60", "3600", "4", "1", "5", "0", "0"))));
_cfxHelper.PublishEvent(new CFXEnvelope(unitsArrivedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(workStartedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageStartedEvent.Handle("PreHeatOven", 1)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStagePausedEvent.Handle("PreHeatOven", 1)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageResumedEvent.Handle("PreHeatOven", 1)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageCompletedEvent.Handle("PreHeatOven", 1)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageStartedEvent.Handle("PreCureOven", 2)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStagePausedEvent.Handle("PreCureOven", 2)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageResumedEvent.Handle("PreCureOven", 2)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageCompletedEvent.Handle("PreCureOven", 2)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageStartedEvent.Handle("CureOven", 3)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStagePausedEvent.Handle("CureOven", 3)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageResumedEvent.Handle("CureOven", 3)));
_cfxHelper.PublishEvent(new CFXEnvelope(workStageCompletedEvent.Handle("CureOven", 3)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageStartedEvent.Handle("PreHeatOven", 1)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStagePausedEvent.Handle("PreHeatOven", 1)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageResumedEvent.Handle("PreHeatOven", 1)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageCompletedEvent.Handle("PreHeatOven", 1)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageStartedEvent.Handle("PreCureOven", 2)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStagePausedEvent.Handle("PreCureOven", 2)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageResumedEvent.Handle("PreCureOven", 2)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageCompletedEvent.Handle("PreCureOven", 2)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageStartedEvent.Handle("PreHeatOven", 1)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStagePausedEvent.Handle("PreHeatOven", 1)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageResumedEvent.Handle("PreHeatOven", 1)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageCompletedEvent.Handle("PreHeatOven", 1)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageStartedEvent.Handle("PreCureOven", 2)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStagePausedEvent.Handle("PreCureOven", 2)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageResumedEvent.Handle("PreCureOven", 2)));
//_cfxHelper.PublishEvent(new CFXEnvelope(workStageCompletedEvent.Handle("PreCureOven", 2)));
_cfxHelper.PublishEvent(new CFXEnvelope(workCompletedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(unitsDepartedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(unitsProcessedEvent.Handle()));
_cfxHelper.PublishEvent(new CFXEnvelope(endpointShuttingDownEvent.Handle("CFX.A00.SDSH000003")));
_cfxHelper.SendValidateUnitsRequest("amqp://127.0.0.1:8888", "inline-control");
}
///
/// stationParameters参数设置
///
public List ParameterSet(
string interfaceID,
string equipType,
string status,
string light,
string statusCode,
string passQty,
string failQty,
string cycleTime,
string runningTime,
string waitingTime,
string selfCheck,
string inputQty,
string errorCnt,
string errorTimes
)
{
return new List()
{
new GenericParameter()
{
Name = "InterfaceID",
Value = interfaceID
},
new GenericParameter()
{
Name = "EquipType",
Value = equipType
},
new GenericParameter()
{
Name = "Status",
Value = status
},
new GenericParameter()
{
Name = "Light",
Value = light
},
new GenericParameter()
{
Name = "StatusCode",
Value = statusCode
},
new GenericParameter()
{
Name = "PassQty",
Value = passQty
},
new GenericParameter()
{
Name = "FailQty",
Value = failQty
},
new GenericParameter()
{
Name = "CycleTime",
Value = cycleTime
},
new GenericParameter()
{
Name = "RunningTime",
Value = runningTime
},
new GenericParameter()
{
Name = "WaitingTime",
Value = waitingTime
},
new GenericParameter()
{
Name = "SelfCheck",
Value = selfCheck
},
new GenericParameter()
{
Name = "InputQty",
Value = inputQty
},
new GenericParameter()
{
Name = "ErrorCnt",
Value = errorCnt
},
new GenericParameter()
{
Name = "ErrorTimes",
Value = errorTimes
},
};
}
}
}