99 lines
2.3 KiB
C#
99 lines
2.3 KiB
C#
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
namespace YLErp.DBModels
|
|
{
|
|
/// <summary>
|
|
/// 情景分析配置
|
|
/// </summary>
|
|
[Table("scenario_config")]
|
|
public class ScenarioConfigV2 : DBModelWithOperator
|
|
{
|
|
/// <summary>
|
|
/// 情景名称
|
|
/// </summary>
|
|
[DisplayName("情景名称")]
|
|
public string ConfigName { get; set; }
|
|
|
|
/// <summary>
|
|
/// x轴参数类型
|
|
/// </summary>
|
|
public string xType { get; set; }
|
|
|
|
/// <summary>
|
|
/// x轴参数变动率
|
|
/// </summary>
|
|
public string xRates { get; set; }
|
|
|
|
/// <summary>
|
|
/// y轴参数类型
|
|
/// </summary>
|
|
public string yType { get; set; }
|
|
|
|
/// <summary>
|
|
/// y轴参数变动率
|
|
/// </summary>
|
|
public string yRates { get; set; }
|
|
|
|
/// <summary>
|
|
/// 所属用户
|
|
/// </summary>
|
|
[DisplayName("所属用户")]
|
|
public int? UserId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 所属交易员
|
|
/// </summary>
|
|
[DisplayName("所属交易员")]
|
|
public string UserName { get; set; }
|
|
|
|
[DisplayName("特殊情景配置")]
|
|
public string SpecialConfig { get; set; }
|
|
|
|
public ScenarioSpecial ParseSepcial()
|
|
{
|
|
if (string.IsNullOrEmpty(SpecialConfig))
|
|
{
|
|
return null;
|
|
}
|
|
|
|
return JsonHelper.Deserialize<ScenarioSpecial>(SpecialConfig);
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
return ConfigName;
|
|
}
|
|
}
|
|
|
|
public class ScenarioSpecial
|
|
{
|
|
public List<ScenarioSpecialItem> VarityList { get; set; }
|
|
|
|
public List<ScenarioSpecialItem> 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}";
|
|
}
|
|
}
|
|
}
|