BlAuthoryUser.cs 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. using ProjectBase.Data.BaseDAL;
  2. using ProjectBase.Data.Encrypt;
  3. using ProjectBase.Data.Logs;
  4. using SIMDP.DAL.IDALSQL;
  5. using SIMDP.Model;
  6. using System;
  7. using System.Management;
  8. using System.Net;
  9. using SIMDP.Util;
  10. namespace SIMDP.BLL
  11. {
  12. public class BlAuthoryUser : BaseBLL<MoAuthoryUser>
  13. {
  14. private IDalAuthoryUser dalAuthoryUser;
  15. /// <summary>
  16. /// 构造函数
  17. /// </summary>
  18. public BlAuthoryUser() : base()
  19. {
  20. base.Init(this.GetType().FullName, System.Reflection.Assembly.GetExecutingAssembly().GetName().Name);
  21. dalAuthoryUser = base.baseDal as IDalAuthoryUser;
  22. dalAuthoryUser.OnOperationLog += new OperationLogEventHandler(BlLogOperation.OnOperationLog);
  23. }
  24. /// <summary>
  25. /// 登录账户和密码验证
  26. /// </summary>
  27. /// <param name="userAccount">账户</param>
  28. /// <param name="userPasswd">密码</param>
  29. /// <param name="message">反馈信息</param>
  30. /// <returns></returns>
  31. public bool VerifyLogin(string userAccount, string userPasswd, out string message)
  32. {
  33. try
  34. {
  35. message = "";
  36. MoAuthoryUser user = FindByID(userAccount);
  37. if (user == null)
  38. {
  39. message = "不存在账号!";
  40. return false;
  41. }
  42. //string encrptPasswd = EncodeHelper.MD5Encrypt(userPasswd);
  43. //如果该用户的密码是初始密码,让用户修改密码
  44. if (user.LoginPasswd.Equals(EncodeHelper.EncryptString("000000")))
  45. {
  46. message = "您的密码为初始密码,请点击开始菜单修改密码!";
  47. return false;
  48. }
  49. if (userPasswd.Equals(user.LoginPasswd))
  50. {
  51. SysEnvironment.CurrentLoginName = user.UserName;
  52. SysEnvironment.CurrentLoginGroupId = user.GroupId;
  53. bool flag = BLLFactory<BlWhite>.Instance.VerifyBlackWhite(user.LoginAccount,SysEnvironment.Ip,out message);
  54. if (!flag)
  55. {
  56. return false;
  57. }
  58. //登录成功后记录到用户登录日志中
  59. MoLogLogIn moLogIn = new MoLogLogIn
  60. {
  61. Account = user.LoginAccount,
  62. Name = user.UserName,
  63. GroupId = user.GroupId,
  64. Description = "用户登录",
  65. Ip = SysEnvironment.Ip,
  66. Mac = SysEnvironment.Mac,
  67. Time = DateTime.Now
  68. };
  69. if (BLLFactory<BlLogLogIn>.Instance.Insert(moLogIn))
  70. {
  71. return true;
  72. }
  73. else
  74. {
  75. message = "记录用户登录日志失败";
  76. return false;
  77. }
  78. }
  79. else
  80. {
  81. message = "密码错误!";
  82. return false;
  83. }
  84. }
  85. catch (Exception ex)
  86. {
  87. LogHelper.log.Error(string.Format("修改数据库log_logIn出现错误:{0}", ex));
  88. message = ex.ToString();
  89. return false;
  90. }
  91. }
  92. }
  93. }