using DesktopTools.Controls; using DesktopTools.Models; using ModelTools.BusinessLogics; using ModelTools.Enums; using SecurityBusinessLogic.BindingModels; using SecurityBusinessLogic.BusinessLogics; using SecurityBusinessLogic.ViewModels; using System; using System.Data; using System.Linq; namespace SecurityWindowsDesktop.Controls { public partial class AccessesControl : AbstractGenerticControlEntityList { private readonly RoleBusinessLogic _roleBusinessLogic; public AccessesControl() { InitializeComponent(); _businessLogic = UnityContainerConfigurator.Resolve(); _roleBusinessLogic = UnityContainerConfigurator.Resolve(); Title = "Доступы"; Id = new Guid("6eebc4c4-cb86-4368-93e0-33dbdbb7409a"); Order = 1; AccessOperation = AccessOperation.Доступы; } public override ControlViewEntityList Clone() => new AccessesControl() { Id = Guid.NewGuid() }; protected override ControlViewEntityListConfiguration GetConfig() => new() { PaginationOn = true, PageNamesForPagination = _roleBusinessLogic.GetList(new RoleGetBindingModel())?.List?.Select(x => x.RoleName)?.ToList() }; protected override AccessListViewModel GetDataWithPageName(string key) { var list = _businessLogic.GetList(new AccessGetBindingModel { RoleName = key }); return list; } } }