felicity-lims/webapp/models/reflex.ts

67 lines
1.5 KiB
TypeScript
Raw Normal View History

2023-04-10 09:29:10 +08:00
import { IAnalysisService, ISampleType } from './analysis';
import { IUser } from './auth';
2022-02-06 23:56:47 +08:00
export interface IReflexRule {
2023-04-10 09:29:10 +08:00
uid?: string;
name?: string;
description?: string;
reflexActions: IReflexAction[];
createdByUid?: string;
createdBy?: IUser;
createdAt?: string;
}
2022-02-06 23:56:47 +08:00
export interface IReflexBrainCriteria {
2023-04-10 09:29:10 +08:00
analysisUid?: string;
analysis?: IAnalysisService;
reflexBrainUid?: string;
reflexBrain?: IReflexBrain;
operator?: string;
value?: number;
2022-02-06 23:56:47 +08:00
}
export interface IReflexBrainAddition {
2023-04-10 09:29:10 +08:00
analysisUid?: string;
analysis?: IAnalysisService;
reflexBrainUid?: string;
reflexBrain?: IReflexBrain;
count?: number;
2022-02-06 23:56:47 +08:00
}
export interface IReflexBrainFinal {
2023-04-10 09:29:10 +08:00
analysisUid?: string;
analysis?: IAnalysisService;
reflexBrainUid?: string;
reflexBrain?: IReflexBrain;
value?: number;
2022-02-06 23:56:47 +08:00
}
export interface IReflexBrain {
2023-04-10 09:29:10 +08:00
uid?: string;
reflexActionUid?: string;
reflexAction?: IReflexBrain;
description?: string;
analysesValues?: IReflexBrainCriteria[];
addNew?: IReflexBrainAddition[];
finalise?: IReflexBrainFinal[];
createdByUid?: string;
createdBy?: IUser;
createdAt?: string;
2022-02-06 23:56:47 +08:00
}
export interface IReflexAction {
2023-04-10 09:29:10 +08:00
uid?: string;
level?: number;
description?: string;
analysisUid?: string;
analyses?: IAnalysisService[];
sampleTypeUid?: string;
sampleType?: ISampleType;
reflexRuleUid?: string;
reflexRule?: IReflexRule;
brains?: IReflexBrain[];
createdByUid?: string;
createdBy?: IUser;
createdAt?: string;
}