From 41a5531dc31a642623f0a7a766fbe9c256ba9247 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期二, 11 二月 2025 13:53:29 +0800
Subject: [PATCH] 优化WMS前端
---
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_RoleService.cs | 51 ++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 44 insertions(+), 7 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_RoleService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_RoleService.cs"
index c75161f..7526baa 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_RoleService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_RoleService.cs"
@@ -9,6 +9,7 @@
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseRepository;
using WIDESEAWCS_Core.BaseServices;
+using WIDESEAWCS_Core.Helper;
using WIDESEAWCS_Core.HttpContextUser;
using WIDESEAWCS_ISystemRepository;
using WIDESEAWCS_ISystemServices;
@@ -42,7 +43,7 @@
return list;
}
- public List<RoleNodes> GetAllRoleId()
+ public List<RoleNodes> GetAllRoleId()
{
List<RoleNodes> roles = BaseDal.QueryData().Select(s => new RoleNodes() { Id = s.RoleId, ParentId = s.ParentId, RoleName = s.RoleName }).ToList();
@@ -89,7 +90,41 @@
{
return GetUserTreePermission(App.User.RoleId);
}
+ public override WebResponseContent UpdateData(SaveModel saveModel)
+ {
+ var ParentId = saveModel.MainData[nameof(Sys_Role.ParentId).FirstLetterToLower()].ObjToInt();//鐖剁骇ID
+ var RoleId = saveModel.MainData[nameof(Sys_Role.RoleId).FirstLetterToLower()].ObjToInt();//瑙掕壊ID
+ if (RoleId == ParentId) return WebResponseContent.Instance.Error("鏃犳搷浣滄潈闄�");
+ if (App.User.RoleId == RoleId) return WebResponseContent.Instance.Error("鏃犳搷浣滄潈闄�");
+ return base.UpdateData(saveModel);
+ }
+ public override PageGridData<Sys_Role> GetPageData(PageDataOptions options)
+ {
+ PageGridData<Sys_Role> pageGridData = new PageGridData<Sys_Role>();
+ if (App.User.IsSuperAdmin)
+ {
+ var GridData = base.GetPageData(options);
+ pageGridData = new PageGridData<Sys_Role>()
+ {
+ Rows = options.Order?.ToLower() == OrderByType.Asc.ToString().ToLower() ? GridData.Rows.OrderBy(x => x.RoleId).ToList() : GridData.Rows,
+ Total = GridData.Total
+ };
+ return pageGridData;
+ }
+ var roleIds = GetAllChildren(App.User.RoleId).Select(x => x.Id);
+ //鏍戝舰鑿滃崟浼犳煡璇㈣鑹蹭笅鎵�鏈夌敤鎴�
+ string where = ValidatePageOptions(options);
+
+ int total = 0;
+ pageGridData = new PageGridData<Sys_Role>()
+ {
+ Rows = BaseDal.Db.Queryable<Sys_Role>().Where(x => roleIds.Contains(x.RoleId)).Where(where).OrderBy(x => x.RoleId).ToPageList(options.Page, options.Rows),
+ Total = total
+ };
+
+ return pageGridData;
+ }
/// <summary>
/// 缂栬緫鏉冮檺鏃讹紝鑾峰彇鎸囧畾瑙掕壊鐨勬墍鏈夎彍鍗曟潈闄�
/// </summary>
@@ -107,7 +142,7 @@
//鑾峰彇鐢ㄦ埛鏉冮檺
List<Permissions> permissions = _MenuRepository.GetPermissions(roleId);
//鏉冮檺鐢ㄦ埛鏉冮檺鏌ヨ鎵�鏈夌殑鑿滃崟淇℃伅
- List<Sys_Menu> menus = _MenuService.GetUserMenuList(roleId);
+ List<Sys_Menu> menus = _MenuService.GetUserMenuList(roleId);
//鑾峰彇褰撳墠鐢ㄦ埛鏉冮檺濡�:(Add,Search)瀵瑰簲鐨勬樉绀烘枃鏈俊鎭:Add锛氭坊鍔狅紝Search:鏌ヨ
var data = menus.Select(x => new
{
@@ -132,7 +167,9 @@
string message = "";
try
{
- if (!GetAllChildren(App.User.RoleId).Exists(x => x.Id == roleId))
+ var RoleNodes = GetAllChildren(App.User.RoleId);
+ RoleNodes = RoleNodes.Where(x => x.Id != App.User.RoleId).ToList();
+ if (!RoleNodes.Exists(x => x.Id == roleId) /*&& !App.User.IsRoleIdSuperAdmin(App.User.RoleId)*/)
return WebResponseContent.Instance.Error("娌℃湁鏉冮檺淇敼姝よ鑹茬殑鏉冮檺淇℃伅");
//褰撳墠鐢ㄦ埛鐨勬潈闄�
List<Permissions> permissions = _MenuRepository.GetPermissions(App.User.RoleId);
@@ -177,9 +214,9 @@
}
//鏇存柊鏉冮檺
- _RoleAuthRepository.UpdateData(updateAuths);
+ _RoleAuthRepository.UpdateData(updateAuths.Where(x => x.AuthId > 0).ToList());
//鏂板鐨勬潈闄�
- _RoleAuthRepository.AddData(updateAuths);
+ _RoleAuthRepository.AddData(updateAuths.Where(x => x.AuthId <= 0).ToList());
//鑾峰彇鏉冮檺鍙栨秷鐨勬潈闄�
int[] authIds = roleAuths.Where(x => userPermissions.Select(u => u.Id)
@@ -192,11 +229,11 @@
x.AuthValue = "";
});
//灏嗗彇娑堢殑鏉冮檺璁剧疆涓�""
- _RoleAuthRepository.UpdateData(delAuths);
+ _RoleAuthRepository.DeleteData(delAuths);
int addCount = updateAuths.Where(x => x.AuthId <= 0).Count();
int updateCount = updateAuths.Where(x => x.AuthId > 0).Count();
-
+
string _version = DateTime.Now.ToString("yyyyMMddHHMMssfff");
--
Gitblit v1.9.3