using System.ComponentModel.DataAnnotations.Schema; namespace YLErp.DBModels { /// /// 情景分析配置 /// [Table("scenario_config")] public class ScenarioConfigV2 : DBModelWithOperator { /// /// 情景名称 /// [DisplayName("情景名称")] public string ConfigName { get; set; } /// /// x轴参数类型 /// public string xType { get; set; } /// /// x轴参数变动率 /// public string xRates { get; set; } /// /// y轴参数类型 /// public string yType { get; set; } /// /// y轴参数变动率 /// public string yRates { get; set; } /// /// 所属用户 /// [DisplayName("所属用户")] public int? UserId { get; set; } /// /// 所属交易员 /// [DisplayName("所属交易员")] public string UserName { get; set; } [DisplayName("特殊情景配置")] public string SpecialConfig { get; set; } public ScenarioSpecial ParseSepcial() { if (string.IsNullOrEmpty(SpecialConfig)) { return null; } return JsonHelper.Deserialize(SpecialConfig); } public override string ToString() { return ConfigName; } } public class ScenarioSpecial { public List VarityList { get; set; } public List UnderlyingList { get; set; } public bool HasItem() { return VarityList != null && VarityList.Any() || UnderlyingList != null && UnderlyingList.Any(); } public ScenarioSpecial Clone() { return (ScenarioSpecial)MemberwiseClone(); } } public class ScenarioSpecialItem { public int id { get; set; } public string Name { get; set; } public double? Rate { get; set; } public override string ToString() { return $"{Name} -- {id} -- {Rate}"; } } }