package cn.iocoder.yudao.module.system.dal.dataobject.ccb;

import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 建行支付回调完整记录 DO
 *
 * @author 系统管理员
 */
@TableName("ccb_pay_callback_record")
@KeySequence("ccb_pay_callback_record_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class CcbPayCallbackRecordDO{

    /**
     * 主键ID，自增
     */
    @TableId
    private Long id;
    /**
     * 订单号（回调ORDERID）
     */
    private String orderId;
    /**
     * 商户柜台代码（回调POSID）
     */
    private String posId;
    /**
     * 分行代码（回调BRANCHID）
     */
    private String branchId;
    /**
     * 支付金额（回调PAYMENT，保留2位小数）
     */
    private BigDecimal payment;
    /**
     * 币种代码（回调CURCODE，01=人民币）
     */
    private String curCode;
    /**
     * 支付结果（回调SUCCESS，Y=成功，N=失败）
     */
    private String success;
    /**
     * 账户类型（回调ACC_TYPE，如WX=微信）
     */
    private String accType;
    /**
     * 交易日期（回调ACCDATE，格式：20251209）
     */
    private String accDate;
    /**
     * 客户端IP（回调CLIENTIP）
     */
    private String clientIp;
    /**
     * 来源地址（回调REFERER）
     */
    private String referer;
    /**
     * 备注1（回调REMARK1）
     */
    private String remark1;
    /**
     * 备注2（回调REMARK2）
     */
    private String remark2;
    /**
     * 交易类型（回调TYPE）
     */
    private String type;
    /**
     * 回调签名（回调SIGN）
     */
    private String sign;
    /**
     * 系统接收回调的时间
     */
    private LocalDateTime callbackTime;

    /**
     * 错误信息

     */
    private String errorMessage;


    private LocalDateTime createTime;


    private LocalDateTime updateTime;

}