using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using FineAdmin.Common; using FineAdmin.IRepository; using FineAdmin.IService; using FineAdmin.Model; namespace FineAdmin.Service { public class ButtonService : BaseService, IButtonService { public IButtonRepository ButtonRepository { get; set; } /// /// 根据角色菜单按钮位置获得按钮列表 /// /// /// /// /// public IEnumerable GetButtonListByRoleIdModuleId(int roleId, int moduleId, PositionEnum position) { return ButtonRepository.GetButtonListByRoleIdModuleId(roleId, moduleId, position); } /// /// 根据角色菜单获得按钮列表Html /// /// /// /// public string GetButtonListHtmlByRoleIdModuleId(int roleId, int moduleId) { IEnumerable selectList = null; var allList = ButtonRepository.GetButtonListByRoleIdModuleId(roleId, moduleId, out selectList); StringBuilder sb = new StringBuilder(); if (allList != null && allList.Count() > 0) { foreach (var item in allList) { var checkedStr = selectList.FirstOrDefault(x => x.Id == item.Id) == null ? "" : "checked"; sb.AppendFormat("", moduleId, item.Id, item.FullName, checkedStr); } } return sb.ToString(); } public dynamic GetListByFilter(ButtonModel filter, PageInfo pageInfo) { string _where = " where 1=1"; if (!string.IsNullOrEmpty(filter.EnCode)) { _where += " and EnCode=:EnCode"; } if (!string.IsNullOrEmpty(filter.FullName)) { _where += " and FullName=:FullName"; } return GetListByFilter(filter, pageInfo, _where); } } }