package com.dxhy.erp.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName("t_dx_erp_request_record")
public class RequestRecord {

    @TableId("id")
    private Long id;

    /**
     *报账单号
     */
    @TableField("bzdh")
    private String bzdh;

    /**
     *发票代码
     */
    @TableField("invoice_code")
    private String invoiceCode;

    /**
     *影像id
     */
    @TableField("image_id")
    private String imageId;

    /**
     * 发票号码
     */
    @TableField("invoice_no")
    private String invoiceNo;

    /**
     * 请求信息
     */
    @TableField("request_detail")
    private String requestDetail;

    /**
     * 响应信息
     */
    @TableField("response_detail")
    private String responseDetail;

    /**
     * 请求接口名称
     */
    @TableField("port_name")
    private String portName;

    /**
     * 重试次数
     */
    @TableField("retry_times")
    private Integer retryTimes;

    /**
     * 失败次数
     */
    @TableField("failed_times")
    private Integer failedTimes;

    /**
     * 第一次请求时间
     */
    @TableField("create_time")
    private Date createTime;

    /**
     * 最后一次重试时间
     */
    @TableField("last_retry_time")
    private Date lastRetryTime;

    /**
     * 是否已经成功（0成功，1失败）
     */
    @TableField("status")
    private Integer status;

    /**
     * 方法名
     */
    @TableField("method_name")
    private String methodName;

    /**
     * 主动调用其它系统方法名
     */
    @TableField("active_call")
    private String activeCall;

    /**
     * 主动调用其它系统的接口参数
     */
    @TableField("active_call_request_detail")
    private String activeCallRequestDetail;

    /**
     * 失败原因
     */
    @TableField("failed_reason")
    private String failedReason;

    /**
     * 是否可重调（0不可重调，1可重调）
     */
    @TableField("is_recall")
    private Integer isRecall;

    /**
     * 重调用后的返回参数
     */
    @TableField("recall_response_detail")
    private String recallResponseDetail;

    /**
     * 主动调用其它系统的返回参数
     */
    @TableField("active_call_response")
    private String activeCallResponse;

    /**
     * 主动调用其它系统的返回参数（重调用）
     */
    @TableField("active_call_recall_response")
    private String activeCallRecallResponse;

}
