package cn.ezhizao.project.business.salary.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import cn.ezhizao.framework.web.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import io.swagger.annotations.ApiModelProperty;
import cn.ezhizao.framework.aspectj.lang.annotation.Excel;

/**
 * 工资报工信息对象 biz_financial_salary_detail
 *
 * @author ruoyi
 * @date 2023-11-16
 */
@Data
@TableName(value = "biz_financial_salary_detail")
public class BizFinancialSalaryDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 工资外键 */
    @ApiModelProperty(value = "${comment}")
    private Long financialSalaryId;

    /** 客户外键 */
    @ApiModelProperty(value = "${comment}")
    private Long companyId;

    @Excel(name = "客户名称")
    @TableField(exist = false)
    private String companyName;
    @TableField(exist = false)
    private String taxType;

    //导出期间
    @TableField(exist = false)
    private String time;

    /** 年 */
    @Excel(name = "年")
    @ApiModelProperty(value = "年")
    private String year;

    /** 月 */
    @Excel(name = "月")
    @ApiModelProperty(value = "月")
    private String month;

    /** 状态 */
    @Excel(name = "状态")
    @ApiModelProperty(value = "状态")
    private Integer status;

    /** 详情 */
    @Excel(name = "详情")
    @ApiModelProperty(value = "详情")
    private String content;

    /** 审核详情 */
    @Excel(name = "审核详情")
    @ApiModelProperty(value = "审核详情")
    private String verifyContent;

    /** 反馈信息 */
    @Excel(name = "反馈信息")
    @ApiModelProperty(value = "反馈信息")
    private String feedbackContent;

    /** 是否有税款 */
    @Excel(name = "是否有税款")
    @ApiModelProperty(value = "是否有税款")
    private Integer hasIndividualIncomeTax;

    /** 审核人 */
    @ApiModelProperty(value = "审核人")
    private Long verifierId;

    /** 人员数量 */
    @Excel(name = "人员数量")
    @ApiModelProperty(value = "人员数量")
    private Long number;

    /** 总工资 */
    @Excel(name = "总工资")
    @ApiModelProperty(value = "总工资")
    private BigDecimal amount;

    @TableField(exist = false)
    private List<BizFinancialSalaryDetailEmployee> details;

    /** 打印数据 -总金额 */
    //应发工资
    @TableField(exist = false)
    private BigDecimal  planSalary;

    //实发工资
    @TableField(exist = false)
    private BigDecimal  actuallySalary;

    //奖金及其它
    @TableField(exist = false)
    private BigDecimal  bonusAmount;

    //养老保险
    @TableField(exist = false)
    private BigDecimal  endowmentInsurance;

    //医疗保险
    @TableField(exist = false)
    private BigDecimal  medicalInsurance;

    //失业险
    @TableField(exist = false)
    private BigDecimal  unemploymentBenefit;

    //大病险
    @TableField(exist = false)
    private BigDecimal  seriousIllnessInsurance;

    //公积金
    @TableField(exist = false)
    private BigDecimal  housingFund;

    //个税
    @TableField(exist = false)
    private BigDecimal  individualIncomeTax;

    //其他扣款
    @TableField(exist = false)
    private BigDecimal  otherCut;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date verifierTime;


}
