export interface budgetInfoVO {
  /**
   * 预算ID
   */
  budgetId: string | number;

  /**
   * 项目ID
   */
  projectId: string | number;

  /**
   * 等同于项目ID，做唯一索引使用，在作废时此值要清空
   */
  approvedFlag: number;

  /**
   * 版本，新版本+1
   */
  budgetVersion: number;

  /**
   * 冗余，项目类别（1销售 2研发 3预投）
   */
  projectCategory: string;

  /**
   * 项目号
   */
  projectCode: string;

  /**
   * 项目名称
   */
  projectName: string;

  /**
   * 项目经理（市场预算表的项目经理，研发预算表中的编制），关联sys_user
   */
  managerId: string | number;

  /**
   * 项目经理姓名
   */
  managerName: string;

  /**
   * 产品经理，关联sys_user
   */
  productManagerId: string | number;

  /**
   * 产品经理姓名
   */
  productManagerName: string;

  /**
   * 审核(评审组长)ID，关联sys_user
   */
  approveUserId: string | number;

  /**
   * 审核(评审组长)姓名
   */
  approveUserName: string;

  /**
   * 合同额(元)
   */
  contractAmount: number;

  /**
   * 合同净额(元)
   */
  netContractAmount: number;

  /**
   * 预算成本(元)
   */
  budgetCost: number;

  /**
   * 预算毛利率，乘以100保存（如1%,保存1）
   */
  budgetRate: number;

  /**
   * 降成本后预算成本(元)
   */
  reduceBudgetCost: number;

  /**
   * 降成本后预算毛利率
   */
  reduceBudgetRate: number;

  /**
   * 项目预算期间
   */
  duringOperation: string;

  /**
   * 单位ID,关联base_unit_info
   */
  unitId: string | number;

  /**
   * 单位名称
   */
  unitName: string;

  /**
   * 是否出口（1是 0否）
   */
  exportFlag: string;

  /**
   * 预算状态(1暂存 2审批中 3可用)
   */
  budgetStatus: string;

  /**
   * 流程状态
   */
  flowStatus: string;

  /**
   * 合同ID(预留)
   */
  contractId: string | number;

  /**
   * 备注
   */
  remark: string;

  erpBudgetDetailList?: [];

  erpBudgetMaterialCostList?: [];

  erpBudgetLaborCostList?: [];

  erpBudgetInstallCostList?: [];

  erpBudgetTravelCostList?: [];

  erpBudgetOtherCostList?: [];

  erpRdBudgetEquipmentCostList?: [];

  erpRdBudgetMaterialCostList?: [];

  erpRdBudgetTravelCostList?: [];

  erpRdBudgetMeetingCostList?: [];

  erpRdBudgetExchangeCostList?: [];

  erpRdBudgetTechCostList?: [];

  erpRdBudgetLaborCostList?: [];

  erpRdBudgetLiteratureCostList?: [];

  erpRdBudgetTestingCostList?: [];

  erpRdBudgetOtherCostList?: [];
}

export interface budgetInfoForm extends BaseEntity {
  /**
   * 预算ID
   */
  budgetId?: string | number;

  /**
   * 项目ID
   */
  projectId?: string | number;

  /**
   * 等同于项目ID，做唯一索引使用，在作废时此值要清空
   */
  approvedFlag?: number;

  /**
   * 版本，新版本+1
   */
  budgetVersion?: number;

  /**
   * 冗余，项目类别（1销售 2研发 3预投）
   */
  projectCategory?: string;

  /**
   * 项目号
   */
  projectCode?: string;

  /**
   * 项目名称
   */
  projectName?: string;

  /**
   * 项目经理（市场预算表的项目经理，研发预算表中的编制），关联sys_user
   */
  managerId?: string | number;

  /**
   * 项目经理姓名
   */
  managerName?: string;

  /**
   * 产品经理，关联sys_user
   */
  productManagerId?: string | number;

  /**
   * 产品经理姓名
   */
  productManagerName?: string;

  /**
   * 审核(评审组长)ID，关联sys_user
   */
  approveUserId?: string | number;

  /**
   * 审核(评审组长)姓名
   */
  approveUserName?: string;

  /**
   * 合同额(元)
   */
  contractAmount?: number;

  /**
   * 合同净额(元)
   */
  netContractAmount?: number;

  /**
   * 预算成本(元)
   */
  budgetCost?: number;

  /**
   * 预算毛利率，乘以100保存（如1%,保存1）
   */
  budgetRate?: number;

  /**
   * 降成本后预算成本(元)
   */
  reduceBudgetCost?: number;

