Files
2026-04-16 06:25:36 +03:00

699 B

Flow: Hardware Check

flowchart TD
    Start([POST /resources/check]) --> GetUser[AuthService.GetCurrentUser]
    GetUser --> CheckNull{User null?}
    CheckNull -->|Yes| Unauth[401 Unauthorized]
    CheckNull -->|No| CheckHW[UserService.CheckHardwareHash]
    CheckHW --> HasHW{User has stored hardware?}
    HasHW -->|No - first time| StoreHW[Store hardware string in DB]
    StoreHW --> UpdateLogin[Update last_login]
    UpdateLogin --> ReturnHash([Return hwHash])
    HasHW -->|Yes| CompareHash{Hashes match?}
    CompareHash -->|Yes| UpdateLogin2[Update last_login]
    UpdateLogin2 --> ReturnHash2([Return hwHash])
    CompareHash -->|No| Mismatch([409: HardwareIdMismatch])