RiskControl.cs 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. using GalaSoft.MvvmLight;
  2. using Muchinfo.MTPClient.Data.Enums;
  3. using Muchinfo.MTPClient.Resources;
  4. namespace Muchinfo.MTPClient.Data.Model
  5. {
  6. public class RiskControl : ObservableObject
  7. {
  8. // 摘要:
  9. // 账户状态
  10. public eAccountStatus AccountStatus { get; set; }
  11. private string _date;
  12. /// <summary>
  13. /// 日期
  14. /// </summary>
  15. public string Date
  16. {
  17. get { return _date; }
  18. set
  19. {
  20. Set(() => Date, ref _date, value);
  21. }
  22. }
  23. /// <summary>
  24. /// 账户名称
  25. /// </summary>
  26. private string loginCode;
  27. public string LoginCode
  28. {
  29. get { return loginCode; }
  30. set
  31. {
  32. Set(() => LoginCode, ref loginCode, value);
  33. }
  34. }
  35. /// <summary>
  36. /// 会员代码
  37. /// </summary>
  38. private string memberCode;
  39. public string MemberCode
  40. {
  41. get { return memberCode; }
  42. set
  43. {
  44. Set(() => MemberCode, ref memberCode, value);
  45. }
  46. }
  47. /// <summary>
  48. /// 会员名称
  49. /// </summary>
  50. private string memberName;
  51. public string MemberName
  52. {
  53. get { return memberName; }
  54. set
  55. {
  56. Set(() => MemberName, ref memberName, value);
  57. }
  58. }
  59. /// <summary>
  60. /// 当前风险级别所设定的风险率
  61. /// </summary>
  62. private double msgRate;
  63. public double MsgRate
  64. {
  65. get { return msgRate; }
  66. set
  67. {
  68. Set(() => MsgRate, ref msgRate, value);
  69. }
  70. }
  71. /// <summary>
  72. /// 实际风险率
  73. /// </summary>
  74. private double realRate;
  75. public double RealRate
  76. {
  77. get { return realRate; }
  78. set
  79. {
  80. Set(() => RealRate, ref realRate, value);
  81. }
  82. }
  83. /// <summary>
  84. /// 当前风险级别(1提示,
  85. /// </summary>
  86. private int riskLevel;
  87. public int RiskLevel
  88. {
  89. get { return riskLevel; }
  90. set
  91. {
  92. Set(() => RiskLevel, ref riskLevel, value);
  93. }
  94. }
  95. /// <summary>
  96. /// 通知类型
  97. /// </summary>
  98. public RiskMsgType RiskMsgType { get; set; }
  99. public string RiskLevelString
  100. {
  101. get
  102. {
  103. switch (RiskLevel)
  104. {
  105. case 0:
  106. return Client_Resource.MemberTradeServiceCallbackNoRisk;
  107. case 1:
  108. return Client_Resource.MemberTradeServiceCallbackWarningLevel;
  109. case 2:
  110. return Client_Resource.MemberTradeServiceCallbackAppendBail;
  111. case 3:
  112. return Client_Resource.MemberTradeServiceCallbackLiquidationLevel;
  113. case 4:
  114. return Client_Resource.MemberTradeServiceCallbackRecoverNormal;
  115. }
  116. return "--";
  117. }
  118. }
  119. /// <summary>
  120. /// 账户代码
  121. /// </summary>
  122. private string tradeCode;
  123. public string TradeCode
  124. {
  125. get { return tradeCode; }
  126. set
  127. {
  128. Set(() => TradeCode, ref tradeCode, value);
  129. }
  130. }
  131. /// <summary>
  132. /// 是否显示风险级别
  133. /// </summary>
  134. public bool IsRiskLevelVisible
  135. {
  136. get
  137. {
  138. return RiskMsgType == RiskMsgType.StatusChange;
  139. }
  140. }
  141. /// <summary>
  142. /// 风控显示的标题
  143. /// </summary>
  144. public string MessageTitle
  145. {
  146. get
  147. {
  148. return RiskMsgType == RiskMsgType.StatusChange
  149. ? Client_Resource.RateChangeNotify_Title
  150. :Client_Resource.BreakNotify_Title;
  151. }
  152. }
  153. }
  154. /// <summary>
  155. ///
  156. /// </summary>
  157. public enum RiskMsgType
  158. {
  159. /// <summary>
  160. /// 账号状态变化通知
  161. /// </summary>
  162. StatusChange,
  163. /// <summary>
  164. /// 斩仓
  165. /// </summary>
  166. BreakLevel,
  167. }
  168. }