package com.chinaweal.aiccs.aiccs.revoke.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 撤销设立结果表
 * @author lds
 * @since 2023-04-24
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("cancelregisterlist")
public class CancelRegisterList extends Model<CancelRegisterList> {
    private static final long serialVersionUID=1L;

    /**
     * 涉嫌冒用登记业务表id
     */
    @TableId(value = "BIZFRAUDID",type = IdType.ASSIGN_UUID)
    private String bizFraudId;

    /**
     * 主体身份代码（唯一标识符）
     */
    @TableField("PRIPID")
    private String pripid;

    /**
     * 统一社会信用代码
     */
    @TableField("UNISCID")
    private String uniscid;

    /**
     * 注册号
     */
    @TableField("REGNO")
    private String regno;

    /**
     * 企业名称
     */
    @TableField("ENTNAME")
    private String entname;

    /**
     * 人民法院通知文书文号
     */
    @TableField("COURTNOTNO")
    private String courtnotno;

    /**
     * 撤销文书号
     */
    @TableField("CANCELDOCNO")
    private String canceldocno;

    /**
     * 撤销日期（格式：YYYY-MM-DD）
     */
    @TableField("CANCELDATE")
    private String canceldate;

    /**
     * 撤销登记类型(
     * 1: 企业申请撤销;
     * 2: 登记机关决定撤销;
     * )
     */
    @TableField("CANCELREGTYPE")
    private String cancelregtype;

    /**
     * 撤销原因(
     * 1: 滥用职权、玩忽职守作出准予登记决定的;
     * 2: 超越法定职权作出准予登记决定的;
     * 3: 对不具备申请资格或者不符合法定条件的申请人作出准予登记决定的;
     * 4: 被许可人以欺骗、贿赂等不正当手段取得登记的;
     * 9: 其他
     * )
     */
    @TableField("CANCELREA")
    private String cancelrea;

    /**
     * 该次撤销的企业住所（地址）均是否属于虚假（住宅）地址，自动进行地址锁定
     * 1：是
     * 0：否
     * “是”时撤销后同时对地址进行锁定
     */
    @TableField("AUTOADDRESSLOCK")
    private String autoaddresslock;

    /**
     * 撤销设立用户姓名（传：信用监管系统）
     */
    @TableField("USERNAME")
    private String username;

    /**
     * 文件
     */
    @TableField("ATTACHMENT")
    private String attachment;

    /**
     * 撤销设立经办人id
     */
    @TableField("HANDLERID")
    private String handlerid;

    /**
     * 撤销设立经办人姓名
     */
    @TableField("HANDLERNAME")
    private String handlername;

    /**
     * 作出决定机关
     */
    @TableField("HANDLEDECORG")
    private String handledecorg;


    /**
     * 撤销设立数据推送返回结果状态码
     */
    @TableField("CODE")
    private String code;

    /**
     * 撤销设立数据推送返回异常代码 （code=500时才有值：001企业不存在；002该企业状态不允许撤销设立；
     * 003该企业存在锁定信息，不允许撤销设立; 004参数异常; 005流程问题（存在未完结或未签名）; 005 系统异常
     * ）
     */
    @TableField("EXCODE")
    private String exCode;

    /**
     * 撤销设立数据推送返回详细的异常信息
     */
    @TableField("MESSAGE")
    private String message;

    /**
     * 撤销设立数据推送返回时间
     */
    @TableField("RETURTIME")
    private LocalDateTime returnTime;


    @Override
    protected Serializable pkVal() {
        return this.bizFraudId;
    }
}