public virtual void start(SCApplication _app) { scApp = _app; reportBLL = _app.ReportBLL; lineBLL = _app.LineBLL; line = scApp.getEQObjCacheManager().getLine(); line.addEventHandler(nameof(LineService), nameof(line.Currnet_Park_Type), PublishLineInfo); line.addEventHandler(nameof(LineService), nameof(line.Currnet_Cycle_Type), PublishLineInfo); line.addEventHandler(nameof(LineService), nameof(line.Secs_Link_Stat), PublishLineInfo); line.addEventHandler(nameof(LineService), nameof(line.Redis_Link_Stat), PublishLineInfo); line.addEventHandler(nameof(LineService), nameof(line.DetectionSystemExist), PublishLineInfo); line.addEventHandler(nameof(LineService), nameof(line.IsEarthquakeHappend), PublishLineInfo); line.addEventHandler(nameof(LineService), nameof(line.IsAlarmHappened), PublishLineInfo); line.addEventHandler(nameof(LineService), nameof(line.HasSeriousAlarmHappend), CheckLightAndBuzzer); line.addEventHandler(nameof(LineService), nameof(line.HasWarningHappend), CheckLightAndBuzzer); //line.addEventHandler(nameof(LineService), nameof(line.CurrntVehicleModeAutoRemoteCount), PublishLineInfo); //line.addEventHandler(nameof(LineService), nameof(line.CurrntVehicleModeAutoLoaclCount), PublishLineInfo); //line.addEventHandler(nameof(LineService), nameof(line.CurrntVehicleStatusIdelCount), PublishLineInfo); //line.addEventHandler(nameof(LineService), nameof(line.CurrntVehicleStatusErrorCount), PublishLineInfo); //line.addEventHandler(nameof(LineService), nameof(line.CurrntCSTStatueTransferCount), PublishLineInfo); //line.addEventHandler(nameof(LineService), nameof(line.CurrntCSTStatueWaitingCount), PublishLineInfo); //line.addEventHandler(nameof(LineService), nameof(line.CurrntHostCommandTransferStatueAssignedCount), PublishLineInfo); //line.addEventHandler(nameof(LineService), nameof(line.CurrntHostCommandTransferStatueWaitingCounr), PublishLineInfo); line.LineStatusChange += Line_LineStatusChange; line.LongTimeNoCommuncation += Line_LongTimeNoCommuncation; line.TimerActionStart(); //Section 的事務處理 List <ASECTION> sections = scApp.SectionBLL.cache.GetSections(); foreach (ASECTION section in sections) { section.VehicleLeave += SectionVehicleLeave; } List <AADDRESS> addresses = scApp.AddressesBLL.cache.GetAddresses(); foreach (AADDRESS address in addresses) { address.VehicleRelease += AddressVehicleRelease; } var commonInfo = scApp.getEQObjCacheManager().CommonInfo; commonInfo.addEventHandler(nameof(LineService), BCFUtility.getPropertyName(() => commonInfo.MPCTipMsgList), PublishTipMessageInfo); }