From 966d1fe6077c885db064fcea98bb48cbccb464d6 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期一, 14 十月 2024 17:23:02 +0800
Subject: [PATCH] WCS

---
 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/System/Sys_RoleController.cs |   64 ++++++++++++++++++++++++++++++++
 1 files changed, 64 insertions(+), 0 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/System/Sys_RoleController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/System/Sys_RoleController.cs"
new file mode 100644
index 0000000..28ca857
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/System/Sys_RoleController.cs"
@@ -0,0 +1,64 @@
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Routing;
+using WIDESEA_Core;
+using WIDESEA_Core.BaseController;
+using WIDESEA_Core.BaseRepository;
+using WIDESEA_DTO.System;
+using WIDESEA_IServices;
+using WIDESEA_Model.Models;
+using WIDESEA_Model.Models.System;
+namespace WIDESEA_WMSServer.Controllers{
+
+[Route("api/Sys_Role")]
+[ApiController]
+public class Sys_RoleController : ApiBaseController<ISys_RoleService, Sys_Role>
+{
+    private readonly IHttpContextAccessor _httpContextAccessor;
+
+    public Sys_RoleController(ISys_RoleService service, IHttpContextAccessor httpContextAccessor) : base(service)
+    {
+        _httpContextAccessor = httpContextAccessor;
+    }
+
+    [HttpPost, Route("getUserChildRoles")]
+    public IActionResult GetUserChildRoles()
+    {
+        int roleId = App.User.RoleId;
+        var data = Service.GetAllChildren(roleId);
+
+        if (App.User.IsSuperAdmin)
+        {
+            return Json(WebResponseContent.Instance.OK(null, data));
+        }
+        //涓嶆槸瓒呯骇绠$悊锛屽皢鑷繁鐨勮鑹叉煡鍑烘潵锛屽湪鏍戝舰鑿滃崟涓婁綔涓烘牴鑺傜偣
+        var self = data.Where(x => x.Id == roleId)
+             .Select(s => new RoleNodes()
+             {
+                 Id = s.Id,
+                 ParentId = 0,//灏嗚嚜宸辩殑瑙掕壊浣滀负root鑺傜偣
+                 RoleName = s.RoleName
+             }).ToList();
+        data.AddRange(self);
+        return Json(WebResponseContent.Instance.OK(null, data));
+    }
+
+    [HttpPost, Route("getCurrentTreePermission")]
+    public IActionResult GetCurrentTreePermission()
+    {
+        return Json(Service.GetCurrentTreePermission());
+    }
+
+    [HttpPost, Route("getUserTreePermission")]
+    public IActionResult GetUserTreePermission(int roleId)
+    {
+        return Json(Service.GetUserTreePermission(roleId));
+    }
+
+    [HttpPost, Route("savePermission")]
+    public IActionResult SavePermission([FromBody] List<UserPermissionDTO> userPermissions, int roleId)
+    {
+        return Json(Service.SavePermission(userPermissions, roleId));
+    }
+}
+}
\ No newline at end of file

--
Gitblit v1.9.3