package com.engine.salary.entity.siaccount.param;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.ToStringSerializer;
import com.engine.salary.util.valid.DataCheck;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @Author weaver_cl
 * @Description: 添加补缴核算人员
 * @Date 2022/4/11
 * @Version V1.0
 **/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class SaveSupplementaryAccountParam {

    //补缴月份")
    private List<String> billMonthList;

    //补缴项目")
    @JSONField(serializeUsing = ToStringSerializer.class)
    private List<Integer> projects;

    //包含人员")
    @JSONField(serializeUsing = ToStringSerializer.class)
    private List<Long> includes;

    //排除人员")
    @JSONField(serializeUsing = ToStringSerializer.class)
    private List<Long> excludes;

    //账单月份")
    private String billMonth;

    /**
     * 个税扣缴义务人id
     */
    @DataCheck(require = true,message = "个税扣缴义务人不能为空")
    private Long paymentOrganization;

    /**
     * 社保补缴基数
     */
    private String socialPaymentBaseString;

    /**
     * 公积金补缴基数
     */
    private String fundPaymentBaseString;

    /**
     * 其他福利补缴基数
     */
    private String otherPaymentBaseString;

    /**
     * 社保补缴金额_个人
     */
    private String socialPaymentPerString;

    /**
     * 社保补缴金额_单位
     */
    private String socialPaymentComString;

    /**
     * 公积金补缴金额_个人
     */
    private String fundPaymentPerString;

    /**
     * 公积金补缴金额_单位
     */
    private String fundPaymentComString;

    /**
     * 其他福利补缴金额_个人
     */
    private String otherPaymentPerString;

    /**
     * 其他福利补缴金额_单位
     */
    private String otherPaymentComString;

    /**
     * 补缴类型
     */
    private String supplementType;
}
