package com.m2pool.lease.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.*;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * <p>
 * 支付记录表
 * </p>
 *
 * @author yyb
 * @since 2025-07-23
 */
@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class LeasePaymentRecord implements Serializable {

    private static final long serialVersionUID=1L;

    /**
     * 支付记录 ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 订单 ID
     */
    private Long orderId;

    /**
     * 店铺 ID
     */
    private Long shopId;

    /**
     * 商品 ID
     */
    private Long productId;

    /**
     * 支付方式，nexa rxd dgbo dgbq dgbs alph enx grs mona usdt usdc busd
     */
    private String payCoin;

    /**
     * 支付金额
     */
    private BigDecimal amount;

    /**
     * 已支付金额
     */
    private BigDecimal payAmount;

    /**
     * 支付状态0支付失败 1支付成功--全部货款已支付 2待支付 5支付已超时 10支付成功--已支付部分货款
     */
    private Integer status;

    /**
     * 支付地址
     */
    private String payAddress;

    /**
     * 交易hash（交易成功后会生成）
     */
    private String hash;


    /**
     * 买家钱包地址
     */

    @TableField("`from`")
    private String from;

    /**
     * 支付二维码
     */
    private String qrcode;

    /**
     * 支付时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 逻辑删除字段
     */
    private Boolean del;


}
