UserVo.cs 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. using System;
  2. using System.Data;
  3. using System.Data.SqlClient;
  4. using Business.System.Op.Vo;
  5. using Business.System.User.Entity;
  6. using Common;
  7. namespace Business.System.User.Vo
  8. {
  9. public class UserVo
  10. {
  11. /// <summary>
  12. /// 参数赋值
  13. /// </summary>
  14. /// <param name="user">实体类UserEty</param>
  15. /// <returns>参数数组</returns>
  16. private SqlParameter[] SetPara(UserEty user)
  17. {
  18. return new[]
  19. {
  20. new SqlParameter("@userid", user.Userid),
  21. new SqlParameter("@username", user.Username),
  22. new SqlParameter("@delflag", user.Delflag),
  23. new SqlParameter("@adduserid", user.Adduserid),
  24. new SqlParameter("@addtime", user.Addtime),
  25. new SqlParameter("@depid",user.Depid),
  26. new SqlParameter("@mobile",user.Mobile),
  27. new SqlParameter("@useraccount",user.Useraccount),
  28. new SqlParameter("@userpassword",user.Userpassword)
  29. };
  30. }
  31. /// <summary>
  32. /// 新增user记录
  33. /// </summary>
  34. /// <param name="user">实体类UserEty</param>
  35. /// <returns>成功返回空字符串,失败返回错误信息</returns>
  36. public string InsertUser(UserEty user)
  37. {
  38. try
  39. {
  40. //获取全部程序操作
  41. DataTable op = new OpVo().AllOp();
  42. string ops = string.Empty;
  43. foreach (DataRow row in op.Rows)
  44. {
  45. ops += row["code"] + ",";
  46. }
  47. //保存用户权限
  48. string lmtSql = "insert into SysLmt values(@userid,@ops)";
  49. //保存用户
  50. var sql =
  51. "insert into SysUser(userid,username,delflag,adduserid,addtime,depid,mobile,useraccount,userpassword) values(@userid,@username,@delflag,@adduserid,@addtime,@depid,@mobile,@useraccount,@userpassword)";
  52. //建立事务所需二维数组
  53. var sqlT = new object[2, 2];
  54. sqlT[0, 0] = lmtSql;
  55. sqlT[0, 1] = new[] { new SqlParameter("@userid", user.Userid), new SqlParameter("@ops", ops.TrimEnd(new[] { ',' })) };
  56. sqlT[1, 0] = sql;
  57. sqlT[1, 1] = SetPara(user);
  58. return SqlHelper.ExecSqlT(sqlT);
  59. }
  60. catch (Exception exception)
  61. {
  62. return exception.Message;
  63. }
  64. }
  65. /// <summary>
  66. /// 更新用户信息
  67. /// </summary>
  68. /// <param name="user">实体类UserEty</param>
  69. /// <returns>成功返回空字符串,失败返回错误信息</returns>
  70. public string UpdateUser(UserEty user)
  71. {
  72. var sq1 =
  73. "update SysUser set username=@username,depid=@depid,mobile=@mobile,useraccount=@useraccount where userid=@userid";
  74. return SqlHelper.ExecSql(sq1, SetPara(user));
  75. }
  76. /// <summary>
  77. /// 根据userid删除用户信息
  78. /// </summary>
  79. /// <param name="userid">用户userid</param>
  80. /// <returns>成功返回空字符串,失败返回错误信息</returns>
  81. public string DelUser(string userid)
  82. {
  83. var sql = "update SysUser set delflag='true' where userid in (" + userid + ")";
  84. return SqlHelper.ExecSql(sql);
  85. }
  86. /// <summary>
  87. /// 根据部门ID获取该部门所有用户
  88. /// </summary>
  89. /// <param name="searchText">搜索字段</param>
  90. /// <param name="depid">部门ID</param>
  91. /// <returns>数据表</returns>
  92. public DataTable GetUserByDepid(string searchText,string depid)
  93. {
  94. var sql =
  95. "SELECT p.userid, p.username, p.mobile, p.useraccount, p.addtime, vp.username FROM SysUser p left join SysUser vp on p.adduserid=vp.userid where p.depid=@depid and p.delflag ='false'";
  96. if (!string.IsNullOrEmpty(searchText))
  97. {
  98. //根据查询字段 进行查询
  99. sql +=
  100. string.Format(
  101. "and( p.username like '%{0}%' or p.useraccount like '%{0}%' or p.mobile like '%{0}%' or vp.username like '%{0}%') ",
  102. searchText);
  103. }
  104. sql += " order by p.addtime DESC";
  105. return SqlHelper.ExecSqlDateTable(sql,new SqlParameter("@depid",depid));
  106. }
  107. //用户修改密码
  108. public string Upwd(string userid,string oPwd,string nPwd)
  109. {
  110. string check = "select count(*) from SysUser where userid=@userid and userpassword=@userpassword";
  111. string result = SqlHelper.ExecSqlSc(check, new SqlParameter("@userid", userid), new SqlParameter("@userpassword", SecurityHelper.Md5Encrypt(oPwd)));
  112. if (!SqlHelper.CheckSc(result))
  113. {
  114. return result.Split(':')[1];
  115. }
  116. try
  117. {
  118. int count = Convert.ToInt32(result);
  119. if (count <= 0)
  120. {
  121. return "用户旧密码错误";
  122. }
  123. string Up = "update SysUser set userpassword=@userpassword where userid=@userid";
  124. return SqlHelper.ExecSql(Up, new SqlParameter("@userid", userid), new SqlParameter("@userpassword", SecurityHelper.Md5Encrypt(nPwd)));
  125. }
  126. catch (Exception ex)
  127. {
  128. return ex.Message;
  129. }
  130. }
  131. /// <summary>
  132. /// 根据用户ID获取用户名
  133. /// </summary>
  134. /// <param name="userid">用户ID</param>
  135. /// <returns></returns>
  136. public string UserName(string userid)
  137. {
  138. string sql = "select username from SysUser where userid=@userid";
  139. return SqlHelper.ExecSqlSc(sql, new SqlParameter("@userid", userid));
  140. }
  141. }
  142. }