From f40ba2a9fb9d3c2ece08e9a7cd987d4744dccab2 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期二, 17 六月 2025 15:22:05 +0800 Subject: [PATCH] 优化库内移库,堆垛机和穿梭车交互逻辑 --- 项目代码/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..8603b9d 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