import { construct, destruct } from "@aximario/json-tree"; import _ from "lodash"; export interface IBillCnfgResponse { whoBuild: number; userIndx: number; cnfgIndx: number; parentID: number; dataStat: number; dataType: number; dataHide: number; dataOrdr: number; dataFrom: number; dataDate: number; dataTime: number; mastName: string; mastGUID: string; userMain: number; createBy: string; createAt: number; updateBy: string; updateAt: number; deleteBy: string; deleteAt: number; queuesBy: number; /** 唯一标识 */ entityID: string; /** 票据类型(字典) */ billType: number; typeText: string; /** 银行类型(字典) */ bankType: number; bankText: string; /** 打印模板 */ wldyPage: number; cnfgCode: string; /** 配置名称 */ cnfgName: string; cnfgUses: string; cnfgMemo: string; /** 票号长度 */ codeSize: number; /** 票据张数 */ billSize: number; /** 票据号码段 */ startVal: string; /** 票据号码段 */ endedVal: string; /** 打印模板 */ pageName: string; /** 打印模板.关联附件 */ sysPathc: number; children: IBillCnfgResponse[]; } export class TBillCnfgResponse implements IBillCnfgResponse { whoBuild: number = 0; userIndx: number = 0; cnfgIndx: number = 0; parentID: number = 0; dataStat: number = 0; dataType: number = 0; dataHide: number = 0; dataOrdr: number = 0; dataFrom: number = 0; dataDate: number = 0; dataTime: number = 0; mastName: string = ""; mastGUID: string = ""; userMain: number = 0; createBy: string = ""; createAt: number = 0; updateBy: string = ""; updateAt: number = 0; deleteBy: string = ""; deleteAt: number = 0; queuesBy: number = 0; entityID: string = ""; billType: number = 0; typeText: string = ""; bankType: number = 0; bankText: string = ""; wldyPage: number = 0; cnfgCode: string = ""; cnfgName: string = ""; cnfgUses: string = ""; cnfgMemo: string = ""; codeSize: number = 0; billSize: number = 0; startVal: string = ""; endedVal: string = ""; pageName: string = ""; sysPathc: number = 0; children: IBillCnfgResponse[] = []; static toTree(listCnfg: IBillCnfgResponse[]) { return construct(_.cloneDeep(listCnfg), { id: "cnfgIndx", pid: "parentID", children: "children" }) as IBillCnfgResponse[]; } static toList(treeCnfg: IBillCnfgResponse[]) { return destruct(_.cloneDeep(treeCnfg), { id: "cnfgIndx", pid: "parentID", children: "children" }) as IBillCnfgResponse[]; } }