package com.kexue.skills.entity;

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

import java.io.Serializable;
import com.kexue.skills.entity.base.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * (Account)实体类
 * 账户表，记录用户的账户信息
 *
 * @author 王志维
 * @since 2025-02-21 23:01:48
 */
@Data
public class Account extends BaseEntity implements Serializable  {
    private static final long serialVersionUID = 1L;

        @Schema(description ="主键ID")
        private Long accountId;

        @Schema(description ="用户ID")
        private Long userId;

        @Schema(description ="用户名")
        private String userName;

        @Schema(description ="账户总余额")
        private BigDecimal balance;

        @Schema(description ="可提现余额")
        private BigDecimal withdrawableBalance;

        @Schema(description ="不可提现余额")
        private BigDecimal nonWithdrawableBalance;

        @Schema(description ="冻结金额")
        private BigDecimal frozenAmount;

        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
        @Schema(description ="创建时间")
        private Date createTime;

        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
        @Schema(description ="更新时间")
        private Date updateTime;

        @Schema(description ="是否删除 ：0 未删除，1已删除")
        private Integer deleteFlag;

        @Schema(description ="创建人")
        private String createBy;

        @Schema(description ="更新人")
        private String updateBy;

}