import { construct, destruct } from "@aximario/json-tree"; import { IBaseResponse, TBaseResponse } from "../base/IBaseResponse"; import type { IPzptItemResponse } from "./IPzptItemResponse"; import type { IPzptTypeResponse } from "./IPzptTypeResponse"; export interface IPzptK8kmResponse extends IBaseResponse { c0pzType: number; createAt: number; createBy: string; dataDate: number; dataFrom: number; dataGUID: string; dataHide: number; dataLevl: number; dataOrdr: number; dataStat: number; dataTime: number; deleteAt: number; deleteBy: string; entityID: string; fromText: string; fromukkm: number; hashCode: number; isCommon: number; isLasted: number; itemSize: number; itemText: string; jdForbid: number; k0kmKmid: number; k0kmKmmc: string; k3kmKmbm: string; k8kmFrom: number; k8kmFull: string; k8kmHsbz: string; k8kmJldw: string; k8kmKJND: number; k8kmKmbm: string; k8kmKmid: number; k8kmKmlb: string; k8kmKmmc: string; k8kmTbkm: string; k8kmThis: string; k8kmYefx: string; k8kmZbxs: string; kjndKJQJ: number; mastGUID: string; mastName: string; metaData: string; newAllow: number; parentCD: string; parentID: number; queuesBy: number; sourceID: number; sourceND: number; typeSize: number; typeText: string; ukkmSize: number; updateAt: number; updateBy: string; userIndx: number; usesCash: number; usesCyxm: number; usesK1km: string; usesK2km: string; usesK4km: string; usesL7km: string; usesL8km: string; usesL9km: string; whoBuild: number; withJdbz: number; zzkmKmbm: string; zzkmKmmc: string; k8kmQcje: number; k8kmYjje: number; k8kmYdje: number; k8kmLjje: number; k8kmLdje: number; k8kmQmje: number; listItem: IPzptItemResponse[]; listType: IPzptTypeResponse[]; isChecked: boolean; } export class TPzptK8kmResponse extends TBaseResponse implements IPzptK8kmResponse { c0pzType: number = 0; createAt: number = 0; createBy: string = ""; dataDate: number = 0; dataFrom: number = 0; dataGUID: string = ""; dataHide: number = 0; dataLevl: number = 0; dataOrdr: number = 0; dataStat: number = 0; dataTime: number = 0; deleteAt: number = 0; deleteBy: string = ""; entityID: string = ""; fromText: string = ""; fromukkm: number = 0; hashCode: number = 0; isCommon: number = 0; isLasted: number = 0; itemSize: number = 0; itemText: string = ""; jdForbid: number = 0; k0kmKmid: number = 0; k0kmKmmc: string = ""; k3kmKmbm: string = ""; k8kmFrom: number = 0; k8kmFull: string = ""; k8kmHsbz: string = ""; k8kmJldw: string = ""; k8kmKJND: number = 0; k8kmKmbm: string = ""; k8kmKmid: number = 0; k8kmKmlb: string = ""; k8kmKmmc: string = ""; k8kmTbkm: string = ""; k8kmThis: string = ""; k8kmYefx: string = ""; k8kmZbxs: string = ""; kjndKJQJ: number = 0; mastGUID: string = ""; mastName: string = ""; metaData: string = ""; newAllow: number = 0; parentCD: string = ""; parentID: number = 0; queuesBy: number = 0; sourceID: number = 0; sourceND: number = 0; typeSize: number = 0; typeText: string = ""; ukkmSize: number = 0; updateAt: number = 0; updateBy: string = ""; userIndx: number = 0; usesCash: number = 0; usesCyxm: number = 0; usesK1km: string = ""; usesK2km: string = ""; usesK4km: string = ""; usesL7km: string = ""; usesL8km: string = ""; usesL9km: string = ""; whoBuild: number = 0; withJdbz: number = 0; zzkmKmbm: string = ""; zzkmKmmc: string = ""; k8kmQcje: number = 0; k8kmYjje: number = 0; k8kmYdje: number = 0; k8kmLjje: number = 0; k8kmLdje: number = 0; k8kmQmje: number = 0; listItem: IPzptItemResponse[] = []; listType: IPzptTypeResponse[] = []; isChecked: boolean = false; /** * 将列表转换为树形结构 * @param listData 列表数据 * @returns树形结构数据 */ static toTree(listData: IPzptK8kmResponse[]) { return construct(listData, { id: "k8kmKmid", pid: "parentID", children: "children" }) as IPzptK8kmResponse[]; } /** * 将树形结构转换为列表 * @param treeData 树形结构数据 * @returns列表数据 */ static toList(treeData: IPzptK8kmResponse[]) { return destruct(treeData, { id: "k8kmKmid", pid: "parentID", children: "children" }) as IPzptK8kmResponse[]; } }