UserService.cs 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. using Fuel.Core.Entity;
  2. using FuelServer.Core.Entity;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace Fuel.Application.Service
  9. {
  10. public class UserService : IUserService
  11. {
  12. public readonly IFreeSql _fsql;
  13. public UserService(IFreeSql fsql)
  14. {
  15. _fsql = fsql;
  16. }
  17. public users ValidateCredentials(string username, string password)
  18. {
  19. return _fsql.Select<users>().Where(_ => _.Account == username && _.Password == password).First();
  20. }
  21. /// <summary>
  22. /// 获取权限
  23. /// </summary>
  24. /// <param name="userId">1 超级管理员</param>
  25. /// <returns></returns>
  26. public List<string> GetUserPermissions(int userId = 1)
  27. {
  28. var Permission = _fsql.Select<users, AdUserRole, AdRolePermission, AdPermission>()
  29. .LeftJoin((a, b, c, d) => a.Id == b.UserId)
  30. .LeftJoin((a, b, c, d) => b.RoleId == c.RoleId)
  31. .LeftJoin((a, b, c, d) => c.PermissionId == d.Id)
  32. .Where((a, b, c, d) => a.Id == userId)
  33. .ToList((a, b, c, d) => new { d });
  34. var permissionList = new List<string>();
  35. foreach (var permission in Permission)
  36. {
  37. if (permission.d != null)
  38. permissionList.Add(permission.d.Code);
  39. }
  40. permissionList.Add("Nozzle:uploadNozzle:POST");
  41. permissionList.Add("Nozzle:UpdateNozzle:PUT");
  42. permissionList.Add("Nozzle:DeleteNozzle:Delete");
  43. permissionList.Add("Nozzle:UpdateNozzleStatus:PUT");
  44. permissionList.Add("Nozzle:uploadProduct:POST");
  45. permissionList.Add("Nozzle:UpdateProduct:Put");
  46. permissionList.Add("Nozzle:DeleteProduct:Delete");
  47. permissionList.Add("Nozzle:GetFuelNozzleInfoByExternalId:GET");
  48. permissionList.Add("Nozzle:GetFuelNozzleInfoById:GET");
  49. permissionList.Add("Nozzle:uploadTanks:POST");
  50. permissionList.Add("Nozzle:UpdateTanks:Put");
  51. permissionList.Add("Nozzle:DeleteTanks:Delete");
  52. permissionList.Add("Nozzle:NozzleAuthorization:GET");
  53. permissionList.Add("Nozzle:UpdateNozzleAuthorization:PUT");
  54. permissionList.Add("Nozzle:UpdateCancelNozzleAuthorization:PUT");
  55. permissionList.Add("Nozzle:CancelNozzleAuthorization:GET");
  56. permissionList.Add("Transactions:CreateTransactions:POST");
  57. permissionList.Add("Transactions:UnifiedOrder:POST");
  58. permissionList.Add("Transactions:NozzleAuthorization:GET");
  59. permissionList.Add("Transactions:GetMiniProgramTransactionsUnpaidQuery:GET");
  60. permissionList.Add("Transactions:GetMiniProgramTransactionsUnpaidNozzle:GET");
  61. permissionList.Add("Transactions:GetMiniProgramTransactionsPaidQuery:GET");
  62. permissionList.Add("Transactions:RefundTrx:POST");
  63. permissionList.Add("Transactions:WXFindOrders:GET");
  64. permissionList.Add("Transactions:SendMessage:POST");
  65. permissionList.Add("Transactions:GetTransactions:POST");
  66. permissionList.Add("Transactions:GetPrepaymentTransactions:POST");
  67. permissionList.Add("Site:AddMiniprogramUser:POST");
  68. permissionList.Add("Site:GetSiteInfo:GET");
  69. permissionList.Add("Site:GetSiteInformationAndConfiguration:GET");
  70. permissionList.Add("Site:AddSite:POST");
  71. return permissionList;
  72. }
  73. public List<string> GetSitePermissions(string Appid)
  74. {
  75. var Permission = _fsql.Select<AdApply, AdRoleApply, AdRole, AdRolePermission, AdPermission>()
  76. .LeftJoin((a, b, c, d, e) => a.Id == b.OauthApplyID)
  77. .LeftJoin((a, b, c, d, e) => b.OauthRoleID == c.Id)
  78. .LeftJoin((a, b, c, d, e) => c.Id == d.RoleId)
  79. .LeftJoin((a, b, c, d, e) => d.PermissionId == e.Id)
  80. .Where((a, b, c, d, e) => a.Appid == Appid)
  81. .ToList((a, b, c, d, e) => new { e });
  82. var permissionList = new List<string>();
  83. foreach (var permission in Permission)
  84. {
  85. if (permission.e != null)
  86. permissionList.Add(permission.e.Code);
  87. }
  88. permissionList.Add("Nozzle:uploadNozzle:POST");
  89. permissionList.Add("Nozzle:UpdateNozzle:PUT");
  90. permissionList.Add("Nozzle:DeleteNozzle:Delete");
  91. permissionList.Add("Nozzle:UpdateNozzleStatus:PUT");
  92. permissionList.Add("Nozzle:uploadProduct:POST");
  93. permissionList.Add("Nozzle:UpdateProduct:Put");
  94. permissionList.Add("Nozzle:DeleteProduct:Delete");
  95. permissionList.Add("Nozzle:GetFuelNozzleInfoByExternalId:GET");
  96. permissionList.Add("Nozzle:GetFuelNozzleInfoById:GET");
  97. permissionList.Add("Nozzle:uploadTanks:POST");
  98. permissionList.Add("Nozzle:UpdateTanks:Put");
  99. permissionList.Add("Nozzle:DeleteTanks:Delete");
  100. permissionList.Add("Nozzle:NozzleAuthorization:GET");
  101. permissionList.Add("Nozzle:UpdateNozzleAuthorization:PUT");
  102. permissionList.Add("Nozzle:UpdateCancelNozzleAuthorization:PUT");
  103. permissionList.Add("Nozzle:CancelNozzleAuthorization:GET");
  104. permissionList.Add("Transactions:CreateTransactions:POST");
  105. permissionList.Add("Transactions:UnifiedOrder:POST");
  106. permissionList.Add("Transactions:NozzleAuthorization:GET");
  107. permissionList.Add("Transactions:GetMiniProgramTransactionsUnpaidQuery:GET");
  108. permissionList.Add("Transactions:GetMiniProgramTransactionsUnpaidNozzle:GET");
  109. permissionList.Add("Transactions:GetMiniProgramTransactionsPaidQuery:GET");
  110. permissionList.Add("Transactions:RefundTrx:POST");
  111. permissionList.Add("Transactions:WXFindOrders:GET");
  112. permissionList.Add("Transactions:SendMessage:POST");
  113. permissionList.Add("Transactions:GetTransactions:POST");
  114. permissionList.Add("Transactions:GetPrepaymentTransactions:POST");
  115. permissionList.Add("Site:AddMiniprogramUser:POST");
  116. permissionList.Add("Site:GetSiteInfo:GET");
  117. permissionList.Add("Site:GetSiteInformationAndConfiguration:GET");
  118. permissionList.Add("Site:AddSite:POST");
  119. return permissionList;
  120. }
  121. public Task<users> GetUsers()
  122. {
  123. return null;
  124. }
  125. }
  126. }