feat: Add real-time IO/interlock updates, HW status display, and history page

- Implement real-time IO value updates via IOValueChanged event
- Add interlock toggle and real-time interlock change events
- Fix ToggleLight to check return value of DIO.SetRoomLight
- Add HW status display in Footer matching WinForms HWState
- Implement GetHWStatus API and 250ms broadcast interval
- Create HistoryPage React component for work history viewing
- Add GetHistoryData API for database queries
- Add date range selection, search, filter, and CSV export
- Add History button in Header navigation
- Add PickerMoveDialog component for manage operations
- Fix DataSet column names (idx, PRNATTACH, PRNVALID, qtymax)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-27 00:14:47 +09:00
parent bb67d04d90
commit 3bd35ad852
19 changed files with 2917 additions and 81 deletions

View File

@@ -99,6 +99,56 @@ declare global {
InitializeDevice(): Promise<string>;
GetInitializeStatus(): Promise<string>;
GetProcessedData(): Promise<string>;
// Vision control methods
CameraConnect(): Promise<string>;
CameraDisconnect(): Promise<string>;
CameraGetImage(): Promise<string>;
CameraLiveView(): Promise<string>;
CameraReadTest(): Promise<string>;
KeyenceTriggerOn(): Promise<string>;
KeyenceTriggerOff(): Promise<string>;
KeyenceGetImage(): Promise<string>;
KeyenceSaveImage(): Promise<string>;
// Light, Manual Print, Cancel Job
ToggleLight(): Promise<string>;
ExecuteManualPrint(sid: string, venderLot: string, qty: string, mfg: string, rid: string, spy: string, partNo: string, printer: string, count: number): Promise<string>;
CancelJob(): Promise<string>;
// Manage, Manual, Log Viewer
OpenManage(): Promise<string>;
CloseManage(): Promise<string>;
OpenManual(): Promise<string>;
OpenLogViewer(): Promise<string>;
// Folder operations
OpenProgramFolder(): Promise<string>;
OpenLogFolder(): Promise<string>;
OpenScreenshotFolder(): Promise<string>;
OpenSavedDataFolder(): Promise<string>;
// Picker Move methods
GetPickerStatus(): Promise<string>;
PickerMoveLeft(): Promise<string>;
PickerMoveLeftWait(): Promise<string>;
PickerMoveCenter(): Promise<string>;
PickerMoveRightWait(): Promise<string>;
PickerMoveRight(): Promise<string>;
PickerJogStart(direction: string): Promise<string>;
PickerJogStop(): Promise<string>;
PickerStop(): Promise<string>;
CancelVisionValidation(side: string): Promise<string>;
PickerManagePosition(side: string): Promise<string>;
PickerManageReturn(): Promise<string>;
PickerZHome(): Promise<string>;
PickerZZero(): Promise<string>;
PickerTestPrint(side: string): Promise<string>;
CanCloseManage(): Promise<string>;
// Interlock methods
ToggleInterlock(axisIndex: number, lockIndex: number): Promise<string>;
GetInterlockList(): Promise<string>;
// HW Status methods
GetHWStatus(): Promise<string>;
// History dialog
OpenHistory(): Promise<string>;
// History data
GetHistoryData(startDate: string, endDate: string, search: string): Promise<string>;
}
};
addEventListener(type: string, listener: (event: any) => void): void;