You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

1.5 KiB

classDiagram
    
    %% 孵育盘状态管理器
    class IncubationPlateStateMgrService {
        + IncubationSubTank getOneExpiredPlate() // 获取一个孵育完成的插槽
        + IncubatorPos takeOneIncubationIDLEPos() // 获取空闲的插槽位置
    }
    
    %% 孵育盘
    class IncubationPlate {
        
    }
    
    %% 孵育盘反应板插槽
    class IncubationSubTank {
        
    }
    
    %% 插槽位置
    class IncubatorPos {
        
    }
    
    %% 插槽状态
    class IncubationSubTankState {
        EMPTY,//空
        RESERVED,//预定
        WAITING_FOR_DROP,//等待滴液
        INCUBATING, //孵育中
        INCUBATION_COMPLETE, //孵育完成
        ERROR,//错误
    }
    <<enumeration>> IncubationSubTankState
    
    IncubationSubTank "1" --> "1" IncubatorPos
    IncubationSubTank "1" --> "1" IncubationSubTankState
    IncubationPlate "1" --> "20" IncubationSubTank
    IncubationPlateStateMgrService --> IncubationPlate
---
title: 孵育盘槽位状态变更图
---
stateDiagram-v2
    [*] --> EMPTY
    RESERVED --> INCUBATING: startIncubating
    INCUBATING --> INCUBATION_COMPLETE: scheduled_timeout[remainTimeSec < 0]
    %% 当找到一个空闲的槽位时将其状态置为预留
    EMPTY --> RESERVED: takeOneIncubationIDLEPos
    INCUBATION_COMPLETE --> EMPTY: reset
    RESERVED --> EMPTY: reset
    INCUBATING --> EMPTY: reset
classDiagram
    
    %% 项目上下文管理器
    class ProjectContextMgrService {
        
    }