WCS
dengjunjie
2024-10-14 966d1fe6077c885db064fcea98bb48cbccb464d6
项目代码/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));
    }
}
}