package com.cusc.nirvana.user.rnr.fp.dao.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.cusc.nirvana.user.rnr.fp.dao.handler.EncryptDataTypeHandler;
import lombok.Data;

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

/**
 * T1上报状态(FpT1UploadStatus)实体类
 *
 * @author yuy336
 * @since 2022-07-06 14:12:22
 */
@TableName(value = "fp_t1_upload_status", autoResultMap = true)
@Data
public class FpT1UploadStatusPO implements Serializable {

    private static final long serialVersionUID = 951920304264804517L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 创建人
     */
    @TableField(value = "creator", updateStrategy = FieldStrategy.NEVER)
    private String creator;
    
    /**
     * 业务主键
     */    
    @TableField("uuid")
    private String uuid;
    
    /**
     * iccid
     */
    @TableField(value = "iccid", typeHandler = EncryptDataTypeHandler.class)
    private String iccid;
    
    /**
     * 实名工单id
     */    
    @TableField("order_id")
    private String orderId;
    
    /**
     * 开户信息上报状态：1 上报成功 2上报失败
     */    
    @TableField("user_status")
    private Integer userStatus;
    
    /**
     * 开户信息上报描述
     */    
    @TableField("user_status_resp")
    private String userStatusResp;
    
    /**
     * 文件信息上报状态：1 上报成功 2上报失败
     */    
    @TableField("file_status")
    private Integer fileStatus;
    
    /**
     * 文件信息上报描述
     */    
    @TableField("file_status_resp")
    private String fileStatusResp;
    
    /**
     * 车辆信息上报状态：1 上报成功 2上报失败
     */    
    @TableField("car_status")
    private Integer carStatus;
    
    /**
     * 车辆信息上报描述
     */    
    @TableField("car_status_resp")
    private String carStatusResp;

    /**
     * 是否报竣 1 上报成功 2上报失败
     */
    @TableField("report_completion")
    private Integer reportCompletion;

    /**
     * 报竣描述
     */
    @TableField("report_completion_resp")
    private String reportCompletionResp;
    
    /**
     * 租户编号
     */    
    @TableField("tenant_no")
    private String tenantNo;
    
    /**
     * 最后一次操作人
     */    
    @TableField("operator")
    private String operator;

    /**
     * 创建时间
     */
    @TableField(value = "create_time", insertStrategy = FieldStrategy.NOT_NULL, updateStrategy = FieldStrategy.NEVER)
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time", insertStrategy = FieldStrategy.NEVER, updateStrategy = FieldStrategy.NEVER)
    private Date updateTime;

    /**
     * 切换状态：0 默认值，1 切流成功 2 切流失败
     */
    @TableField("flow_status")
    private Integer flowStatus;

    /**
     * 切换状态描述
     */
    @TableField("flow_status_resp")
    private String flowStatusResp;

    /**
     * 请求标识
     */
    @TableField("request_id")
    private String requestId;

    /**
     * 上报时请求入参，用于T1重试
     */
    @TableField("t1_request")
    private String t1Request;
}

