using Estsh.Core.Dapper; using Estsh.Core.IRepositories; using Estsh.Core.Models; using Estsh.Core.Repository.IRepositories; using Estsh.Core.Services.IServices; using Estsh.Core.Util; using System.Collections; /*************************************************************************************************** * * 更新人:sitong.dong * 描述:菜单模块业务类 * 修改时间:2022.06.22 * 修改日志:系统迭代升级 * **************************************************************************************************/ namespace Estsh.Core.Services { /// /// 菜单业务处理类 /// public class PictureDefineService : BaseService, IPictureDefineService { private readonly IPictureDefineRepository repository; public PictureDefineService(IPictureDefineRepository _repository) : base(_repository) { repository = _repository; } /// /// 获取首页菜单列表 /// /// /// public Hashtable getHomeMenuList(SysEmp userInfo, string menuId) { Hashtable result = new Hashtable(); result = repository.getHomeMenuListByUser(userInfo.EmpId, menuId); return result; } /// /// 获取Main页主菜单列表 /// /// /// public Hashtable getMainMenuList(SysEmp userInfo, string menuId) { List menus = repository.getMainMenuListByUser(userInfo.EmpId, menuId); Hashtable result = new Hashtable(); List dataList = new List(); Hashtable node; foreach (var menu in menus) { node = new Hashtable(); node.Add("id", menu.MenuId); node.Add("name", menu.Name != null ? menu.Name : ""); node.Add("className", menu.IconSkin != null ? menu.IconSkin : ""); dataList.Add(node); } result.Add("list", dataList); return result; } /// /// 获取Main页子菜单列表 /// /// /// public Hashtable getChildMenuList(SysEmp userInfo, string menuId, string rootPath) { List menus = repository.getMainMenuListByUser(userInfo.EmpId, menuId); Hashtable result = new Hashtable(); List treeNodes = new List(); TreeNode node; foreach (var menu in menus) { node = new TreeNode(); node.id = menu.MenuId.ToString(); node.name = menu.Name != null ? menu.Name : ""; node.parentId = menu.ParentId.ToString(); node.icon = menu.IconUrl != null ? menu.IconUrl : ""; node.tabUrl = rootPath + (menu.Url != null ? menu.Url : ""); node.target = "frmright"; treeNodes.Add(node); } result.Add("treeNodes", treeNodes); return result; } /// /// 获取非tab的Main页子菜单列表 /// /// /// public Hashtable getNoNTabChildMenuList(SysEmp userInfo, string menuId, string rootPath) { List menus = repository.getMainMenuListByUser(userInfo.EmpId, menuId); Hashtable result = new Hashtable(); List treeNodes = new List(); TreeNode node; foreach (var menu in menus) { node = new TreeNode(); node.id = menu.MenuId.ToString(); node.name = menu.Name != null ? menu.Name : ""; node.parentId = menu.ParentId.ToString(); node.icon = menu.IconUrl != null ? menu.IconUrl : ""; node.url = rootPath + (menu.Url != null ? menu.Url : ""); node.target = "frmright"; treeNodes.Add(node); } result.Add("treeNodes", treeNodes); return result; } /// /// 根据分页条件获取分页菜单数据 /// /// /// /// /// /// public Hashtable getPictureListByPage(String pictureName, Pager pager, String direction, String sort) { Hashtable result = new Hashtable(); String strWhere = " 1=1 "; if (pictureName != null && !pictureName.Trim().Equals("")) { strWhere += " and serial_number like '%" + pictureName.Trim() + "%'"; } String orderBy = ""; if (sort != null && !"".Equals(sort.Trim())) { orderBy += sort + " " + direction; } else { orderBy += " ruid " + direction; } result = repository.getListByPage(pager.pageSize, pager.pageNo, strWhere, orderBy); return result; } } }