109 lines
3.1 KiB
C#
109 lines
3.1 KiB
C#
using Newtonsoft.Json;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using YLErp.Helpers;
|
|
|
|
namespace YLErp.DBModels
|
|
{
|
|
/// <summary>
|
|
/// 框架合约交易要素簿记表
|
|
/// </summary>
|
|
[Table("trade_extend")]
|
|
public class trade_extend
|
|
{
|
|
/// <summary>
|
|
/// 交易id 主键
|
|
/// </summary>
|
|
[Key,DatabaseGenerated(DatabaseGeneratedOption.None)]
|
|
[DisplayName("交易id")]
|
|
[DataChange]
|
|
public int TradeId { get; set; }
|
|
/// <summary>
|
|
/// 交易扩展元素JSON
|
|
/// </summary>
|
|
[DisplayName("交易扩展元素JSON")]
|
|
[DataChange]
|
|
public string ExtendJson { get; set; }
|
|
/// <summary>
|
|
/// 用于公司定制的扩展JSON
|
|
/// </summary>
|
|
[DisplayName("用于公司定制的扩展JSON")]
|
|
[DataChange]
|
|
public string CompanyJson { get; set; }
|
|
|
|
/// <summary>
|
|
/// 交易要素扩展对象
|
|
/// </summary>
|
|
[NotMapped]
|
|
public TradeExtendJson ExtendObj
|
|
{
|
|
get
|
|
{
|
|
if (string.IsNullOrEmpty(ExtendJson))
|
|
{
|
|
return new TradeExtendJson();
|
|
}
|
|
|
|
return JsonConvert.DeserializeObject<TradeExtendJson>(ExtendJson);
|
|
}
|
|
}
|
|
|
|
public trade_extend Clone()
|
|
{
|
|
return (trade_extend)MemberwiseClone();
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 交易要素扩展Json
|
|
/// </summary>
|
|
public class TradeExtendJson
|
|
{
|
|
/// <summary>
|
|
/// 流水簿记模式 0:否,1:先进先出,2:加权平均
|
|
/// </summary>
|
|
public int FlowBookMode { get; set; }
|
|
/// <summary>
|
|
/// 浮动收益年化
|
|
/// </summary>
|
|
public bool FloatingPnlAnnualized { get; set; }
|
|
/// <summary>
|
|
/// 是否收取开仓费
|
|
/// </summary>
|
|
public bool NeedOpenFee { get; set; }
|
|
/// <summary>
|
|
/// 收费类型 0:按手数收费,1:按份数收费
|
|
/// </summary>
|
|
public int OpenFeeType { get; set; }
|
|
/// <summary>
|
|
/// 年化天数
|
|
/// </summary>
|
|
public int AnnualDays { get; set; } = 365;
|
|
/// <summary>
|
|
/// 计息方式 00:不算头不算尾,01:不算头算尾,10:算头不算尾,11:算头算尾,缺省值:11
|
|
/// </summary>
|
|
public string InterestCalcMode { get; set; } = "11";
|
|
|
|
/// <summary>
|
|
///多空组合浮动端 收取方向 1:收取,2:支付
|
|
/// </summary>
|
|
public int Direction { get; set; }
|
|
|
|
/// <summary>
|
|
/// 结算规则 0 T+0 1 T+1
|
|
/// </summary>
|
|
public int SettlementRules { get; set; } = 0;
|
|
|
|
/// <summary>
|
|
/// 派息金额支付日 0到期结算日 1派息日+0 2派息日+1 3派息日+2
|
|
/// </summary>
|
|
public int DividendPayDate { get; set; } = 1;
|
|
|
|
}
|
|
}
|