package cn.cslg.pas.common.model;


import cn.cslg.pas.common.model.dto.UploadFileDTO;
import cn.cslg.pas.domain.Priority;
import lombok.Data;

import java.util.List;

/**
 * <p>
 * 管理员表
 * </p>
 *
 * @author 王岩
 * @since 2022-03-25
 */
@Data

/*数据库中的表对应的类
 */
public class PatentCell {

    /**
     * 管理员用户名
     */
    private String patentNo;
    private String title;
    private String applications;
    private String legal;
    private String url;
    private String abstrc;
    /**
     * 附图路径
     */
    private String picUrl;
    /**
     * 附图文件名称
     */
    private String fileName;
    /*
    申请号
     */
    private String applicationNo;
    /*
    专题库id
     */
    private Integer projectId;
    /*
报告id
 */
    private Integer reportId;
    private String country;
    private String applicationDate;
    private String pubilcDate;
    /*
    公开授权号
     */
    private String publicAccreditNo;
    /*
公开授权日
     */
    private String publicAccreditDate;
    /*
      主分类号
       */
    private String mainIpc;
    /*
      分类号
       */
    private List<String> ipc;
    /*
    申请人
     */
    private List<String> applicationPersons;
    /*
申请人地址
 */
    private List<String> applicationAddress;
    /*
  发明人
   */
    private List<String> inventors;

    /*
    当前权利人
     */
    private List<String> applicationCurrents;
    private List<String> applicationCurrentAddress;
    /*
    范畴分类
     */
    private String classical;
    /*
    状态
     */
    private String statue;

    /*
    摘要
     */
    private String abstrText;

    /*
    主权要
     */
    private String mainRignt;

    /*
    权要
     */
    private List<String> rights;

    /*
        PDF文档路径
         */
    private String PDFUrl;

    /*
   PDF文档大小
    */
    private Long PDFSize;
    private String PDFName;
    private UploadFileDTO pdf;
    /*
    说明书
     */
    private String patentInstructionText;
    /*
     公开号
     */
    private String publicNo;

    /*
   代理机构
    */
    private String agency;
    /*
    代理人
     */
    private List<String> agencyPersons;

    /*专利法律状态

     */
    List<PatentAffair> patentAffairs;
    /**
     * 同族号
     */
    private String familyId;
    /**
     * 优先权信息(优先权号、优先权国家、优先权日)
     */
    private List<Priority> priorities;
    /**
     * 其他附图路径
     */
    private List<String> otherUrls;

    @Data
    public static class PatentAffair {
        /**
         * 法律状态
         */
        private String status;

        /**
         * 发生日期
         */
        private String dateTime;
        /**
         * 简单法律状态
         */

        private String simpleStatus;


    }
}
