import { IDictResponse } from "../core/IDictResponse"; import { IGzzdLineResponse } from "./IGzzdLineResponse"; import _ from "lodash"; export interface IGzzdBillResponse { whoBuild: number; userIndx: number; billIndx: number; gzzdMain: number; userMain: number; //用户ID,唯一 userExid: number; // acnoMain: number; acnoText: string; holdFrom: number; dataGUID: string; dataStat: number; dataHide: number; dataOrdr: number; dataFrom: number; dataType: number; dataDate: number; dataTime: number; createBy: string; createAt: number; updateBy: string; updateAt: number; deleteBy: string; deleteAt: number; beShould: number; //#应发合计 beDeduct: number; //#应扣合计 beActual: number; //#实发合计 userType: number; //#人员类型 userZwlv: number; //#职务级别 userZwlx: number; //#职务名称 workCode: string; //工号 userCode: string; userName: string; userIdcd: string; unitMain: number; unitNamf: string; userFrom: number; acnoYhzh: string; acnoKhyh: string; acnoZhmc: string; acnoLiha: string; userTypeText: string; //#人员类型 userZwlvText: string; //#职务级别 userZwlxText: string; //#职务名称 listTypeText: string; //人员类型 例 ,7040331730321485,7040331730321489 listLine: IGzzdLineResponse[]; listType: IDictResponse[]; //虚拟字段 userCount: number; taskName: string; flList: IGzzdBillResponse[]; mxflList: IGzzdBillResponse[]; fields: string[]; //列数据 fieldy: string[]; //列数据.原 kjndKJQJ: number; gzzdNdqj: string; //2023年8月 gzjgMain: number; gzzdGzbh: number; //工资单号 gsndGsqj: number; parentID: number; deptMain: number; deptText: string; deptName: string; dataRowTag: boolean; //数据行 parentsd: string; //上级部门编码 id相加 datasd: string; // deptFull: string; //编码链 deptLevl: number; //级次 isLasted: number; //是否底级 dataLevl: number; //数据级次,区分是单位级(行)、总部级、或者人员级数据 colIndex: number; //报表工资栏目显示起始位置 holdType: number; //#待扣设置 } export class TGzzdBillResponse implements IGzzdBillResponse { whoBuild: number = 0; userIndx: number = 0; billIndx: number = 0; gzzdMain: number = 0; userMain: number = 0; userExid: number = 0; acnoMain: number = 0; acnoText: string = ""; holdFrom: number = 0; dataGUID: string = ""; dataStat: number = 1; dataHide: number = 0; dataOrdr: number = 0; dataFrom: number = 0; dataType: number = 0; dataDate: number = 0; dataTime: number = 0; createBy: string = ""; createAt: number = 0; updateBy: string = ""; updateAt: number = 0; deleteBy: string = ""; deleteAt: number = 0; userFrom: number = 0; beShould: number = 0; beDeduct: number = 0; beActual: number = 0; userType: number = 0; userZwlv: number = 0; userZwlx: number = 0; workCode: string = ""; userCode: string = ""; userName: string = ""; userIdcd: string = ""; unitMain: number = 0; unitNamf: string = ""; acnoYhzh: string = ""; acnoKhyh: string = ""; acnoZhmc: string = ""; acnoLiha: string = ""; userTypeText: string = ""; userZwlvText: string = ""; userZwlxText: string = ""; listTypeText: string = ""; userCount: number = 0; taskName: string = ""; listLine: IGzzdLineResponse[] = []; listType: IDictResponse[] = []; flList: IGzzdBillResponse[] = []; mxflList: IGzzdBillResponse[] = []; fields: string[] = []; fieldy: string[] = []; kjndKJQJ: number = 0; gzzdNdqj: string = ""; gzjgMain: number = 0; gzzdGzbh: number = 0; gsndGsqj: number = 0; parentID: number = 0; deptMain: number = 0; deptText: string = ""; deptName: string = ""; dataRowTag: boolean = false; parentsd: string = ""; datasd: string = ""; deptFull: string = ""; deptLevl: number = 0; isLasted: number = 0; dataLevl: number = 0; colIndex: number = 0; holdType: number = 0; constructor(data: Partial = {}) { if (data) { _.merge(this, _.pick(data, Object.keys(this))); } } }