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

import com.engine.salary.annotation.SalaryTableColumn;
import com.engine.salary.annotation.TableTitle;
import com.engine.salary.util.excel.ExcelHead;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 个税申报表详情列表（劳务报酬所得）
 * <p>Copyright: Copyright (c) 2022</p>
 * <p>Company: 泛微软件</p>
 *
 * @author qiantao
 * @version 1.0
 **/
@Data
@Accessors(chain = true)
public class TaxDeclarationAnnualListDTO {

    //主键id
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    //人员id
    @JsonSerialize(using = ToStringSerializer.class)
    private Long employeeId;

    @SalaryTableColumn(
            text = "工号", width = "10%", column = "jobNum"
    )
    @TableTitle(title ="工号",dataIndex = "jobNum",key = "jobNum")
    @ExcelHead(title ="工号",dataIndex = "jobNum")
    private String jobNum;

    @SalaryTableColumn(
            text = "姓名", width = "10%", column = "username"
    )
    @TableTitle(title ="姓名",dataIndex = "username",key = "username")
    @ExcelHead(title ="姓名",dataIndex = "username")
    private String username;

    @SalaryTableColumn(
            text = "证件类型", width = "10%", column = "cardType"
    )
    @TableTitle(title ="证件类型",dataIndex = "cardType",key = "cardType")
    @ExcelHead(title ="证件类型",dataIndex = "cardType")
    private String cardType;

    @SalaryTableColumn(
            text = "证件号码", width = "10%", column = "cardNum"
    )
    @TableTitle(title ="证件号码",dataIndex = "cardNum",key = "cardNum")
    @ExcelHead(title ="证件号码",dataIndex = "cardNum")
    private String cardNum;

    @SalaryTableColumn(
            text = "全年一次性奖金额", width = "10%", column = "annualIncome"
    )
    @TableTitle(title ="全年一次性奖金额",dataIndex = "annualIncome",key = "annualIncome")
    @ExcelHead(title ="全年一次性奖金额",dataIndex = "annualIncome")
    private String annualIncome;

    @SalaryTableColumn(
            text = "免税收入", width = "10%", column = "annualTaxFreeIncome"
    )
    @TableTitle(title ="免税收入",dataIndex = "annualTaxFreeIncome",key = "annualTaxFreeIncome")
    @ExcelHead(title ="免税收入",dataIndex = "annualTaxFreeIncome")
    private String annualTaxFreeIncome;

    @SalaryTableColumn(
            text = "其他", width = "10%", column = "annualOther"
    )
    @TableTitle(title ="其他",dataIndex = "annualOther",key = "annualOther")
    @ExcelHead(title ="其他",dataIndex = "annualOther")
    private String annualOther;

    @SalaryTableColumn(
            text = "准予扣除的捐赠额", width = "10%", column = "annualDonateTax"
    )
    @TableTitle(title ="准予扣除的捐赠额",dataIndex = "annualDonateTax",key = "annualDonateTax")
    @ExcelHead(title ="准予扣除的捐赠额",dataIndex = "annualDonateTax")
    private String annualDonateTax;

    @SalaryTableColumn(
            text = "减免税额", width = "10%", column = "annualTaxSavings"
    )
    @TableTitle(title ="减免税额",dataIndex = "annualTaxSavings",key = "annualTaxSavings")
    @ExcelHead(title ="减免税额",dataIndex = "annualTaxSavings")
    private String annualTaxSavings;

    @SalaryTableColumn(
            text = "备注", width = "10%", column = "annualRemark"
    )
    @TableTitle(title ="备注",dataIndex = "annualRemark",key = "annualRemark")
    @ExcelHead(title ="备注",dataIndex = "annualRemark")
    private String annualRemark;
}
