package com.chinaweal.aiccs.aiccs.fraudreg.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.chinaweal.youfool.framework.springboot.json.LocalDateTimeStringSerializer;
import com.chinaweal.youfool.framework.springboot.mybatis.plus.SuperEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 涉嫌冒用登记业务表
 * </p>
 *
 * @author chinaweal
 * @since 2021-11-12
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName(schema = "aiccs", value = "revoke_tbiz_fraud")
@ApiModel(value="RevokeTBizFraud对象", description="撤销撤销案件业务表")
public class RevokeTBizFraud extends SuperEntity {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;

    /**
     * 业务号
     */
    @ApiModelProperty(value = "业务号")
    @TableField("bizSeq")
    @NotBlank(message = "业务号不能为空！")
    private String bizSeq;

    /**
     * 社会统一信用代码
     */
    @ApiModelProperty(value = "社会统一信用代码")
    @TableField("unisCid")
    private String unisCid;

    /**
     * 注册号
     */
    @ApiModelProperty(value = "注册号")
    @TableField("regNo")
    private String regNo;

    /**
     * 企业名称
     */
    @ApiModelProperty(value = "企业名称")
    @TableField("entName")
    private String entName;

    /**
     * 创建业务人id
     */
    @ApiModelProperty(value = "创建业务人id")
    @TableField("userId")
    private String userId;

    /**
     * 创建业务人机构id
     */
    @ApiModelProperty(value = "创建业务人机构id")
    @TableField("orgUnitID")
    private String orgUnitID;

    /**
     * 业务状态
     * 1-受理中、2-审批中、3-已通过、4-不通过
     */
    @ApiModelProperty(value = "业务状态 1-受理中、2-审批中、3-已通过、4-不通过")
    @TableField("status")
    private String status;

    /**
     * 当前环节
     * 1-业务受理 2-业务审核 3-业务审批 4-结束流程
     */
    @ApiModelProperty(value = "当前环节 1-业务受理 2-业务审核 3-业务审批 4-结束流程")
    @TableField("linkType")
    private String linkType;



    /**
     * 核准时间 yyyy-MM-dd HH:mm:ss
     */
    @ApiModelProperty(value = "核准时间 yyyy-MM-dd HH:mm:ss")
    @TableField("approvalTime")
    @JsonSerialize(using = LocalDateTimeStringSerializer.class)
    private LocalDate approvalTime;

    /**
     * 主办人
     */
    @ApiModelProperty(value = "主办人")
    @TableField("intoSponsor")
    private String intoSponsor;


    /**
     * 申请撤销联系人
     */
    @ApiModelProperty(value = "申请撤销联系人")
    @TableField("revokeApplyName")
    private String revokeApplyName;

    /**
     * 申请撤销联系人电话
     */
    @ApiModelProperty(value = "申请撤销联系人电话")
    @TableField("revokeApplyNo")
    private String revokeApplyNo;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    @TableField("remark")
    private String remark;

    /**
     * 撤销撤销核实情况
     */
    @ApiModelProperty(value = "撤销撤销核实情况")
    @TableField("revokeFraudContent")
    private String revokeFraudContent;

    /**
     * 结束原因
     */
    @ApiModelProperty(value = "结束原因")
    @TableField("endReason")
    private String endReason;

    /**
     * 关联的旧业务ID
     */
    @ApiModelProperty(value = "关联的旧业务ID")
    @TableField("bizseqOld")
    private String bizseqOld;

    /**
     * 企业主键
     */
    @ApiModelProperty(value = "企业主键")
    @TableField("priPid")
    private String priPid;

    /**
     * 处理文书号
     */
    @ApiModelProperty(value = "处理文书号")
    @TableField("canceldocno")
    private String canceldocno;
}
