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;
import java.util.Date;

/**
 * <p>
 * 机构角色分成配置表
 * </p>
 *
 * @author XKF
 * @since 2024-12-13
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("AREAROLEDIVIDECONFIG")
@ApiModel(value="Arearoledivideconfig对象", description="机构角色分成配置表")
public class Arearoledivideconfig extends Model<Arearoledivideconfig> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "机构用户ID 其他做市关系，都设置为 1 ")
    private Long userid;

    @ApiModelProperty(value = "市场ID(此项为0时，为通用设置)")
    @TableField("MARKETID")
    private Long marketid;

    @ApiModelProperty(value = "商品ID(此项为0时，为通用设置)")
    @TableField("GOODSID")
    private Long goodsid;

    @ApiModelProperty(value = "角色类型 -  1:交易所 2:运营机构 3:营销中心 4:仓库机构 5:三方服务机构 6:自营会员 7:纪经会员 8:做市会员 9:产业会员 10:金融机构")
    @TableField("ROLETYPE")
    private Integer roletype;

    @ApiModelProperty(value = "费用类型 - 101建仓(买)手续费 102平仓(卖)手续费 103买递延费(仓储费) 104卖递延费 105买交割手续费 106 卖交割手续费   107 调期费 ")
    @TableField("TRADEFEEID")
    private Integer tradefeeid;

    @ApiModelProperty(value = "费用算法 1：比率 2：固定")
    @TableField("FEEALGORITHM")
    private Integer feealgorithm;

    @ApiModelProperty(value = "分润值")
    @TableField("DIVIDEVALUE")
    private BigDecimal dividevalue;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATETIME")
    private Date createtime;

    @ApiModelProperty(value = "创建人ID")
    @TableField("CREATORID")
    private Long creatorid;

    @ApiModelProperty(value = "修改时间")
    @TableField("MODIFYTIME")
    private Date modifytime;

    @ApiModelProperty(value = "修改人ID")
    @TableField("MODIFIERID")
    private Long modifierid;


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

}
