package com.muchinfo.mtp3pojos.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

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

/**
 * <p>
 * 托管银行手续费配置表
 * </p>
 *
 * @author XKF
 * @since 2025-05-23
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("BANK_CUSBANKCHARGE")
@ApiModel(value="BankCusbankcharge对象", description="托管银行手续费配置表")
public class BankCusbankcharge extends Model<BankCusbankcharge> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "托管银行编号")
    @TableId(value = "CUSBANKID")
    private String cusbankid;

    @ApiModelProperty(value = "出入金类型 - 1:出金 2:入金 ")
    @TableField("OUTORIN")
    private Integer outorin;

    @ApiModelProperty(value = "客户类型 -  1:对私 2:对公")
    @TableField("USERTYPE")
    private Integer usertype;

    @ApiModelProperty(value = "手续费收取类型 - 1:统一 2:区间 [Detail表]")
    @TableField("CHARGETYPE")
    private Integer chargetype;

    @ApiModelProperty(value = "手续费收取方式 - 1:比率  2:固定  [统一 ]")
    @TableField("CHARGEALGORITHM")
    private Integer chargealgorithm;

    @ApiModelProperty(value = "手续费值 [统一 ]")
    @TableField("CHARGEVALUE")
    private BigDecimal chargevalue;

    @ApiModelProperty(value = "单笔最低值 [统一/区间] (仅对比率生效,0为不限)")
    @TableField("SINGLEMIN")
    private BigDecimal singlemin;

    @ApiModelProperty(value = "单笔最高值 [统一/区间] (仅对比率生效,0为不限)")
    @TableField("SINGLEMAX")
    private BigDecimal singlemax;


    @Override
    public Serializable pkVal() {
        return this.cusbankid;
    }

}
