package com.yc.ship.module.ota.dal.dataobject.distributorrecharge;

import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yc.ship.framework.tenant.core.db.TenantBaseDO;
import lombok.*;

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

/**
 * 分销商充值 DO
 *
 * @author 管理员
 */
@TableName("ota_distributor_recharge")
@KeySequence("ota_distributor_recharge_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DistributorRechargeDO extends TenantBaseDO {

    /**
     * 主键ID
     */
    @TableId
    private Long id;
    /**
     * 分销商
     */
    private Long distributorId;
    /**
     * 充值类型 1.预付款，2.授信充正
     *
     * 枚举 {@link TODO recharge_type 对应的类}
     */
    private Integer rechargeType;
    /**
     * 充值方式（1：转账充值，2：自动充值）
     *
     * 枚举 {@link TODO recharge_mode 对应的类}
     */
    private Integer rechargeMode;
    /**
     * 充值金额
     */
    private BigDecimal money;
    /**
     * 申请人
     */
    private Long applyUser;
    /**
     * 申请时间
     */
    private LocalDateTime applyTime;
    /**
     * 状态 0.申请中，1.审核通过，2.审核驳回
     */
    private Integer status;
    /**
     * 审核人
     */
    private Long auditUser;
    /**
     * 审核时间
     */
    private LocalDateTime auditTime;
    /**
     * 充值备注
     */
    private String applyRemark;
    /**
     * 审核备注
     */
    private String auditRemark;
    /**
     * 充值单号ID
     */
    private Long rechargeLogId;
    /**
     * 附件地址
     */
    private String fileUrl;

    /**
     * 申请用户名
     */
    private String applyUserName;
    /**
     * 审核用户名
     */
    private String auditUserName;

}