package com.engine.salary.entity.salarysob.dto;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 薪资账套薪资项目详情
 * <p>Copyright: Copyright (c) 2022</p>
 * <p>Company: 泛微软件</p>
 *
 * @author qiantao
 * @version 1.0
 **/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
//薪资账套薪资项目详情
public class SalarySobItemAggregateDTO {

    //薪资账套的id
    @JsonSerialize(using = ToStringSerializer.class)
    private Long salarySobId;

    //薪资账套的薪资项目详情-员工信息
    private List<SalarySobEmpFieldDTO> empFields;

    //薪资账套的薪资项目详情-薪资项目分类
    private List<SalarySobItemGroupDTO> itemGroups;

    //薪资账套的薪资项目详情-薪资项目（未分类）
    private List<SalarySobItemDTO> items;

    //薪资账套的薪资项目按薪资类型分类（账套目前只含一个类型，只给核算表头带出公式使用。未来若账套包含多类型时，可用于扩展）
    private List<SalarySobItemIncomeCategoryDTO> incomeCategories;

    // 已发薪资项目
    private  List<SalarySobItemDTO> backCalcItems;
}
