1
zj
yesterday befbf57e4112d07003bff18102f556a1e5a154de
trading-order-bean/src/main/java/com/yami/trading/bean/trader/domain/TraderFollowUser.java
@@ -6,6 +6,8 @@
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import java.math.BigDecimal;
/**
 * 用户跟随交易员详情表
 */
@@ -13,6 +15,16 @@
@TableName("T_TRADER_FOLLOW_USER")
@Slf4j
public class TraderFollowUser extends BaseEntity {
   public static final String FOLLOW_TYPE_FIXED = "1";
   public static final String STATE_FOLLOWING = "1";
   public static final String STATE_STOPPED = "2";
   public static final String STATE_STOPPING = "3";
   public static final String STATE_FAILED = "4";
   private static final long serialVersionUID = -1617033543659508052L;
   
@@ -37,26 +49,38 @@
   private String symbol;
   /**
    * 跟单固定张数/固定比例---选择 1,固定张数,2,固定比例
    * 跟单方式。当前仅支持固定币数量模式
    */
   @TableField("FOLLOW_TYPE")
   private String followType;
   private String followType = FOLLOW_TYPE_FIXED;
   /**
    * 状态 是否还在跟随状态 1,跟随,2,取消跟随
    * 状态 1-跟随中 2-已停止 3-停止中
    */
   @TableField("STATE")
   private String state;
   private String state = STATE_FOLLOWING;
   /**
    * 跟单张数或比例---具体值
    * 最小跟单币数量
    */
   @TableField("VOLUME")
   private double volume;
   /**
    * 最大持仓张数
    * 最大跟单币数量
    */
   @TableField("VOLUME_MAX")
   private double volumeMax;
   /**
    * 跟随者自定义杠杆倍数(需已执行 docs/db/V5__follow_leverage_support.sql 增加 LEVER_RATE 列)
    */
   @TableField("LEVER_RATE")
   private double leverRate = 1D;
   /**
    * 跟单投入币数量(新模型核心字段)
    */
   @TableField("INVEST_AMOUNT")
   private BigDecimal investAmount = BigDecimal.ZERO;
   
   /**
    * 累计跟单收益 PROFIT
@@ -86,9 +110,59 @@
   @TableField("DAYS_SETTING")
   private String daysSetting;
   /**
    * 请求停止跟单时间戳(秒)
    */
   @TableField("STOP_REQUEST_TIME")
   private Long stopRequestTime;
   /**
    * 停止跟单完成时间戳(秒)
    */
   @TableField("STOP_FINISH_TIME")
   private Long stopFinishTime;
   /**
    * 月固定跟单费已缴纳到的自然月 yyyy-MM(同月内停止后再跟单不重复扣)
    */
   @TableField("MONTHLY_FEE_PAID_PERIOD")
   private String monthlyFeePaidPeriod;
   /**
    * 最近一次跟单失败原因(如余额不足)
    */
   @TableField("FAIL_REASON")
   private String failReason;
   /**
    * 最近一次跟单失败时间戳(秒)
    */
   @TableField("LAST_FAIL_TIME")
   private Long lastFailTime;
   @TableField(exist = false)
   private String userCode;
   @TableField(exist = false)
   private String traderUserCode;
   @TableField(exist = false)
   private String traderName;
   @TableField(exist = false)
   private Long openOrderCount;
   @TableField(exist = false)
   private Double openOrderVolume;
   @TableField(exist = false)
   private Double openOrderProfit;
   public boolean isFollowing() {
      return STATE_FOLLOWING.equals(this.state);
   }
   public boolean isStopping() {
      return STATE_STOPPING.equals(this.state);
   }
}