我想这个问题很典型,但是从来没有遇到过这样的问题。因此,我有2个实体,状态为Hub
和Hub
。
在客户端,我想接收Hub
并且它是当前状态,或者Hub
是它在不同情况下的状态日志。
以下是实体:
@Entity('hubs')
export class Hub {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column()
port: number;
@Column()
limit: number;
@Column()
enabled: boolean;
@Column()
isOnline: boolean;
@Column("simple-json")
slots: { free: number, total: number, freePercent: number};
@OneToMany(type => HubStatus, statusLog => statusLog.hub, { cascade: true })
statusLog: Array<HubStatus>;
@UpdateDateColumn()
updatedAt: Date;
}
@Entity('hub-status')
export class HubStatus {
@PrimaryGeneratedColumn()
id: string;
@Column()
isOnline: boolean;
@Column("simple-json")
slots: { free: number, total: number, freePercent: number};
@ManyToOne(type => Hub, hub => hub.statusLog)
hub: Hub;
@CreateDateColumn()
createdAt: Date;
}
我应该复制
@Column()
isOnline: boolean;
@Column("simple-json")
slots: { free: number, total: number, freePercent: number};
进入Hub
实体,例如,每次我获得{{时,都将最后状态存储在Hub
和HubStatus
中,或者从hub-status
查询最后状态1}}实体并将其添加到我的DTO界面?
DTO界面:
Hub
每个集线器的export interface IHub {
id: string;
ip: string;
port: number;
limit?: number;
slots?: {
free: number;
total: number;
freePercent: number;
},
enabled: boolean;
isOnline?:boolean;
}
数组可以达到259200个日志实体