package com.ruoyi.adjust.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;

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

/**
 * 专利数据整理对象 d_patent_data_collation_info
 *
 * @author ruoyi
 * @date 2023-03-26
 */
@Data
@TableName("d_patent_data_collation_info")
public class DPatentDataCollationInfoCopy extends BaseEntity implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableField(exist = false)
    private String idStr;//

    @TableField(exist = false)
    private String queryPub;//

    @TableField(exist = false)
    private String queryActive;//

    @TableField(exist = false)
    private String queryAuth;//

    /**
     * 要导出的字段列表
     */
    @TableField(exist = false)
    private String expFields;//

    @TableField(exist = false)
    private String adjtype;// 地址调整addr,申请人类型调整type
    /**
     * 申请日开始时间
     */
    @TableField(exist = false)
    private String appDateBegin;
    /**
     * 申请日结束时间
     */
    @TableField(exist = false)
    private String appDateEnd;

    /**
     * 入库开始时间
     */
    @TableField(exist = false)
    private String createTimeBegin;
    @TableField(exist = false)
    private String modifyAppliAddress;
    /**
     * 入库结束时间
     */
    @TableField(exist = false)
    private String createTimeEnd;

    /**
     * 是否同步更新相同数据
     * turn:是
     */
    @TableField(exist = false)
    private Boolean sameFalg;
    /**
     * 是否有地址调整记录
     * 1:全部、2：有、3：无
     */
    @TableField(exist = false)
    private String addressAdjustmentFlag;

    /**
     * 是否有申请人调整记录
     * 1:全部、2：有、3：无
     */
    @TableField(exist = false)
    private String applyAdjustmentFlag;
    /**
     * 是否只看市州或区县为空的数据
     * true:是
     */
    @TableField(exist = false)
    private Boolean cityAndAreaFlag;

    /**
     * 勾选的专利数据整理信息
     */
    @TableField(exist = false)
    private String patentData;
    /**
     * 是否为勾选导出
     * true: 是
     */
    @TableField(exist = false)
    private Boolean exportFlag;
    /**
     * 导出记录的开始条数
     */
    @TableField(exist = false)
    private Integer exportNumBegin;
    /**
     * 导出记录的结束条数
     */
    @TableField(exist = false)
    private Integer exportNumEnd;

    /**
     * id
     */
    @Excel(name = "id", cellType = Excel.ColumnType.NUMERIC)
    private Long id;

    /**
     * 数据类型
     */
    //@Excel(name = "数据类型", readConverterExp = "act=有效,pub=公开,auth=授权")
    private String dataType;

    @TableField(exist = false)
    @Excel(name = "数据类型")
    private String dataTypeStr;
    /**
     * 申请号
     */
    @Excel(name = "申请号")
    private String appNumber;

    /**
     * 申请日
     */
    @Excel(name = "申请日", cellType = Excel.ColumnType.NUMERIC)
    private String appDate;

    /**
     * 第一申请人（原始专利权人）
     */
    @Excel(name = "第一申请人（原始专利权人）")
    private String appli;

    /**
     * 申请人类型（原始）
     */
    //@Excel(name = "申请人类型（原始）", readConverterExp = "UC=大专院校,SRI=科研机构,IME=企业,OT=机关团体,PE=个人")
    private String appliTypeSrc;
    @TableField(exist = false)
    @Excel(name = "申请人类型（原始）")
    private String appliTypeSrcStr;

    /**
     * 申请人类型
     * null 为空值
     */
    //@Excel(name = "申请人类型", readConverterExp = "UC=大专院校,SRI=科研机构,IME=企业,OT=机关团体,PE=个人")
    private String appliType;

    @TableField(exist = false)
    @Excel(name = "申请人类型")
    private String appliTypeStr;

    /**
     * 申请人地址
     */
    @Excel(name = "申请人地址")
    private String appliAddress;

    /**
     * 省份代码（原始）
     */
    @Excel(name = "省份代码")
    private String appliProvinceCode;

    /**
     * 省份（原始）
     */
    @Excel(name = "省份（原始）")
    private String appliProvince;

    /**
     * 州市代码(原始)
     */
    @Excel(name = "州市代码(原始)")
    private String appliCityCode;

    /**
     * 州市（原始）
     * 传null表示为“空”，传notnull表示为“非本区划”
     */
    @Excel(name = "州市（原始）")
    private String appliCity;

    /**
     * 区县代码(原始)
     */
    @Excel(name = "区县代码(原始)")
    private String appliCountyCode;

    /**
     * 区县（原始）
     */
    @Excel(name = "区县（原始）")
    private String appliCounty;

    /**
     * 省份代码
     */
    @Excel(name = "省份代码")
    private String modifyAppliProvinceCode;

    /**
     * 省份
     */
    @Excel(name = "省份")
    private String modifyAppliProvince;

    /**
     * 州市代码
     */
    @Excel(name = "州市代码")
    private String modifyAppliCityCode;

    /**
     * 州市
     */
    @Excel(name = "州市")
    private String modifyAppliCity;

    /**
     * 区县代码
     */
    @Excel(name = "区县代码")
    private String modifyAppliCountyCode;

    /**
     * 区县
     */
    @Excel(name = "区县")
    private String modifyAppliCounty;

    /**
     * 高价值类型（出版社）
     * -1 为null值
     */
    @Excel(name = "高价值类型（出版社）", readConverterExp = "1=战略性新兴产业,2=维持年限超10年,3=在海外有同族专利权,4=获得较高质押融资金额,5=获得国家科技奖或中国专利奖")
    private String highValue;

    /**
     * 入库时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "入库时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date inboundDate;
    /**
     * 入库时间 筛选条件
     */
    @TableField(exist = false)
    private String timeValue;

    /**
     * 地址调整时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "地址调整时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date addressAdjustmentTime;
    @TableField(exist = false)
    private String addressAdjustmentTimeBegin;
    @TableField(exist = false)
    private String addressAdjustmentTimeEnd;
    /**
     * 申请人调整时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "申请人调整时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date applyAdjustmentTime;
    @TableField(exist = false)
    private String applyAdjustmentTimeBegin;
    @TableField(exist = false)
    private String applyAdjustmentTimeEnd;
    /**
     * 专利名称
     */
    @Excel(name = "专利名称")
    private String title;

    /**
     * 公告号
     */
    @Excel(name = "公告号")
    private String pubNumber;

    /**
     * 当前专利状态
     */
    @Excel(name = "当前专利状态", readConverterExp = "10=有效,20=无效")
    private String currPatentStatus;

    /**
     * 当前专利人
     */
    @Excel(name = "当前专利人")
    private String currPatentHolder;

    /**
     * 专利类型
     */
    @Excel(name = "专利类型")
    private String patentType;

    /**
     * 分类号（主IPC）
     */
    @Excel(name = "分类号（主IPC）")
    private String ipcMain;

    /**
     * 分类号（洛迦诺）
     */
    @Excel(name = "分类号（洛迦诺）")
    private String locStr;

    /**
     * 国民经济行业分类
     */
    @Excel(name = "国民经济行业分类")
    private String nationalEcoStr;

    /**
     * 专利转移次数
     */
    @Excel(name = "专利转移次数", cellType = Excel.ColumnType.NUMERIC)
    private Integer patTranCounts;

    /**
     * 申请权转移次数
     */
    @Excel(name = "申请权转移次数", cellType = Excel.ColumnType.NUMERIC)
    private Integer appTranCounts;

    /**
     * 许可发生次数
     */
    @Excel(name = "许可发生次数", cellType = Excel.ColumnType.NUMERIC)
    private Integer licCounts;

    /**
     * 质押发生次数
     */
    @Excel(name = "质押发生次数", cellType = Excel.ColumnType.NUMERIC)
    private Integer pleCounts;

    /**
     * 保全发生次数
     */
    @Excel(name = "保全发生次数", cellType = Excel.ColumnType.NUMERIC)
    private Integer preCounts;

    /**
     * 法院判决发生次数
     */
    @Excel(name = "法院判决发生次数", cellType = Excel.ColumnType.NUMERIC)
    private Integer curtCounts;

    /**
     * 代理机构
     */
    @Excel(name = "代理机构")
    private String agencyName;

    @TableField(exist = false)
    private String notThisArea;

    /**
     * 删除标识
     */
    private Integer delFlag;

    /**
     * 状态
     */
    @Excel(name = "状态", readConverterExp = "10=有效,20=无效")
    private Long status;
}
