using System.ComponentModel;
using System.ComponentModel.DataAnnotations.Schema;
namespace YLErp.DBModels
{
public class xodTradeBase : DBModelBase
{
///
/// 结算日期
///
[DisplayName("结算日期")]
public DateTime ValueDate { get; set; }
///
/// 交易id
///
[DisplayName("交易id")]
public int TradeId { get; set; }
///
/// 交易编码
///
[DisplayName("交易编码")]
public string TradeNumber { get; set; }
///
/// 客户id
///
[DisplayName("客户id")]
public int ClientId { get; set; }
///
/// 簿记账号
///
[DisplayName("簿记账号")]
public int AssetId { get; set; }
///
/// 标的id
///
[DisplayName("标的id")]
public int UnderlyingId { get; set; }
///
/// 标的代码
///
[DisplayName("标的代码")]
public string UnderlyingCode { get; set; }
///
/// 交易状态
///
[DisplayName("交易状态")]
public string TradeStatus { get; set; }
///
/// 主交易ID
///
[DisplayName("主交易ID")]
public int ParentTradeId { get; set; }
///
/// 资产类型
///
[DisplayName("资产类型")]
public string TradeType { get; set; }
public virtual DateTime? OptDate { get; set; }
private string _tradeJson;
///
/// 交易json
/// 建议使用EodTrade.FormatTrade()返回值赋值
///
[DisplayName("交易json")]
public string TradeJson
{
set
{
lock (this)
{
_trade = null;
_tradeJson = value;
}
}
get { return _tradeJson; }
}
private trade _trade;
[NotMapped]
public trade trade
{
get
{
try
{
if (_trade == null)
{
lock (this)
{
if (_trade == null)
{
if (!string.IsNullOrEmpty(TradeJson))
{
_trade = TradeHelper2.Deserialize(TradeJson);
}
}
}
}
return _trade;
}
catch (Exception e)
{
LogFactory.GetLogger().Error("EodTrade Trade", e);
return null;
}
}
}
}
[Table("eod_trade")]
public class eod_trade : xodTradeBase
{
}
///
/// 每日初交易快照
///
[Table("bod_trade")]
public class bod_trade : xodTradeBase
{
}
}