package com.sckw.payment.model;


import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * Author: donglang
 * Time: 2025-11-03
 * Des: 钱包管理
 * Version: 1.0
 */

@Data
@TableName("kwp_biz_wallet_prepay")
public class KwpBizWalletPrepay {

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

    /**
     * 钱包id（关联kwp_biz_wallet表的id）
     */
    private Long walletId;

    /**
     * 订单id（关联订单表的id）
     */
    private Long orderId;

    /**
     * 变动金额（单位：元，保留5位小数）
     */
    private BigDecimal changeAmount;

    /**
     * 可用金额（单位：元，保留5位小数）
     */
    private BigDecimal amount;

    /**
     * 冻结金额（单位：元，保留5位小数）
     */
    private BigDecimal prepayAmount;

    /**
     * 动帐类型  0-预付、1-扣款、2-冻结、3-解冻、4-消费
     */
    private Integer type;

    /**
     * 备注
     */
    private String remark;

    /**
     * 凭证URL地址
     */
    private String voucherUrl;

    /**
     * 创建时间
     */
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    /**
     * 创建人
     */
    @TableField(value = "create_user")
    private String createUser;

    /**
     * 更新人
     */
    @TableField(value = "update_user")
    private String updateUser;





}
