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 { } }