import _ from "lodash"; import type { IHolderHistoryCapitalResponse } from "./IHolderHistoryCapitalResponse"; import type { IHolderHistoryItemResponse } from "./IHolderHistoryItemResponse"; export interface IHolderHistoryResponse { holderHistoryId: number; unitName: string; quantity: number; uploader: string; uploadDate: number; /** * 虚拟字段 */ holderHistoryItems: IHolderHistoryItemResponse[]; holderHistoryCapitals: IHolderHistoryCapitalResponse[]; } export class THolderHistoryResponse implements IHolderHistoryResponse { holderHistoryId: number = 0; unitName: string = ""; quantity: number = 0; uploader: string = ""; uploadDate: number = 0; holderHistoryItems: IHolderHistoryItemResponse[] = []; holderHistoryCapitals: IHolderHistoryCapitalResponse[] = []; constructor(data: Partial = {}) { if (data) { _.merge(this, _.pick(data, Object.keys(this))); } } }