package com.zksy.data.domain.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 税务行政处罚（不包括稽查）信息
 * @TableName xcr_tax_administrative_penalty
 */
@TableName(value ="xcr_tax_administrative_penalty")
@Data
public class XcrTaxAdministrativePenalty extends BasePo implements Serializable {
    @JsonProperty("SSWFXWDJUUID")
    @TableField("SSWFXWDJUUID")
    private String SSWFXWDJUUID;

    // 税务行政处罚决定书唯一标识
    @JsonProperty("SWXZCFJDSUUID")
    @TableField("SWXZCFJDSUUID")
    private String SWXZCFJDSUUID;

    // 登记序号
    @JsonProperty("DJXH")
    @TableField("DJXH")
    private Integer DJXH;

    // 纳税人识别号
    @JsonProperty("NSRSBH")
    @TableField("NSRSBH")
    private String NSRSBH;

    // 纳税人名称
    @JsonProperty("NSRMC")
    @TableField("NSRMC")
    private String NSRMC;

    // 违法行为名称
    @JsonProperty("WFXWMC")
    @TableField("WFXWMC")
    private String WFXWMC;

    // 税收违法类型
    @JsonProperty("SSWFLXMC")
    @TableField("SSWFLXMC")
    private String SSWFLXMC;

    // 税收违法手段
    @JsonProperty("WFSD")
    @TableField("WFSD")
    private String WFSD;

    // 处罚程序
    @JsonProperty("CFCD")
    @TableField("CFCD")
    private String CFCD;

    // 违法事实
    @JsonProperty("WFSS")
    @TableField("WFSS")
    private String WFSS;

    // 处罚依据
    @JsonProperty("CFYJ")
    @TableField("CFYJ")
    private String CFYJ;

    // 字轨
    @JsonProperty("ZG")
    @TableField("ZG")
    private String ZG;

    // 应缴罚款金额
    @JsonProperty("YJFKJE")
    @TableField("YJFKJE")
    private BigDecimal YJFKJE;

    // 文书制作日期
    @JsonProperty("WSZZRQ")
    @TableField("WSZZRQ")
    private Date WSZZRQ;

    // 主管税务机关
    @JsonProperty("SWJGMC")
    @TableField("SWJGMC")
    private String SWJGMC;

    // 归属区域
    @JsonProperty("GSQX")
    @TableField("GSQX")
    private String GSQX;

    // 时间戳
    @JsonProperty("ENTERINGTIME")
    @TableField("ENTERINGTIME")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date ENTERINGTIME;

    // 更新标志位
    @JsonProperty("OPTYPE")
    @TableField("OPTYPE")
    private Byte OPTYPE;
}