package com.zksy.basicData.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.zksy.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import com.zksy.common.core.domain.BasePo;
/**
 * 食品生产许可证基本信息对象 xcr_food_production_license
 *
 * @author nahida
 * @date 2024-11-04
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("xcr_food_production_license")
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "食品生产许可证基本信息")
public class XcrFoodProductionLicense extends BasePo {

private static final long serialVersionUID=1L;

    /** 信息共享ID */
            @ApiModelProperty("信息共享ID")
            @TableField("INFOSHAR_ID")
            @JsonProperty("infosharId")
    private String infosharId;

    /** 生产许可证信息表主键 信息主键，保持唯一性 */
            @ApiModelProperty("生产许可证信息表主键 信息主键，保持唯一性")
            @TableField("ID")
            @JsonProperty("ID")
    private String ID;

    /** 生产者名称 持证主体，即申请食品生产许可证的企业法人、合伙企业、个人独资企业、个体工商户、农民专业合作组织等的名称，以营业执照上的名称为准 */
            @Excel(name = "生产者名称 持证主体，即申请食品生产许可证的企业法人、合伙企业、个人独资企业、个体工商户、农民专业合作组织等的名称，以营业执照上的名称为准")
            @ApiModelProperty("生产者名称 持证主体，即申请食品生产许可证的企业法人、合伙企业、个人独资企业、个体工商户、农民专业合作组织等的名称，以营业执照上的名称为准")
            @TableField("PRODUCER_NAME")
            @JsonProperty("producerName")
    private String producerName;

    /** 法定代表人（负责人） 食品生产企业中依法代表法人行使民事权利，履行民事义务的主要负责人 */
            @Excel(name = "法定代表人", readConverterExp = "负=责人")
            @ApiModelProperty("法定代表人")
            @TableField("LEGAL_PERSON")
            @JsonProperty("legalPerson")
    private String legalPerson;

    /** 许可证编号 食品生产许可证的编号，由SC（“生产”的汉语拼音字母缩写）和14位阿拉伯数字组成 */
            @Excel(name = "许可证编号 食品生产许可证的编号，由SC", readConverterExp = "“=生产”的汉语拼音字母缩写")
            @ApiModelProperty("许可证编号 食品生产许可证的编号，由SC")
            @TableField("PERMIT_NO")
            @JsonProperty("permitNo")
    private String permitNo;

    /** 统一社会信用代码 每一个法人和其他组织在全国范围内唯一的、终身不变的法定身份识别码 */
            @Excel(name = "统一社会信用代码 每一个法人和其他组织在全国范围内唯一的、终身不变的法定身份识别码")
            @ApiModelProperty("统一社会信用代码 每一个法人和其他组织在全国范围内唯一的、终身不变的法定身份识别码")
            @TableField("SOCIAL_CREDIT_CODE")
            @JsonProperty("socialCreditCode")
    private String socialCreditCode;

    /** 行政区划代码 GB/T2260中的省市县级数字码，需具体到县级代码 */
            @Excel(name = "行政区划代码 GB/T2260中的省市县级数字码，需具体到县级代码")
            @ApiModelProperty("行政区划代码 GB/T2260中的省市县级数字码，需具体到县级代码")
            @TableField("DIVISON_CODE")
            @JsonProperty("divisonCode")
    private String divisonCode;

    /** 住所 食品生产者注册地址 */
            @Excel(name = "住所 食品生产者注册地址")
            @ApiModelProperty("住所 食品生产者注册地址")
            @TableField("DOMICILE")
            @JsonProperty("DOMICILE")
    private String DOMICILE;

    /** 生产地址 食品生产者实施食品生产行为的实际地点，应当具体到门牌号（或者便于准确找到的地址），允许与营业执照上“住所”不同。多个生产地址用分号隔开 */
            @Excel(name = "生产地址 食品生产者实施食品生产行为的实际地点，应当具体到门牌号", readConverterExp = "或=者便于准确找到的地址")
            @ApiModelProperty("生产地址 食品生产者实施食品生产行为的实际地点，应当具体到门牌号")
            @TableField("PRODUCTION_ADDRESS")
            @JsonProperty("productionAddress")
    private String productionAddress;

    /** 食品类别 获证生产者获得许可生产的食品类别,多个类别用分号隔开（填写代码表5的食品、食品添加剂类别） */
            @Excel(name = "食品类别 获证生产者获得许可生产的食品类别,多个类别用分号隔开", readConverterExp = "填=写代码表5的食品、食品添加剂类别")
            @ApiModelProperty("食品类别 获证生产者获得许可生产的食品类别,多个类别用分号隔开")
            @TableField("FOOD_CATEGORY")
            @JsonProperty("foodCategory")
    private String foodCategory;

    /** 发证机关 颁发食品生产许可证的机构名称 */
            @Excel(name = "发证机关 颁发食品生产许可证的机构名称")
            @ApiModelProperty("发证机关 颁发食品生产许可证的机构名称")
            @TableField("LICENSING_AUTHORITY")
            @JsonProperty("licensingAuthority")
    private String licensingAuthority;

    /** 发证机关代码 发证机关的统一社会信用代码 */
            @Excel(name = "发证机关代码 发证机关的统一社会信用代码")
            @ApiModelProperty("发证机关代码 发证机关的统一社会信用代码")
            @TableField("LICENSING_AUTHORITY_CODE")
            @JsonProperty("licensingAuthorityCode")
    private String licensingAuthorityCode;

    /** 证照颁发日期 发证机关颁发食品生产许可证的日期 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "证照颁发日期 发证机关颁发食品生产许可证的日期", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("证照颁发日期 发证机关颁发食品生产许可证的日期")
            @TableField("ISSUANCE_DATE")
            @JsonProperty("issuanceDate")
    private Date issuanceDate;

    /** 证照有效期截止日期 食品生产许可证有效期截止的日期 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "证照有效期截止日期 食品生产许可证有效期截止的日期", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("证照有效期截止日期 食品生产许可证有效期截止的日期")
            @TableField("EXPIRATION_DATE")
            @JsonProperty("expirationDate")
    private Date expirationDate;

    /** 二维码 食品生产许可证书上的二维码图像 */
            @Excel(name = "二维码 食品生产许可证书上的二维码图像")
            @ApiModelProperty("二维码 食品生产许可证书上的二维码图像")
            @TableField("QR_CODE")
            @JsonProperty("qrCode")
    private String qrCode;

    /** 是否采用电子证照 发证机关颁发的食品生产许可证是否为食品生产许可证电子证照，填写“1”或“0”。1是 0否 */
            @Excel(name = "是否采用电子证照 发证机关颁发的食品生产许可证是否为食品生产许可证电子证照，填写“1”或“0”。1是 0否")
            @ApiModelProperty("是否采用电子证照 发证机关颁发的食品生产许可证是否为食品生产许可证电子证照，填写“1”或“0”。1是 0否")
            @TableField("USE_ELECTRONIC_LICENSE")
            @JsonProperty("useElectronicLicense")
    private String useElectronicLicense;

    /** 受理时间 发证机关受理食品生产许可申请的日期 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "受理时间 发证机关受理食品生产许可申请的日期", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("受理时间 发证机关受理食品生产许可申请的日期")
            @TableField("ACCEPTANCE_TIME")
            @JsonProperty("acceptanceTime")
    private Date acceptanceTime;

    /** 许可证状态 食品生产许可证书的状态,（填写代码表1的代码） */
            @Excel(name = "许可证状态 食品生产许可证书的状态,", readConverterExp = "填=写代码表1的代码")
            @ApiModelProperty("许可证状态 食品生产许可证书的状态,")
            @TableField("LICENSE_STATUS")
            @JsonProperty("licenseStatus")
    private String licenseStatus;

    /** 许可证办理类别 食品生产许可证书办理类别（填写代码表2的代码） */
            @Excel(name = "许可证办理类别 食品生产许可证书办理类别", readConverterExp = "填=写代码表2的代码")
            @ApiModelProperty("许可证办理类别 食品生产许可证书办理类别")
            @TableField("PERMIT_TYPE")
            @JsonProperty("permitType")
    private String permitType;

    /** 许可证注销原因 注销食品生产许可证的具体原因 */
            @Excel(name = "许可证注销原因 注销食品生产许可证的具体原因")
            @ApiModelProperty("许可证注销原因 注销食品生产许可证的具体原因")
            @TableField("CANCELLATION_REASON")
            @JsonProperty("cancellationReason")
    private String cancellationReason;

    /** 许可证注销日期 注销食品生产许可证的日期 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "许可证注销日期 注销食品生产许可证的日期", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("许可证注销日期 注销食品生产许可证的日期")
            @TableField("CANCELLATION_DATE")
            @JsonProperty("cancellationDate")
    private Date cancellationDate;

    /** 原许可证编号 企业原食品、食品添加剂生产许可证QS或XK编号，可为空 */
            @Excel(name = "原许可证编号 企业原食品、食品添加剂生产许可证QS或XK编号，可为空")
            @ApiModelProperty("原许可证编号 企业原食品、食品添加剂生产许可证QS或XK编号，可为空")
            @TableField("ORIGINAL_LICENSE_NO")
            @JsonProperty("originalLicenseNo")
    private String originalLicenseNo;

    /** 告知承诺 是否采用告知承诺方式实施食品生产许可，填写“1”或“0”。1是 0否 */
            @Excel(name = "告知承诺 是否采用告知承诺方式实施食品生产许可，填写“1”或“0”。1是 0否")
            @ApiModelProperty("告知承诺 是否采用告知承诺方式实施食品生产许可，填写“1”或“0”。1是 0否")
            @TableField("INFORM_COMMITMENT")
            @JsonProperty("informCommitment")
    private String informCommitment;

    /** 告知承诺涉及许可食品类别 采用告知承诺方式实施食品生产许可涉及的食品类别，不采用告知承诺方式实施食品生产许可的此项可不填 */
            @Excel(name = "告知承诺涉及许可食品类别 采用告知承诺方式实施食品生产许可涉及的食品类别，不采用告知承诺方式实施食品生产许可的此项可不填")
            @ApiModelProperty("告知承诺涉及许可食品类别 采用告知承诺方式实施食品生产许可涉及的食品类别，不采用告知承诺方式实施食品生产许可的此项可不填")
            @TableField("INFORM_PROMISED_FOOD_CATEGORY")
            @JsonProperty("informPromisedFoodCategory")
    private String informPromisedFoodCategory;

    /** 日常监督管理机构 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填 */
            @Excel(name = "日常监督管理机构 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填")
            @ApiModelProperty("日常监督管理机构 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填")
            @TableField("DAILY_SUPERVISION_ORGANIZATION")
            @JsonProperty("dailySupervisionOrganization")
    private String dailySupervisionOrganization;

    /** 日常监管机构行政区划代码 省级填写**0000,市级填写****00，区县级及以下填写****** 为历史数据保留，旧版许可证有“日常监督管理机构”数据项的必填，新版许可证如无此数据项的可以不填 */
            @Excel(name = "日常监管机构行政区划代码 省级填写**0000,市级填写****00，区县级及以下填写****** 为历史数据保留，旧版许可证有“日常监督管理机构”数据项的必填，新版许可证如无此数据项的可以不填")
            @ApiModelProperty("日常监管机构行政区划代码 省级填写**0000,市级填写****00，区县级及以下填写****** 为历史数据保留，旧版许可证有“日常监督管理机构”数据项的必填，新版许可证如无此数据项的可以不填")
            @TableField("DAILYSUPERORG_DIVISON_CODE")
            @JsonProperty("dailysuperorgDivisonCode")
    private String dailysuperorgDivisonCode;

    /** 日常监管人员 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填 */
            @Excel(name = "日常监管人员 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填")
            @ApiModelProperty("日常监管人员 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填")
            @TableField("DAILY_SUPERVISOR")
            @JsonProperty("dailySupervisor")
    private String dailySupervisor;

    /** 投诉举报电话 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填 */
            @Excel(name = "投诉举报电话 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填")
            @ApiModelProperty("投诉举报电话 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填")
            @TableField("COMPLAINT_HOTLINE")
            @JsonProperty("complaintHotline")
    private String complaintHotline;

    /** 签发人 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填 */
            @Excel(name = "签发人 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填")
            @ApiModelProperty("签发人 为历史数据保留，旧版许可证有此数据项的必填，新版许可证如无此数据项的可以不填")
            @TableField("SIGNER")
            @JsonProperty("SIGNER")
    private String SIGNER;

    /** 外设仓库地址 企业外设仓库详细地址。为历史数据保留，旧版许可证有此数据项的可填写，新版许可证如无此数据项的可以不填 */
            @Excel(name = "外设仓库地址 企业外设仓库详细地址。为历史数据保留，旧版许可证有此数据项的可填写，新版许可证如无此数据项的可以不填")
            @ApiModelProperty("外设仓库地址 企业外设仓库详细地址。为历史数据保留，旧版许可证有此数据项的可填写，新版许可证如无此数据项的可以不填")
            @TableField("WAREHOUSE_ADDRESS")
            @JsonProperty("warehouseAddress")
    private String warehouseAddress;

    /** 时间戳（入库时间） 数据入库时间，系统自动生成，无需填写 */
            @Excel(name = "时间戳", readConverterExp = "入=库时间")
            @ApiModelProperty("时间戳")
            @TableField("RECORD_DATE")
            @JsonProperty("recordDate")
    private Date recordDate;

    /** 共享文件ID */
            @ApiModelProperty("共享文件ID")
            @TableField("INFOSHARE_FID")
            @JsonProperty("infoshareFid")
    private String infoshareFid;

    /** 信息共享时间1 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "信息共享时间1", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("信息共享时间1")
            @TableField("INFOSHAR_TIME")
            @JsonProperty("infosharTime")
    private Date infosharTime;

    /** 信息共享时间2 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "信息共享时间2", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("信息共享时间2")
            @TableField("INFOSHARE_TIME1")
            @JsonProperty("infoshareTime1")
    private Date infoshareTime1;

    /** 信息共享时间3 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "信息共享时间3", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("信息共享时间3")
            @TableField("INFOSHARE_TIME2")
            @JsonProperty("infoshareTime2")
    private Date infoshareTime2;

    /** 信息共享时间4 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "信息共享时间4", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("信息共享时间4")
            @TableField("INFOSHARE_TIME3")
            @JsonProperty("infoshareTime3")
    private Date infoshareTime3;

    /** 信息共享状态 */
            @Excel(name = "信息共享状态")
            @ApiModelProperty("信息共享状态")
            @TableField("INFOSHARE_STAT")
            @JsonProperty("infoshareStat")
    private String infoshareStat;

    /** 数据来源 */
            @Excel(name = "数据来源")
            @ApiModelProperty("数据来源")
            @TableField("INFOSHARE_DTSOURCE")
            @JsonProperty("infoshareDtsource")
    private String infoshareDtsource;

    /** 数据区域 */
            @Excel(name = "数据区域")
            @ApiModelProperty("数据区域")
            @TableField("INFOSHARE_DTAREA")
            @JsonProperty("infoshareDtarea")
    private String infoshareDtarea;

    /** 版本号 */
            @Excel(name = "版本号")
            @ApiModelProperty("版本号")
            @TableField("INFOSHARE_VER")
            @JsonProperty("infoshareVer")
    private String infoshareVer;

    /** 应用标识 */
            @Excel(name = "应用标识")
            @ApiModelProperty("应用标识")
            @TableField("INFOSHAR_APP")
            @JsonProperty("infosharApp")
    private String infosharApp;

    /** 全局用户唯一标识 */
            @Excel(name = "全局用户唯一标识")
            @ApiModelProperty("全局用户唯一标识")
            @TableField("SEQ_GLOBALLY_USER_UNIQUE______")
            @JsonProperty("seqGloballyUserUnique")
    private String seqGloballyUserUnique;

    /** 源系统 */
            @Excel(name = "源系统")
            @ApiModelProperty("源系统")
            @TableField("SOURCE_SYSTEM")
            @JsonProperty("sourceSystem")
    private String sourceSystem;

    /** 新的许可证状态 */
            @Excel(name = "新的许可证状态")
            @ApiModelProperty("新的许可证状态")
            @TableField("LICENSE_STATUS_NEW")
            @JsonProperty("licenseStatusNew")
    private String licenseStatusNew;

    /** 市场主体是否注销 1代表市场主体已注销 */
            @Excel(name = "市场主体是否注销 1代表市场主体已注销")
            @ApiModelProperty("市场主体是否注销 1代表市场主体已注销")
            @TableField("IF_ZHUXIAO")
            @JsonProperty("ifZhuxiao")
    private String ifZhuxiao;

    /** 插入时间 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "插入时间", width = 30, dateFormat = "yyyy-MM-dd")
            @ApiModelProperty("插入时间")
            @TableField("I_TIME")
            @JsonProperty("iTime")
    private Date iTime;



}
