using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using BLL.Dto; using BLL.Dto.AuthDto; using BLL.Manager; using Helper; using HZY.Framework.DependencyInjection; using Sunny.UI; namespace Scada.Page { public partial class PageAuthManage : UIPage, ISingletonSelfDependency { private readonly AuthManager _authManager; public PageAuthManage(AuthManager authManager) { InitializeComponent(); _authManager = authManager; this.Load += PageAuthManage_Load; } private async void PageAuthManage_Load(object sender, EventArgs e) { await LoadAuthAynsc(SystemEnums.UserRole.工程师, cbg_Engineer); await LoadAuthAynsc(SystemEnums.UserRole.访客, cbg_Visitor); await LoadAuthAynsc(SystemEnums.UserRole.操作员, cbg_Operator); } protected override CreateParams CreateParams { get { CreateParams paras = base.CreateParams; paras.ExStyle |= 0x02000000; return paras; } } private async Task LoadAuthAynsc(SystemEnums.UserRole role, UICheckBoxGroup cbg) { var result = await _authManager.GetAuthAsync(new QueryAuthDto() { Role = role.ToString() }); if (result.Result == SystemEnums.Result.Success) { var auths = result.Data[0]; List ints = new List(); if (auths.ControlModule) { ints.Add(0); } if (auths.MonitorModule) { ints.Add(1); } if (auths.RecipeModule) { ints.Add(2); } if (auths.LogModule) { ints.Add(3); } if (auths.ReportModule) { ints.Add(4); } if (auths.ChartModule) { ints.Add(5); } if (auths.ParamModule) { ints.Add(6); } cbg.SelectedIndexes = ints; } else { UIMessageBox.ShowError(result.Msg); } } private async void btn_UpdateEngAuth_Click(object sender, EventArgs e) { var result =await _authManager.GetAuthAsync(new QueryAuthDto() { Role = SystemEnums.UserRole.工程师.ToString() }); var id = result.Data[0].Id; await UpdateAuthAsync(SystemEnums.UserRole.工程师,id, cbg_Engineer); } private async void btn_UpdateOpAuth_Click(object sender, EventArgs e) { var result = await _authManager.GetAuthAsync(new QueryAuthDto() { Role = SystemEnums.UserRole.操作员.ToString() }); var id = result.Data[0].Id; await UpdateAuthAsync(SystemEnums.UserRole.操作员, id, cbg_Operator); } private async void btn_UpdateVisitorAuth_Click(object sender, EventArgs e) { var result = await _authManager.GetAuthAsync(new QueryAuthDto() { Role = SystemEnums.UserRole.访客.ToString() }); var id = result.Data[0].Id; await UpdateAuthAsync(SystemEnums.UserRole.访客, id, cbg_Visitor); } private async Task UpdateAuthAsync(SystemEnums.UserRole role,int id, UICheckBoxGroup cbg) { var authList = new List(); for(int i =0;i