示例#1
0
        private void getRolaData()
        {
            App app;

            string          query       = SqlQueries.getRolaList.Replace("@filter", "");
            List <string[]> appRolaData = dbReader.readFromDB(query).getQueryDataAsStrings();

            foreach (string[] rolaData in appRolaData)
            {
                Rola rola = new Rola();
                rola.id          = rolaData[SqlQueries.getRolaList_rolaIdIndex];
                rola.appId       = rolaData[SqlQueries.getRolaList_rolaAppIdIndex];
                rola.name        = rolaData[SqlQueries.getRolaList_rolaNameIndex];
                rola.description = rolaData[SqlQueries.getRolaList_rolaDescrIndex];
                rola.appName     = rolaData[SqlQueries.getRolaList_rolaAppNameIndex];

                getRolaAppModules(rola);

                rolaDict.Add(rolaData[SqlQueries.getRolaList_rolaIdIndex], rola);

                //dodaję role aplikacji w każdej aplikacji
                appDictionary.TryGetValue(rola.appId, out app);
                app.addRola(rola);
            }
        }
示例#2
0
        public Rola getRola(string rolaId)
        {
            Rola rola = null;;

            if (rolaDict.ContainsKey(rolaId))
            {
                rolaDict.TryGetValue(rolaId, out rola);
            }
            return(rola);
        }
示例#3
0
 /*
  * dodaje jeżeli nie ma, aktualizuje jeżeli jest
  */
 public void addUpdateApp(App app, Rola rola = null)
 {
     if (!userAppDict.ContainsKey(app))
     {
         addApp(app, rola);
     }
     else
     {
         updateApp(app, rola);
     }
 }
示例#4
0
        private void getSelectedRola()
        {
            string           rolaId = "";
            DataGridViewCell cell   = baseDatagrid.CurrentCell;
            int columnIndex         = cell.ColumnIndex;

            if (columnIndex == SqlQueries.getRolaList_rolaIdIndex && cell.Value != null)
            {
                rolaId      = cell.Value.ToString();
                oldRola     = currentRola;
                currentRola = currentApp.getRola(rolaId);
            }
        }
示例#5
0
        private void updateApp(App app, Rola rola)
        {
            AppDataItem appData;

            userAppDict.TryGetValue(app, out appData);
            appData.appName = app.displayName;

            if (rola != null)
            {
                appData.rolaId    = rola.id;
                appData.rolaName  = rola.name;
                appData.rolaDesc  = rola.description;
                appData.isEnabled = true;
            }
        }
示例#6
0
        private void getRolaAppModules(Rola rola)
        {
            AppModule       module;
            string          query          = SqlQueries.getRolaModules + rola.id;
            List <string[]> rolaModuleData = dbReader.readFromDB(query).getQueryDataAsStrings();

            if (rolaModuleData.Count > 0)
            {
                foreach (string[] moduleData in rolaModuleData)
                {
                    moduleDict.TryGetValue(moduleData[SqlQueries.getRolaModules_moduleId], out module);
                    string grantApp = moduleData[SqlQueries.getRolaModules_GrantApp];
                    rola.addModule(module, grantApp);
                }
            }
        }
示例#7
0
        private void addApp(App app, Rola rola = null)
        {
            AppDataItem appData = new AppDataItem(app.id);

            if (rola != null)
            {
                appData.rolaId   = rola.id;
                appData.rolaName = rola.name;
                appData.rolaDesc = rola.description;
            }
            else
            {
                appData.rolaId = "";
            }

            appData.isEnabled = true;
            appData.appName   = app.displayName;
            userAppDict.Add(app, appData);
        }
示例#8
0
        //widok listy ról nie jest wypełniany na starcie, lecz
        //operacja występuje, gdy kliknięta zostanie aplikacja na liście aplikacji
        private void populateRolaListView()
        {
            if (currentSelectedApp != null)
            {
                rolaListView.Enabled = true;
                //resetuję ustawienia widoku listy ról aplikacji
                rolaListView.Items.Clear();

                previousCheckedRola = null;
                currentCheckedRola  = null;
                resetPreviousSelectedAppColour();

                //wypełniam listę rolami, jeżeli są

                App app = null;
                appDictionary.TryGetValue(currentSelectedApp.Name, out app);

                List <string> rolaIdList = app.rolaIdList;
                if (rolaIdList.Count > 0)
                {
                    ListViewItem[] roleRange = new ListViewItem[rolaIdList.Count];
                    Rola           rola      = null;
                    int            i         = 0;

                    foreach (string rolaId in rolaIdList)
                    {
                        rolaDict.TryGetValue(rolaId, out rola);
                        string       name  = rola.name;
                        string       descr = rola.description;
                        ListViewItem item  = new ListViewItem(name);
                        item.Name = rolaId;
                        item.SubItems.Add(descr);
                        roleRange[i] = item;
                        i++;
                    }
                    rolaListView.Items.AddRange(roleRange);

                    //jeżeli zaznaczony użytkownik ma uprawnienia do zaznaczonej aplikacji, wówczas zaznacza się rola tego użytkownika w tej aplikacji
                    checkRolaCheckbox();
                }
            }
        }
示例#9
0
 public void addRola(Rola rola)
 {
     rolaIdList.Add(rola.id);
     rolaList.Add(rola);
     rolaDict.Add(rola.id, rola);
 }