RoleController.cs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. using Cksoft.Data;
  2. using Cksoft.Data.Repository;
  3. using Cksoft.Unity;
  4. using Cksoft.Unity.Log4NetConfig;
  5. using DllEapEntity.Dtos;
  6. using DllUfpDal;
  7. using DllUfpEntity;
  8. using Microsoft.AspNetCore.Authorization;
  9. using Microsoft.AspNetCore.Mvc;
  10. using System;
  11. using System.Collections.Generic;
  12. using System.Linq;
  13. using System.Text;
  14. namespace DllUfpBll
  15. {
  16. [Route("ufp/api/[controller]/[action]")]
  17. [Authorize]
  18. public class RoleController : ControllerBase
  19. {
  20. [HttpGet]
  21. public DllUfpEntity.LayuiModel<Role> Get(string filter, int pageIndex = 1, int pageSize = 10, string sortField = "FCode", string sortOrder = "ascend")
  22. {
  23. if (sortOrder == "descend")
  24. {
  25. sortOrder = "desc";
  26. }
  27. else
  28. {
  29. sortOrder = "asc";
  30. }
  31. int start, end;
  32. start = (pageIndex - 1) * pageSize + 1;
  33. end = start + pageSize;
  34. using (IDatabase db = DbFactory.Base("ufp"))
  35. {
  36. db.BeginTrans();
  37. var dal = new RoleDal(db);
  38. var total = dal.GetCount(filter);
  39. string errorinfo = string.Empty;
  40. var roles = dal.Get(start, pageSize, sortOrder, sortField, filter, errorinfo);
  41. return new DllUfpEntity.LayuiModel<Role>
  42. {
  43. code = 1,
  44. count = total,
  45. data = roles,
  46. msg = ""
  47. };
  48. }
  49. }
  50. [HttpGet]
  51. public Role GetSingle(string id)
  52. {
  53. using (IDatabase db = DbFactory.Base("ufp"))
  54. {
  55. var dal = new RoleDal(db);
  56. return dal.Get(id);
  57. }
  58. }
  59. [HttpPost]
  60. public string Add([FromBody] Role role)
  61. {
  62. string usercode = Request.Headers["usercode"];
  63. using (IDatabase db = DbFactory.Base("ufp"))
  64. {
  65. var dal = new RoleDal(db);
  66. if (role.ID == 0)
  67. {
  68. int count = dal.Add(role, usercode);
  69. if (count > 0)
  70. {
  71. LogHelper<Role>.LogFatal("新增Role-->" + Json.ToJson(role), "用户操作", usercode);
  72. }
  73. return count.ToString();
  74. }
  75. else
  76. {
  77. int count = dal.Update(role, usercode);
  78. if (count > 0)
  79. {
  80. LogHelper<Role>.LogFatal("修改Role-->" + Json.ToJson(role), "用户操作", usercode);
  81. }
  82. return count.ToString();
  83. }
  84. }
  85. }
  86. [HttpPost]
  87. public string Delete([FromBody] int id)
  88. {
  89. IDatabase db = null;
  90. string errormsg = string.Empty;
  91. try
  92. {
  93. db = DbFactory.Base("ufp");
  94. var dal = new RoleDal(db);
  95. db.BeginTrans();
  96. var model = dal.getStaffRole(id);
  97. var modelsec = dal.getRoleFunc(id);
  98. var res = dal.Delete(id, ref errormsg);
  99. if (res < 0)
  100. {
  101. db.Rollback();
  102. return errormsg;
  103. }
  104. db.Commit();
  105. LogHelper<Role>.LogFatal("删除StaffRole-->:" + Json.ToJson(model)+ ";RoleFunc"+Json.ToJson(modelsec), "用户操作", Request.Headers["usercode"]);
  106. return "1";
  107. }
  108. catch(Exception e)
  109. {
  110. errormsg = e.Message;
  111. return errormsg;
  112. }
  113. finally
  114. {
  115. if (db != null)
  116. db.Close();
  117. }
  118. }
  119. /// <summary>
  120. /// 获取角色下拉框数据
  121. /// </summary>
  122. /// <returns></returns>
  123. public IEnumerable<SelectDto<int>> GetRoleSelectList()
  124. {
  125. string errorinfo = string.Empty;
  126. using(IDatabase db = DbFactory.Base("ufp"))
  127. {
  128. var dal = new RoleDal(db);
  129. var roles = dal.Get(1, 10000, "asc", "a.id", string.Empty, errorinfo);
  130. if (roles != null && roles.Count() > 0)
  131. {
  132. return roles.Select(c => new SelectDto<int>
  133. {
  134. Label = c.FName,
  135. Value = c.ID
  136. });
  137. }
  138. return null;
  139. }
  140. }
  141. }
  142. }