package com.chinaweal.aiccs.aiccs.seriousillegal.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.mybatis.plus.SuperEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

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

/**
 * 重整计划或者和解协议执行流程表
 *
 * @author zhouxy
 * @since 2025-12-22
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "rpei_exe_info_task")
@ApiModel(value = "RpeiExeInfoTask对象", description = "重整计划或者和解协议执行流程表")
public class RpeiExeInfoTask extends SuperEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 流程ID
     */
    @ApiModelProperty(value = "流程ID")
    @TableId(value = "TASKID", type = IdType.ASSIGN_UUID)
    private String taskId;

    /**
     * 关联的执行ID，如果是新增的则为空
     */
    @ApiModelProperty(value = "关联的执行ID")
    @TableField("EXEID")
    private String exeId;

    /**
     * 企业（机构）名称
     */
    @ApiModelProperty(value = "企业（机构）名称")
    @TableField("ENTNAME")
    private String entName;

    /**
     * 主体身份代码
     */
    @ApiModelProperty(value = "主体身份代码")
    @TableField("PRIPID")
    private String pripId;

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

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

    /**
     * 业务编号
     */
    @ApiModelProperty(value = "业务编号")
    @TableField("BIZ_SEQ_NO")
    private String bizSeqNo;

    /**
     * 流程状态：0待受理 1待审核 2待审批 3审批通过 4审批不通过 5已作废
     */
    @ApiModelProperty(value = "流程状态：0待受理 1待审核 2待审批 3审批通过 4审批不通过 5已作废")
    @TableField("STATUS")
    private String status;

    /**
     * 修改前执行状态。1:执行期间 2:执行完毕 3:未执行成功
     */
    @ApiModelProperty(value = "修改前执行状态。1:执行期间 2:执行完毕 3:未执行成功")
    @TableField("EXESTATE_BEF")
    private String exeStateBef;

    /**
     * 修改后执行状态。1:执行期间 2:执行完毕 3:未执行成功
     */
    @ApiModelProperty(value = "修改后执行状态。1:执行期间 2:执行完毕 3:未执行成功")
    @TableField("EXESTATE_AFT")
    private String exeStateAft;

    /**
     * 登记机关
     */
    @ApiModelProperty(value = "登记机关")
    @TableField("REGAUTH")
    private String regAuth;

    /**
     * 登记机关（中文）
     */
    @ApiModelProperty(value = "登记机关（中文）")
    @TableField("REGAUTH_CN")
    private String regAuthCn;

    /**
     * 业务类型。add表示添加执行信息，update表示修改执行状态
     */
    @ApiModelProperty(value = "业务类型。add表示添加执行信息，update表示修改执行状态")
    @TableField("oper_type")
    private String operType;

    /**
     * 对严重违法失信信息的处理。0：恢复列入，3：暂时屏蔽严重违法信息
     * 根据xr_serious_illegal_list的operation_status来设计
     */
    @ApiModelProperty(value = "对严重违法失信信息的处理。0：恢复列入，3：暂时屏蔽严重违法信息")
    @TableField("handle_type")
    private String handleType;

    /**
     * 执行日期
     */
    @ApiModelProperty(value = "执行日期")
    @TableField("EXEDATE")
    private Date exeDate;

    /**
     * 发起日期
     */
    @ApiModelProperty(value = "发起日期")
    @TableField("apply_time")
    private Date applyTime;

}
