public void GridColumnCreate(Dictionary <String, String> dict, Utils.GridName grName) { foreach (var prop in dict) { GridColumn column = new GridColumn(); column.Caption = prop.Value; column.FieldName = prop.Key; spravochGridView.Columns.Add(column); column.Visible = true; column.OptionsColumn.AllowEdit = false; column.OptionsColumn.AllowFocus = false; column.AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near; if ((grName == Utils.GridName.ZoneNames) && (prop.Key == "ZoneColor")) { column.ColumnEdit = repositoryItemColorPickEdit; } } }
public SpravochFm(Utils.GridName aName) { InitializeComponent(); gridName = aName; splashScreenManager.ShowWaitForm(); switch (aName) { case Utils.GridName.Units: unitsService = Program.kernel.Get <IUnitsService>(); unitsBS.DataSource = unitsService.GetUnits(); GridColumnCreate(Utils.dictUnits, gridName); spravochGrid.DataSource = unitsBS; this.Text = "Справочник единиц измерения"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "unitsItem" && c.AccessRightId == 1); //чтение if (access) { AuthorizatedUserAccess(); } break; case Utils.GridName.Users: usersService = Program.kernel.Get <IUsersService>(); usersBS.DataSource = usersService.GetUsers(); GridColumnCreate(Utils.dictUsers, gridName); spravochGrid.DataSource = usersBS; this.Text = "Справочник пользователей"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "usersItem" && c.AccessRightId == 1); break; case Utils.GridName.Contractors: contractorsService = Program.kernel.Get <IContractorsService>(); contractorsBS.DataSource = contractorsService.GetContractors(); GridColumnCreate(Utils.dictContractors, gridName); spravochGrid.DataSource = contractorsBS; this.Text = "Справочник контрагентов"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "contractorsItem" && c.AccessRightId == 1); break; case Utils.GridName.Measures: measuresService = Program.kernel.Get <IMeasuresService>(); measuresBS.DataSource = measuresService.GetMeasures(); GridColumnCreate(Utils.dictMeasures, gridName); spravochGrid.DataSource = measuresBS; this.Text = "Справочник габаритов/размеров"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "measuresItem" && c.AccessRightId == 1); break; case Utils.GridName.Currency: currencyService = Program.kernel.Get <ICurrencyService>(); currencyBS.DataSource = currencyService.GetCurrency(); GridColumnCreate(Utils.dictCurrency, gridName); spravochGrid.DataSource = currencyBS; this.Text = "Справочник валют"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "currencyItem" && c.AccessRightId == 1); break; case Utils.GridName.ZoneNames: zoneNamesService = Program.kernel.Get <IZoneNamesService>(); wareHousesService = Program.kernel.Get <IWareHousesService>(); zoneNamesBS.DataSource = zoneNamesService.GetZones(); GridColumnCreate(Utils.dictZoneNames, gridName); spravochGrid.DataSource = zoneNamesBS; this.Text = "Зоны хранения"; break; case Utils.GridName.StorageGroups: storageGroupsService = Program.kernel.Get <IStorageGroupsService>(); storageGroupsBS.DataSource = storageGroupsService.GetStorageGroups(); GridColumnCreate(Utils.dictStorageGroups, gridName); spravochGrid.DataSource = storageGroupsBS; this.Text = "Складские группы"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "storageGroupsItem" && c.AccessRightId == 1); break; case Utils.GridName.Persons: personsService = Program.kernel.Get <IPersonsService>(); personsBS.DataSource = personsService.GetPersons(); GridColumnCreate(Utils.dictPersons, gridName); spravochGrid.DataSource = personsBS; this.Text = "Ответственные лица"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "personsItem" && c.AccessRightId == 1); break; case Utils.GridName.Profession: professionService = Program.kernel.Get <IProfessionService>(); professionBS.DataSource = professionService.GetProfession(); GridColumnCreate(Utils.dictProfession, gridName); spravochGrid.DataSource = professionBS; this.Text = "Профессии"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "professionItem" && c.AccessRightId == 1); break; case Utils.GridName.Alarms: settingsService = Program.kernel.Get <ISettingsService>(); alarmsBS.DataSource = settingsService.GetAlarms(); GridColumnCreate(Utils.dictAlarms, gridName); spravochGrid.DataSource = alarmsBS; this.Text = "Журнал сообшений об ошибках"; access = UsersService.AuthorizatedUserAccess.Any(c => c.TaskName == "alarmItem" && c.AccessRightId == 1); break; default: break; } if (access) { AuthorizatedUserAccess(); } splashScreenManager.CloseWaitForm(); }