You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.5 KiB

2 weeks ago
  1. namespace NFine.Code
  2. {
  3. public class OperatorProvider
  4. {
  5. public static OperatorProvider Provider
  6. {
  7. get { return new OperatorProvider(); }
  8. }
  9. private string LoginUserKey = "nfine_loginuserkey_2016";
  10. private string LoginProvider = Configs.GetValue("LoginProvider");
  11. //public OperatorModel GetCurrent()
  12. //{
  13. // OperatorModel operatorModel = new OperatorModel();
  14. // if (LoginProvider == "Cookie")
  15. // {
  16. // operatorModel = DESEncrypt.Decrypt(WebHelper.GetCookie(LoginUserKey).ToString()).ToObject<OperatorModel>();
  17. // }
  18. // else
  19. // {
  20. // string test = WebHelper.GetSession(LoginUserKey);
  21. // operatorModel = DESEncrypt.Decrypt(WebHelper.GetSession(LoginUserKey).ToString()).ToObject<OperatorModel>();
  22. // }
  23. // return operatorModel;
  24. //}
  25. public OperatorModel GetCurrent()
  26. {
  27. OperatorModel operatorModel;
  28. if (LoginProvider == "Cookie")
  29. {
  30. operatorModel = DESEncrypt.Decrypt(WebHelper.GetCookie(LoginUserKey).ToString()).ToObject<OperatorModel>();
  31. }
  32. else
  33. {
  34. if (WebHelper.GetCookie(LoginUserKey) == null)
  35. {
  36. operatorModel = new OperatorModel();
  37. }
  38. else
  39. {
  40. operatorModel = DESEncrypt.Decrypt(WebHelper.GetSession(LoginUserKey).ToString()).ToObject<OperatorModel>();
  41. }
  42. }
  43. return operatorModel ?? new OperatorModel();
  44. }
  45. public void AddCurrent(OperatorModel operatorModel)
  46. {
  47. if (LoginProvider == "Cookie")
  48. {
  49. WebHelper.WriteCookie(LoginUserKey, DESEncrypt.Encrypt(operatorModel.ToJson()), 525600);
  50. }
  51. else
  52. {
  53. WebHelper.WriteSession(LoginUserKey, DESEncrypt.Encrypt(operatorModel.ToJson()));
  54. }
  55. WebHelper.WriteCookie("nfine_mac", Md5.md5(Net.GetMacByNetworkInterface().ToJson(), 32));
  56. WebHelper.WriteCookie("nfine_licence", Licence.GetLicence());
  57. }
  58. public void RemoveCurrent()
  59. {
  60. if (LoginProvider == "Cookie")
  61. {
  62. WebHelper.RemoveCookie(LoginUserKey.Trim());
  63. }
  64. else
  65. {
  66. WebHelper.RemoveSession(LoginUserKey.Trim());
  67. }
  68. }
  69. }
  70. }