2023-01-02 00:04:52 +08:00
|
|
|
import { ISample } from "./analysis"
|
|
|
|
import { IUser } from "./auth"
|
|
|
|
|
|
|
|
export interface IStoreRoom {
|
|
|
|
uid?: number;
|
|
|
|
name?: String;
|
|
|
|
description?: String;
|
2023-01-02 20:33:50 +08:00
|
|
|
createdAt?: Date;
|
|
|
|
createdByUid?: number;
|
|
|
|
createdBy?: IUser;
|
|
|
|
updatedAt?: Date;
|
|
|
|
updatedByUid?: number;
|
|
|
|
updatedBy?: IUser;
|
|
|
|
children?: IStorageLocation[];
|
|
|
|
tag?: string;
|
|
|
|
isOpen?: boolean;
|
|
|
|
isFolder?: boolean;
|
2023-01-02 00:04:52 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export interface IStorageLocation {
|
|
|
|
uid?: number;
|
|
|
|
name?: String;
|
|
|
|
description?: String;
|
2023-01-02 20:33:50 +08:00
|
|
|
storeRoomUid?: number;
|
|
|
|
storeRoom?: IStoreRoom;
|
|
|
|
createdAt?: Date;
|
|
|
|
createdByUid?: number;
|
|
|
|
createdBy?: IUser;
|
|
|
|
updatedAt?: Date;
|
|
|
|
updatedByUid?: number;
|
|
|
|
updatedBy?: IUser;
|
|
|
|
children?: IStorageSection[],
|
|
|
|
tag?: string,
|
|
|
|
isOpen?: boolean;
|
|
|
|
isFolder?: boolean;
|
2023-01-02 00:04:52 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export interface IStorageSection {
|
|
|
|
uid?: number;
|
|
|
|
name?: String;
|
|
|
|
description?: String;
|
2023-01-02 20:33:50 +08:00
|
|
|
storageLocationUid?: number;
|
|
|
|
storageLocation?: IStorageLocation;
|
|
|
|
createdAt?: Date;
|
|
|
|
createdByUid?: number;
|
|
|
|
createdBy?: IUser;
|
|
|
|
updatedAt?: Date;
|
|
|
|
updatedByUid?: number;
|
|
|
|
updatedBy?: IUser;
|
|
|
|
children?: IStorageContainer[],
|
|
|
|
tag?: string,
|
|
|
|
isOpen?: boolean;
|
|
|
|
isFolder?: boolean;
|
2023-01-02 00:04:52 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export interface IStorageContainer {
|
|
|
|
uid?: number;
|
|
|
|
name?: String;
|
|
|
|
description?: String;
|
2023-01-02 20:33:50 +08:00
|
|
|
storageSectionUid?: number;
|
|
|
|
storageSection?: IStorageSection;
|
2023-01-02 00:04:52 +08:00
|
|
|
grid?: boolean;
|
2023-01-02 20:33:50 +08:00
|
|
|
rowWise?: boolean;
|
2023-01-02 00:04:52 +08:00
|
|
|
cols?: number;
|
|
|
|
rows?: number;
|
|
|
|
slots?: number;
|
2023-01-02 20:33:50 +08:00
|
|
|
storageSlots?: IStorageSlot[];
|
2023-01-02 00:04:52 +08:00
|
|
|
samples?: ISample[];
|
2023-01-02 20:33:50 +08:00
|
|
|
createdAt?: Date;
|
|
|
|
createdByUid?: number;
|
|
|
|
createdBy?: IUser;
|
|
|
|
updatedAt?: Date;
|
|
|
|
updatedByUid?: number;
|
|
|
|
updatedBy?: IUser;
|
|
|
|
tag?: string,
|
|
|
|
children: IStorageSlot[],
|
|
|
|
isOpen?: boolean;
|
|
|
|
isFolder?: boolean;
|
2023-01-02 00:04:52 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export interface IStorageSlot {
|
|
|
|
uid?: number;
|
2023-01-02 20:33:50 +08:00
|
|
|
storageContainerUid?: number;
|
|
|
|
storageContainer?: IStorageContainer;
|
2023-01-02 00:04:52 +08:00
|
|
|
position?: String;
|
2023-01-02 20:33:50 +08:00
|
|
|
positionLabel?: String;
|
2023-01-03 02:12:00 +08:00
|
|
|
sample?: ISample;
|
2023-01-02 20:33:50 +08:00
|
|
|
createdAt?: Date;
|
|
|
|
createdByUid?: number;
|
|
|
|
createdBy?: IUser;
|
|
|
|
updatedAt?: Date;
|
|
|
|
updatedByUid?: number;
|
|
|
|
updatedBy?: IUser;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
interface IActivePath {
|
|
|
|
room?: number,
|
|
|
|
location?: number,
|
|
|
|
section?: number,
|
|
|
|
container?: number,
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ITreeData {
|
|
|
|
treeData: IStoreRoom[]
|
|
|
|
activePath: IActivePath,
|
|
|
|
activeTree: IStoreRoom | IStorageLocation | IStorageSection | IStorageContainer
|
2023-01-02 00:04:52 +08:00
|
|
|
}
|