From 86722aca20973a1e73d0a446c124eb6a5790496b Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期二, 17 十二月 2024 09:34:17 +0800 Subject: [PATCH] 任务优化,工单状态修改优化 --- Tiger.Business/SYS/Biz.SYS_MENU.cs | 148 ++++++++++++++++++++++++++++--------------------- 1 files changed, 84 insertions(+), 64 deletions(-) diff --git a/Tiger.Business/SYS/Biz.SYS_MENU.cs b/Tiger.Business/SYS/Biz.SYS_MENU.cs index 903b3db..85b388d 100644 --- a/Tiger.Business/SYS/Biz.SYS_MENU.cs +++ b/Tiger.Business/SYS/Biz.SYS_MENU.cs @@ -29,7 +29,7 @@ JoinType.Inner, p.USERGROUP_CODE == r.USERGROUP_CODE, JoinType.Inner, r.ROLE_CODE == m.ROLE_CODE, JoinType.Inner, m.FUNC_CODE == f.ID)) - .WhereIF(!string.IsNullOrEmpty(userid), (t, p, g, r, m, f) => t.USER_ID == userid && f.IS_USE =="1" && f.FUNC_TYPE != "2") + .WhereIF(!string.IsNullOrEmpty(userid), (t, p, g, r, m, f) => t.USER_ID == userid && f.IS_USE == "1" && f.FUNC_TYPE != "2") .Select((t, p, g, r, m, f) => new SYS_MENU { ID = f.ID, @@ -51,10 +51,10 @@ UPDATE_USER = f.UPDATE_USER, UPDATE_TIME = f.UPDATE_TIME, SYMBOLIC_NAME = f.SYMBOLIC_NAME, - COMPONENT=f.COMPONENT, - CURRENTACTIVEMENU=f.CURRENTACTIVEMENU, - SHOW=f.SHOW, - IGNOREKEEPALIVE=f.IGNOREKEEPALIVE, + COMPONENT = f.COMPONENT, + CURRENTACTIVEMENU = f.CURRENTACTIVEMENU, + SHOW = f.SHOW, + IGNOREKEEPALIVE = f.IGNOREKEEPALIVE, IGNOREAUTH = f.IGNOREAUTH, BUTTON_TYPE = f.BUTTON_TYPE, DO_METHOD = f.DO_METHOD, @@ -69,6 +69,11 @@ menuItem.path = (item.PATH ?? "").StartsWith("/dashboard") ? "/dashboard" : $"{item.PATH}"; menuItem.name = item.FUNC_NAME; menuItem.component = (item.PATH == null || item.PATH == "#") ? "LAYOUT" : item.COMPONENT; + if (item.FUNC_CLASS == "PDA") + { + menuItem.pages = menuItem.component; + menuItem.url = item.ICON_URL; + } menuItem.meta = new(); menuItem.meta.icon = item.ICON_URL; // item.ICON_URL; menuItem.meta.orderNo = item.SEQ_NO; @@ -100,7 +105,7 @@ menuItem.menuName = item.FUNC_NAME; menuItem.status = item.IS_USE; menuItem.btnType = item.BUTTON_TYPE; - menuItem.doMethod = item.DO_METHOD; + menuItem.func_group = item.FUNC_GROUP; menuItem.children = new(); GetMenuItem(items.ToList(), item.FUNC_CODE, ref menuItem); data.Add(menuItem); @@ -121,62 +126,70 @@ SYS_MENU func = null; if (!string.IsNullOrEmpty(menuName)) { - func = Biz.Db.Queryable<SYS_MENU>().Where(x => x.FUNC_NAME == menuName).First(); + string name = menuName.StartsWith("BS")?"BS": menuName; + func = Biz.Db.Queryable<SYS_MENU>().Where(x => x.FUNC_NAME == name).First(); } - string rootCode = func == null ? "0" : func.FUNC_CODE; - var items = await Biz.Db.Queryable<SYS_MENU>() - .WhereIF(!string.IsNullOrEmpty(status),q=>q.IS_USE == status) - .OrderBy(x => x.SEQ_NO) - .Distinct().ToListAsync(); - List<SYS_MENU> entities = items.OrderBy(x => x.SEQ_NO).ToList().FindAll(t => t.PFUNC_CODE == rootCode); - foreach (var item in entities) + if (func != null) { - MenuItem menuItem = new(); - menuItem.id = item.ID; - menuItem.func_code = item.FUNC_CODE; - menuItem.path = (item.PATH ?? "").StartsWith("/dashboard") ? "/dashboard" : $"{item.PATH}"; - menuItem.name = item.FUNC_NAME; - menuItem.component = (item.PATH == null || item.PATH == "#") ? "LAYOUT" : item.COMPONENT; - menuItem.meta = new(); - menuItem.meta.icon = item.ICON_URL; // item.ICON_URL; - menuItem.meta.orderNo = item.SEQ_NO; - menuItem.meta.title = item.FUNC_NAME; - menuItem.meta.menuId = item.ID; - menuItem.meta.menuCode = item.FUNC_CODE; - menuItem.meta.btnType = item.BUTTON_TYPE; - menuItem.meta.doMethod = item.DO_METHOD; - if (!string.IsNullOrEmpty(item.IGNOREKEEPALIVE)) + var items = await Biz.Db.Queryable<SYS_MENU>() + .WhereIF(!string.IsNullOrEmpty(status), q => q.IS_USE == status) + .OrderBy(x => x.SEQ_NO) + .Distinct().ToListAsync(); + List<SYS_MENU> entities = items.OrderBy(x => x.SEQ_NO).ToList().FindAll(t => t.PFUNC_CODE == func.FUNC_CODE); + foreach (var item in entities) { - menuItem.meta.ignoreKeepAlive = item.IGNOREKEEPALIVE == "0" ? true : false; + MenuItem menuItem = new(); + menuItem.id = item.ID; + menuItem.func_code = item.FUNC_CODE; + menuItem.path = (item.PATH ?? "").StartsWith("/dashboard") ? "/dashboard" : $"{item.PATH}"; + menuItem.name = item.FUNC_NAME; + menuItem.component = (item.PATH == null || item.PATH == "#") ? "LAYOUT" : item.COMPONENT; + if (item.FUNC_CLASS == "PDA") + { + menuItem.pages = menuItem.component; + menuItem.url = item.ICON_URL; + } + menuItem.meta = new(); + menuItem.meta.icon = item.ICON_URL; // item.ICON_URL; + menuItem.meta.orderNo = item.SEQ_NO; + menuItem.meta.title = item.FUNC_NAME; + menuItem.meta.menuId = item.ID; + menuItem.meta.menuCode = item.FUNC_CODE; + menuItem.meta.btnType = item.BUTTON_TYPE; + menuItem.meta.doMethod = item.DO_METHOD; + if (!string.IsNullOrEmpty(item.IGNOREKEEPALIVE)) + { + menuItem.meta.ignoreKeepAlive = item.IGNOREKEEPALIVE == "0" ? true : false; + } + if (!string.IsNullOrEmpty(item.CURRENTACTIVEMENU)) + { + menuItem.meta.currentActiveMenu = item.CURRENTACTIVEMENU; + } + if (!string.IsNullOrEmpty(item.SHOW)) + { + menuItem.meta.hideMenu = item.SHOW == "1" ? true : false; + menuItem.meta.showMenu = item.SHOW == "0" ? true : false; + } + if (!string.IsNullOrEmpty(item.IGNOREAUTH)) + { + menuItem.meta.ignoreAuth = item.IGNOREAUTH == "Y"; + } + menuItem.keepalive = item.IGNOREKEEPALIVE; + menuItem.show = item.SHOW; + menuItem.menuName = item.FUNC_NAME; + menuItem.createTime = item.CREATE_TIME; + menuItem.status = item.IS_USE; + menuItem.icon = menuItem.meta.icon; + menuItem.func_type = item.FUNC_TYPE; + menuItem.func_group = item.FUNC_GROUP; + menuItem.btnType = item.BUTTON_TYPE; + menuItem.parentMenu = item.PFUNC_CODE; + menuItem.orderNo = item.SEQ_NO; + menuItem.children = null; + GetMenuItem(items, item.FUNC_CODE, ref menuItem); + data.Add(menuItem); } - if (!string.IsNullOrEmpty(item.CURRENTACTIVEMENU)) - { - menuItem.meta.currentActiveMenu = item.CURRENTACTIVEMENU; - } - if (!string.IsNullOrEmpty(item.SHOW)) - { - menuItem.meta.hideMenu = item.SHOW == "1" ? true : false; - menuItem.meta.showMenu = item.SHOW == "0" ? true : false; - } - if (!string.IsNullOrEmpty(item.IGNOREAUTH)) - { - menuItem.meta.ignoreAuth = item.IGNOREAUTH == "Y"; - } - menuItem.keepalive = item.IGNOREKEEPALIVE; - menuItem.show = item.SHOW; - menuItem.menuName = item.FUNC_NAME; - menuItem.createTime = item.CREATE_TIME; - menuItem.status = item.IS_USE; - menuItem.icon = menuItem.meta.icon; - menuItem.func_type = item.FUNC_TYPE; - menuItem.btnType = item.BUTTON_TYPE; - menuItem.doMethod = item.DO_METHOD; - menuItem.parentMenu = item.PFUNC_CODE; - menuItem.orderNo = item.SEQ_NO; - menuItem.children = null; - GetMenuItem(items, item.FUNC_CODE, ref menuItem); - data.Add(menuItem); - } + }; //杞崲Json鏃讹紝鍘婚櫎鍊间负null鐨勫睘鎬� var jsonSetting = new JsonSerializerSettings { DefaultValueHandling = DefaultValueHandling.Ignore, NullValueHandling = NullValueHandling.Ignore }; @@ -215,6 +228,7 @@ func.COMPONENT = string.IsNullOrEmpty(data.component) && data.func_type == "0" ? "LAYOUT" : data.component; func.IGNOREKEEPALIVE = data.keepalive; func.SHOW = data.show; + func.FUNC_GROUP = data.func_group; //func.CURRENTACTIVEMENU = data.keepalive } else @@ -225,12 +239,12 @@ FUNC_CODE = Guid.NewGuid().ToString("N"), FUNC_NAME = data.menuName, FUNC_DESC = data.menuName, - FUNC_GROUP = "", + FUNC_GROUP = data.func_group, FUNC_TYPE = data.func_type, BUTTON_TYPE = data.btnType, DO_METHOD = data.doMethod, PFUNC_CODE = data.parentMenu, - FUNC_CLASS = "BS", + FUNC_CLASS = data.func_class?? "BS", PATH = data.path, ICON_URL = data.icon, SEQ_NO = (int)data.orderNo, @@ -246,7 +260,7 @@ db.Updateable(func, "system").ExecuteCommand(); } //鏂板 - else + else { db.Insertable(func, "system").ExecuteCommand(); //濡傛灉鏄柊澧炵殑鑿滃崟锛屾煡鍑烘墍鏈夌埗绾ф洿鏂颁负鍗婇�� @@ -266,7 +280,7 @@ } catch (System.Exception ex) { - + } return apiAction; } @@ -290,6 +304,11 @@ menuItem.path = (item.PATH ?? "").StartsWith("/dashboard") ? "/dashboard" : $"{item.PATH}"; menuItem.name = item.FUNC_NAME; menuItem.component = (item.PATH == null || item.PATH == "#") ? "LAYOUT" : item.COMPONENT; + if (item.FUNC_CLASS == "PDA") + { + menuItem.pages = menuItem.component; + menuItem.url = item.ICON_URL; + } menuItem.meta = new(); menuItem.meta.icon = item.ICON_URL; //item.ICON_URL; menuItem.meta.orderNo = item.SEQ_NO; @@ -324,6 +343,7 @@ menuItem.btnType = item.BUTTON_TYPE; menuItem.doMethod = item.DO_METHOD; menuItem.parentMenu = item.PFUNC_CODE; + menuItem.func_group = item.FUNC_GROUP; menuItem.orderNo = item.SEQ_NO; menuItem.status = item.IS_USE; menuItem.children = null; @@ -334,7 +354,7 @@ } } - private static void GetRootMenu(SYS_MENU menu,ref List<SYS_MENU> items) + private static void GetRootMenu(SYS_MENU menu, ref List<SYS_MENU> items) { SYS_MENU menuRet = null; try @@ -342,7 +362,7 @@ menuRet = Biz.Db.Queryable<SYS_MENU>().Where(q => q.FUNC_CODE == menu.PFUNC_CODE && q.FUNC_CODE != "system01").Single(); //23858079-7241-4e64-b0cf-eb5dbe84a9d6 if (menuRet != null) { - if (!items.Where(x=>x.FUNC_CODE == menuRet.FUNC_CODE).Any()) + if (!items.Where(x => x.FUNC_CODE == menuRet.FUNC_CODE).Any()) { items.Add(menuRet); } -- Gitblit v1.9.3