  /**
   * 降成本后预算毛利率
   */
  reduceBudgetRate?: number;

  /**
   * 项目预算期间
   */
  duringOperation?: string;

  /**
   * 单位ID,关联base_unit_info
   */
  unitId?: string | number;

  /**
   * 单位名称
   */
  unitName?: string;

  /**
   * 是否出口（1是 0否）
   */
  exportFlag?: string;

  /**
   * 预算状态(1暂存 2审批中 3可用)
   */
  budgetStatus?: string;

  /**
   * 流程状态
   */
  flowStatus?: string;

  /**
   * 合同ID(预留)
   */
  contractId?: string | number;

  /**
   * 备注
   */
  remark?: string;

  erpBudgetDetailList?: [];

  erpBudgetMaterialCostList?: [];

  erpBudgetLaborCostList?: [];

  erpBudgetInstallCostList?: [];

  erpBudgetTravelCostList?: [];

  erpBudgetOtherCostList?: [];

  toDeletedMaterialCostIdList?: [];

  toDeletedLaborCostIdList?: [];

  toDeletedInstallCostIdList?: [];

  toDeletedTravelCostIdList?: [];

  toDeletedOtherCostIdList?: [];

  erpRdBudgetEquipmentCostList?: [];

  erpRdBudgetMaterialCostList?: [];

  erpRdBudgetTravelCostList?: [];

  erpRdBudgetMeetingCostList?: [];

  erpRdBudgetExchangeCostList?: [];

  erpRdBudgetTechCostList?: [];

  erpRdBudgetLaborCostList?: [];

  erpRdBudgetLiteratureCostList?: [];

  erpRdBudgetTestingCostList?: [];

  erpRdBudgetOtherCostList?: [];

  toDeletedRdEquipmentCostIdList?: [];

  toDeletedRdMaterialCostIdList?: [];

  toDeletedRdTravelCostIdList?: [];

  toDeletedRdMeetingCostIdList?: [];

  toDeletedRdExchangeCostIdList?: [];

  toDeletedRdTechCostIdList?: [];

  toDeletedRdLaborCostIdList?: [];

  toDeletedRdLiteratureCostIdList?: [];

  toDeletedRdTestingCostIdList?: [];

  toDeletedRdOtherCostIdList?: [];
}

export interface budgetInfoQuery extends PageQuery {
  /**
   * 预算编号
   */
  budgetCode?: string;

  /**
   * 项目ID
   */
  projectId?: string | number;

  /**
   * 等同于项目ID，做唯一索引使用，在作废时此值要清空
   */
  approvedFlag?: number;

  /**
   * 版本，新版本+1
   */
  budgetVersion?: number;

  /**
   * 冗余，项目类别（1销售 2研发 3预投）
   */
  projectCategory?: string;

  /**
   * 项目号
   */
  projectCode?: string;

  /**
   * 项目名称
   */
  projectName?: string;

  /**
   * 项目经理（市场预算表的项目经理，研发预算表中的编制），关联sys_user
   */
  managerId?: string | number;

  /**
   * 项目经理姓名
   */
  managerName?: string;

  /**
   * 产品经理，关联sys_user
   */
  productManagerId?: string | number;

  /**
   * 产品经理姓名
   */
  productManagerName?: string;

  /**
   * 审核(评审组长)ID，关联sys_user
   */
  approveUserId?: string | number;

  /**
   * 审核(评审组长)姓名
   */
  approveUserName?: string;

  /**
   * 合同额(元)
   */
  contractAmount?: number;

  /**
   * 合同净额(元)
   */
  netContractAmount?: number;

  /**
   * 预算成本(元)
   */
  budgetCost?: number;

  /**
   * 预算毛利率，乘以100保存（如1%,保存1）
   */
  budgetRate?: number;

  /**
   * 降成本后预算成本(元)
   */
  reduceBudgetCost?: number;

  /**
   * 降成本后预算毛利率
   */
  reduceBudgetRate?: number;

  /**
   * 项目预算期间
   */
  duringOperation?: string;

  /**
   * 单位ID,关联base_unit_info
   */
  unitId?: string | number;

  /**
   * 单位名称
   */
  unitName?: string;

  /**
   * 是否出口（1是 0否）
   */
  exportFlag?: string;

  /**
   * 预算状态(1暂存 2审批中 3可用)
   */
  budgetStatus?: string;

  /**
   * 流程状态
   */
  flowStatus?: string;

  /**
   * 合同ID(预留)
   */
  contractId?: string | number;

  /**
   * 日期范围参数
   */
  params?: any;
}
