Files
ChunilENG/Assets/Scripts/EventConnecter.cs

154 lines
8.3 KiB
C#
Raw Normal View History

2025-02-20 09:59:37 +09:00
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using WI;
namespace CHN
{
[DefaultExecutionOrder(int.MaxValue)]
public class EventConnecter : Initializer
{
private Building building;
private OrbitalController controller;
public override void AfterAwake()
{
building = FindSingle<Building>();
controller = FindSingle<OrbitalController>();
var optionManager = FindSingle<OptionManager>();
var libraryManager = FindSingle<LibraryManager>();
var mqttManager = FindSingle<MQTT>();
var httpManager = FindSingle<HTTPRequester>();
var machineKPIManager = FindSingle<MachineKPIManager>();
var completeTimeManager = FindSingle<CompleteTimeAlarmManager>();
var productionStatusManager = FindSingle<ProductionStatusManager>();
2025-03-10 16:42:23 +09:00
var workConditionsManager = FindSingle<WorkConditionsManager>();
2025-02-20 09:59:37 +09:00
var topCanvas = FindSingle<Canvas_Top>();
var rightCanvas = FindSingle<Canvas_Right>();
var popupCanvas = FindSingle<Canvas_Popup>();
var datamanager = FindSingle<DataManager>();
var raycaster = FindSingle<CHNRaycaster>();
//building.onSettingBuildingComplete += topCanvas.panel_toptoolbar.SetChangeViewState;
topCanvas.panel_toptoolbar.GetFloor = building.GetFloor;
2025-02-24 18:48:14 +09:00
topCanvas.panel_toptoolbar.onClickAlarms += popupCanvas.panel_completealramhistory.SetActive;
topCanvas.panel_toptoolbar.onClickAlarms += popupCanvas.panel_library.Close;
2025-02-20 09:59:37 +09:00
//topCanvas.panel_toptoolbar.onChangeView += ChangeCameraView;
topCanvas.panel_toptoolbar.onClickScreenInitialization += SceneReLoad;
topCanvas.panel_toptoolbar.onClickProductionProgress += popupCanvas.panel_injectionproduction.Open;
topCanvas.panel_toptoolbar.onClickAssemblyProgress += popupCanvas.panel_assemblyproduction.Open;
topCanvas.panel_toptoolbar.onClickSetting += popupCanvas.panel_menu.Open;
topCanvas.panel_toptoolbar.onClickLibrary += popupCanvas.panel_library.ActiveLibrary;
topCanvas.panel_toptoolbar.onClickLibrary += popupCanvas.panel_completealramhistory.Close;
rightCanvas.panel_floorcontrol.onValueChanged += building.SetTopFloor;
//rightCanvas.panel_floorcontrol.onValueChanged += topCanvas.panel_toptoolbar.SetChangeViewState;
popupCanvas.panel_library.onClickLabelButton += libraryManager.LibraryFiltering;
popupCanvas.panel_protocolsetting.onUpdateMachine += libraryManager.MatchingMachine;
popupCanvas.panel_library.onClickLibraryButton += popupCanvas.MachineDashBoardOpenFromLibrary;
popupCanvas.panel_library.onClickLibraryButton += libraryManager.SetTargetPosToMachine;
2025-02-25 17:31:42 +09:00
popupCanvas.panel_library.onClickLibraryButton += libraryManager.ActivateMachinesHighlight;
2025-02-20 09:59:37 +09:00
popupCanvas.panel_library.onDeselectLibraryButton += popupCanvas.MachineDashBoardClose;
popupCanvas.panel_library.onClose += libraryManager.ResetAllMachinesHighLight;
popupCanvas.simpleView += datamanager.SimpleFiledChange;
popupCanvas.onClickSimple += datamanager.GetSimpleCompleteData;
popupCanvas.onClickDetail += datamanager.GetCompleteInfo;
popupCanvas.panel_completealramhistory.onCheckAlarmData += completeTimeManager.CheckCompleteTimeAlarm;
2025-02-24 18:48:14 +09:00
popupCanvas.panel_completealramhistory.onCheckAlarm += topCanvas.panel_toptoolbar.SetAlarmCount;
2025-02-20 09:59:37 +09:00
popupCanvas.ui_workanalysis.onClickWorkConditionAnalysis += popupCanvas.panel_workconditionanalysis.Open;
popupCanvas.ui_workanalysis.onClickWorkTimeAnalysis += popupCanvas.panel_worktimeanalysis.Open;
2025-03-10 16:42:23 +09:00
popupCanvas.panel_workconditionanalysis.onSearchData += httpManager.SearchWorkConditions;
popupCanvas.panel_workconditionanalysis.onChangedDropdownValue += workConditionsManager.ChangeMainChartData;
2025-03-11 10:23:44 +09:00
popupCanvas.panel_worktimeanalysis.onSearchData += httpManager.SearchWorkTime;
2025-02-20 09:59:37 +09:00
libraryManager.onUpdateMachineFilters += popupCanvas.panel_library.UpdateFileterList;
libraryManager.onLibraryFilterigComplete += popupCanvas.panel_library.AddLibrarayButtons;
libraryManager.onTargetSetting += controller.SetTargetPos;
datamanager.onSimpleInfo += popupCanvas.SimpleView;
datamanager.onCompleteInfo += popupCanvas.DetailView;
mqttManager.onMachineData += datamanager.MachineMatching;
mqttManager.onMachineData += completeTimeManager.SetCurrentData;
mqttManager.onMachineData += productionStatusManager.SetFloorProductionStatus;
productionStatusManager.onFirstFloorInfo += popupCanvas.panel_injectionproduction.SetProductionStatus;
productionStatusManager.onSecondFloorInfo += popupCanvas.panel_assemblyproduction.SetProductionStatus;
productionStatusManager.onActiveFirstBoard += popupCanvas.panel_injectionproduction.Open;
productionStatusManager.onActiveSecondBoard += popupCanvas.panel_assemblyproduction.Open;
completeTimeManager.onLoadData += popupCanvas.panel_completealramhistory.SetAlarmInfoItems;
completeTimeManager.onUnloadData += popupCanvas.panel_completealramhistory.SetAlarmInfoItems;
httpManager.onMachineKPIData += machineKPIManager.SetMachineKPI;
2025-03-10 16:42:23 +09:00
httpManager.onWorkConditionsfacilityData += popupCanvas.panel_workconditionanalysis.SetFacilityDropDown;
2025-03-11 10:23:44 +09:00
httpManager.onWorkConditionsfacilityData += popupCanvas.panel_worktimeanalysis.SetFacilityDropDown;
2025-03-10 16:42:23 +09:00
httpManager.onSendWorkConditionsData += workConditionsManager.SetWorkConditionsData;
workConditionsManager.onSendChartLabels += popupCanvas.panel_workconditionanalysis.SetChartLabels;
workConditionsManager.onCompleteLoadData += popupCanvas.panel_workconditionanalysis.SetWorkConditionsData;
workConditionsManager.onSendMainChartData += popupCanvas.panel_workconditionanalysis.SetChartData;
workConditionsManager.onSendSubChartData += popupCanvas.panel_workconditionanalysis.SetSubChartDatas;
2025-02-20 09:59:37 +09:00
raycaster.onLeftClickMachine += popupCanvas.MachineDashBoardOpenFromOnClick;
raycaster.onRightClickMachine += popupCanvas.ui_workanalysis.SetAnimation;
raycaster.onRightClick += popupCanvas.ui_workanalysis.DeActive;
raycaster.onClickProductionBoard += productionStatusManager.ActiveBoardToType;
optionManager.onCompletedLoadOption += popupCanvas.panel_controlsetting.InitOptionSetting;
optionManager.onCompletedLoadOption += popupCanvas.panel_protocolsetting.InitOptionSetting;
optionManager.LoadOption();
}
public override void AfterStart()
{
controller.onCameraMove += building.UnderCeilingControl;
}
private void SceneReLoad()
{
controller.option.isFirstPersonView = false;
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
}
private void ChangeCameraView(ViewMode mode)
{
controller.SetViewMode(mode);
switch (mode)
{
case ViewMode.PerspectiveView:
building.SetAllFloorExternalState();
break;
case ViewMode.FirstPersonView:
building.SetCurrentFloorInternalState();
var raycaster = FindSingle<CHNRaycaster>();
if (raycaster.hitFloorIndex != building.currentFloor.floorIndex)
{
var slider = FindSingle<Canvas_Right>().panel_floorcontrol;
slider.ChangeValueFromOutside(raycaster.hitFloorIndex);
}
var pos = controller.option.target.position;
pos.y -= controller.yUpPos;
if (building.currentFloor.FloorContainsPoint(pos))
break;
var startPos = building.currentFloor.StartPoint.position;
controller.option.target.position = startPos;
controller.nextPosition = startPos;
break;
}
}
}
}