示例#1
0
        /*----------------------------------------------------------------------------------------------------------------------------------
        * UserPrivileges
        *---------------------------------------------------------------------------------------------------------------------------------*/
        private questStatus create(FMSEntities dbContext, GroupPrivilege groupPrivilege, out GroupPrivilegeId groupPrivilegeId)
        {
            // Initialize
            groupPrivilegeId = null;


            // Perform create
            try
            {
                Quest.Services.Dbio.FMS.GroupPrivileges _groupPrivileges = new Quest.Services.Dbio.FMS.GroupPrivileges();
                _groupPrivileges.PrivilegeId = groupPrivilege.Privilege.Id;
                _groupPrivileges.GroupId     = groupPrivilege.Group.Id;
                _groupPrivileges.Created     = DateTime.Now;
                dbContext.GroupPrivileges.Add(_groupPrivileges);
                dbContext.SaveChanges();
                if (_groupPrivileges.Id == 0)
                {
                    return(new questStatus(Severity.Error, "GroupPrivilege not created"));
                }
                groupPrivilegeId = new GroupPrivilegeId(_groupPrivileges.Id);
            }
            catch (System.Exception ex)
            {
                return(new questStatus(Severity.Fatal, String.Format("EXCEPTION: {0}.{1}: {2}",
                                                                     this.GetType().Name, MethodBase.GetCurrentMethod().Name,
                                                                     ex.InnerException != null ? ex.InnerException.Message : ex.Message)));
            }
            return(new questStatus(Severity.Success));
        }
示例#2
0
        private questStatus update(FMSEntities dbContext, GroupPrivilege groupPrivilege)
        {
            // Initialize
            questStatus status = null;


            try
            {
                // Read the record.
                GroupPrivilegeId groupPrivilegeId = new GroupPrivilegeId(groupPrivilege.Id);
                Quest.Services.Dbio.FMS.GroupPrivileges _groupPrivileges = null;
                status = read(dbContext, groupPrivilegeId, out _groupPrivileges);
                if (!questStatusDef.IsSuccess(status))
                {
                    return(status);
                }

                // Update the record.
                BufferMgr.TransferBuffer(groupPrivilege, _groupPrivileges);
                dbContext.SaveChanges();
            }
            catch (System.Exception ex)
            {
                return(new questStatus(Severity.Fatal, String.Format("EXCEPTION: {0}.{1}: {2}",
                                                                     this.GetType().Name, MethodBase.GetCurrentMethod().Name,
                                                                     ex.InnerException != null ? ex.InnerException.Message : ex.Message)));
            }
            return(new questStatus(Severity.Success));
        }
示例#3
0
 /// <summary>
 /// Creates a/an GroupPrivilege.
 /// </summary>
 /// <param name="entity"></param>
 /// <returns>Returns the GroupPrivilege that was created in the database.</returns>
 public GroupPrivilege CreateGroupPrivilege(GroupPrivilege entity)
 {
     try
     {
         return(repo.Create <GroupPrivilege>(entity));
     }
     catch (Exception ex)
     {
         repo.LogError(ex);
         throw ex;
     }
 }
        public questStatus Update(DbMgrTransaction trans, GroupPrivilege groupPrivilege)
        {
            // Initialize
            questStatus status = null;


            // Update groupPrivilege
            status = _dbGroupPrivilegesMgr.Update(trans, groupPrivilege);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
        public questStatus Read(GroupPrivilegeId groupPrivilegeId, out GroupPrivilege groupPrivilege)
        {
            // Initialize
            groupPrivilege = null;
            questStatus status = null;


            // Read groupPrivilege
            status = _dbGroupPrivilegesMgr.Read(groupPrivilegeId, out groupPrivilege);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
示例#6
0
        public questStatus Update(DbMgrTransaction trans, GroupPrivilege groupPrivilege)
        {
            // Initialize
            questStatus status             = null;
            bool        bCreateTransaction = trans == null;


            // Perform update in this transaction.
            status = update((FMSEntities)trans.DbContext, groupPrivilege);
            if (!questStatusDef.IsSuccess(status))
            {
                RollbackTransaction(trans);
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
示例#7
0
        public questStatus List(QueryOptions queryOptions, out List <GroupPrivilege> groupPrivilegeList, out QueryResponse queryResponse)
        {
            // Initialize
            questStatus status = null;

            groupPrivilegeList = null;
            queryResponse      = null;


            using (FMSEntities dbContext = new FMSEntities())
            {
                using (DbContextTransaction tx = dbContext.Database.BeginTransaction(IsolationLevel.ReadUncommitted))
                {
                    try
                    {
                        PropertyInfo[] dbProperties = typeof(Quest.Services.Dbio.FMS.GroupPrivileges).GetProperties().ToArray();
                        List <Quest.Services.Dbio.FMS.GroupPrivileges> _groupPrivilegesList = dbContext.GroupPrivileges.Where(BuildWhereClause(queryOptions, dbProperties))
                                                                                              .OrderBy(BuildSortString(queryOptions.SortColumns))
                                                                                              .Skip(queryOptions.Paging.PageSize * (queryOptions.Paging.PageNumber - 1))
                                                                                              .Take(queryOptions.Paging.PageSize).ToList();
                        if (_groupPrivilegesList == null)
                        {
                            return(new questStatus(Severity.Warning));
                        }
                        groupPrivilegeList = new List <GroupPrivilege>();
                        foreach (Quest.Services.Dbio.FMS.GroupPrivileges _groupPrivileges in _groupPrivilegesList)
                        {
                            GroupPrivilege groupPrivilege = new GroupPrivilege();
                            BufferMgr.TransferBuffer(_groupPrivileges, groupPrivilege);
                            groupPrivilegeList.Add(groupPrivilege);
                        }
                        status = BuildQueryResponse(_groupPrivilegesList.Count, queryOptions, out queryResponse);
                        if (!questStatusDef.IsSuccess(status))
                        {
                            return(status);
                        }
                    }
                    catch (System.Exception ex)
                    {
                        return(new questStatus(Severity.Fatal, String.Format("EXCEPTION: {0}.{1}: {2}",
                                                                             this.GetType().Name, MethodBase.GetCurrentMethod().Name,
                                                                             ex.InnerException != null ? ex.InnerException.Message : ex.Message)));
                    }
                }
            }
            return(new questStatus(Severity.Success));
        }
        public questStatus Create(DbMgrTransaction trans, GroupPrivilege groupPrivilege, out GroupPrivilegeId groupPrivilegeId)
        {
            // Initialize
            questStatus status = null;

            groupPrivilegeId = null;



            // Create groupPrivilege
            status = _dbGroupPrivilegesMgr.Create(trans, groupPrivilege, out groupPrivilegeId);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
示例#9
0
        public questStatus Update(GroupPrivilege groupPrivilege)
        {
            // Initialize
            questStatus status = null;


            // Perform update.
            using (FMSEntities dbContext = new FMSEntities())
            {
                status = update(dbContext, groupPrivilege);
                if (!questStatusDef.IsSuccess(status))
                {
                    return(status);
                }
            }
            return(new questStatus(Severity.Success));
        }
示例#10
0
        public static GroupPrivilege GetUserPrivilegeForGroup(int groupId, int userId, string appType)
        {
            var groupPrivilege = new GroupPrivilege();

            var sql = "SELECT * FROM " + TblGroupsForUsers + " WHERE UserID = '" + userId + "' AND AppType = '" + appType + "' ; COMMIT;";

            var reader = GetReader(sql);

            if (reader != null)
            {
                while (reader.Read())
                {
                    Enum.TryParse(reader.GetString(8), out groupPrivilege);
                }
                reader.Close();
            }

            return(groupPrivilege);
        }
示例#11
0
        public questStatus Create(DbMgrTransaction trans, GroupPrivilege groupPrivilege, out GroupPrivilegeId groupPrivilegeId)
        {
            // Initialize
            questStatus status = null;

            groupPrivilegeId = null;


            // Data rules.
            groupPrivilege.Created = DateTime.Now;


            // Create the groupPrivilege in this transaction.
            status = create((FMSEntities)trans.DbContext, groupPrivilege, out groupPrivilegeId);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            return(new questStatus(Severity.Success));
        }
示例#12
0
        public questStatus Read(DbMgrTransaction trans, GroupPrivilegeId groupPrivilegeId, out GroupPrivilege groupPrivilege)
        {
            // Initialize
            questStatus status = null;

            groupPrivilege = null;


            // Perform read
            Quest.Services.Dbio.FMS.GroupPrivileges _groupPrivileges = null;
            status = read((FMSEntities)trans.DbContext, groupPrivilegeId, out _groupPrivileges);
            if (!questStatusDef.IsSuccess(status))
            {
                return(status);
            }
            groupPrivilege = new GroupPrivilege();
            BufferMgr.TransferBuffer(_groupPrivileges, groupPrivilege);

            return(new questStatus(Severity.Success));
        }
示例#13
0
        private void ui_listBox_groups_SelectedIndexChanged(object sender, EventArgs e)
        {
            //ui_listBox_symbolsInGroup.Items.Clear();
            ui_buttonX_delGroup.Enabled  = true;
            ui_buttonX_editGroup.Enabled = true;
            ui_buttonX_join.Enabled      = true;
            if (ui_listBox_groups.SelectedItems.Count <= 0)
            {
                return;
            }

            var privilege = new GroupPrivilege();
            int groupId   = 0;

            for (int i = 0; i < ui_listBox_groups.SelectedItems.Count; i++)
            {
                var groupName = ui_listBox_groups.SelectedItems[i].ToString();

                groupId   = _groups.Find(a => a.GroupName == groupName).GroupId;
                privilege = ClientDatabaseManager.GetUserPrivilegeForGroup(groupId, _userID, ApplicationType.DataNet.ToString());

                if (privilege != GroupPrivilege.Creator)
                {
                    ui_buttonX_delGroup.Enabled  = false;
                    ui_buttonX_editGroup.Enabled = false;
                    ui_buttonX_join.Enabled      = false;
                }
            }

            /*
             * if (ui_listBox_groups.SelectedItems.Count == 1 && privilege != GroupPrivilege.UseGroup)
             * {
             *  var symbolsForCurrGroup = DatabaseManager.GetSymbolsInGroup(groupId);
             *
             *  foreach (var symbolModel in symbolsForCurrGroup)
             *  {
             *      ui_listBox_symbolsInGroup.Items.Add(symbolModel.SymbolName);
             *  }
             * }*/
        }
示例#14
0
        /*==================================================================================================================================
        * Properties
        *=================================================================================================================================*/
        #endregion


        #region Public Methods

        /*==================================================================================================================================
        * Public Methods
        *=================================================================================================================================*/
        public questStatus Create(GroupPrivilege groupPrivilege, out GroupPrivilegeId groupPrivilegeId)
        {
            // Initialize
            questStatus status = null;

            groupPrivilegeId = null;


            // Data rules.
            groupPrivilege.Created = DateTime.Now;


            // Create the groupPrivilege
            using (FMSEntities dbContext = new FMSEntities())
            {
                status = create(dbContext, groupPrivilege, out groupPrivilegeId);
                if (!questStatusDef.IsSuccess(status))
                {
                    return(status);
                }
            }
            return(new questStatus(Severity.Success));
        }
示例#15
0
    public void PrintNodesRecursive(TreeViewNode oParentNode, int group)
    {
        var x = oParentNode.Text;

        foreach (TreeViewNode SubNode in oParentNode.Nodes)
        {
            using (CultureDataContext db = new CultureDataContext())
            {
                foreach (TreeViewNode item in SubNode.Nodes)
                {
                    if (item.Checked)
                    {
                        if (item.Text == "عرض")
                        {
                            var            optionsByPage = db.SystemPageFunctions.FirstOrDefault(p => p.SystemPageFunction_PageID.Equals(Convert.ToInt32(SubNode.Name.Replace('p', ' ').Trim())) && p.SystemPageFunction_FunctionID == (int)FunctionsEnum.Show);
                            GroupPrivilege a             = new GroupPrivilege
                            {
                                GroupPrivilege_PageFunctionID = optionsByPage.SystemPageFunction_ID,
                                GroupPrivilege_GroupID        = group
                            };
                            db.GroupPrivileges.InsertOnSubmit(a);
                        }
                        else if (item.Text == "اضافة")
                        {
                            var            optionsByPage = db.SystemPageFunctions.FirstOrDefault(p => p.SystemPageFunction_PageID.Equals(Convert.ToInt32(SubNode.Name.Replace('p', ' ').Trim())) && p.SystemPageFunction_FunctionID == (int)FunctionsEnum.Add);
                            GroupPrivilege a             = new GroupPrivilege
                            {
                                GroupPrivilege_PageFunctionID = optionsByPage.SystemPageFunction_ID,
                                GroupPrivilege_GroupID        = group
                            };
                            db.GroupPrivileges.InsertOnSubmit(a);
                        }
                        else if (item.Text == "تعديل")
                        {
                            var            optionsByPage = db.SystemPageFunctions.FirstOrDefault(p => p.SystemPageFunction_PageID.Equals(Convert.ToInt32(SubNode.Name.Replace('p', ' ').Trim())) && p.SystemPageFunction_FunctionID == (int)FunctionsEnum.Edit);
                            GroupPrivilege a             = new GroupPrivilege
                            {
                                GroupPrivilege_PageFunctionID = optionsByPage.SystemPageFunction_ID,
                                GroupPrivilege_GroupID        = group
                            };
                            db.GroupPrivileges.InsertOnSubmit(a);
                        }
                        else if (item.Text == "حذف")
                        {
                            var            optionsByPage = db.SystemPageFunctions.FirstOrDefault(p => p.SystemPageFunction_PageID.Equals(Convert.ToInt32(SubNode.Name.Replace('p', ' ').Trim())) && p.SystemPageFunction_FunctionID == (int)FunctionsEnum.Delete);
                            GroupPrivilege a             = new GroupPrivilege
                            {
                                GroupPrivilege_PageFunctionID = optionsByPage.SystemPageFunction_ID,
                                GroupPrivilege_GroupID        = group
                            };
                            db.GroupPrivileges.InsertOnSubmit(a);
                        }
                        else if (item.Text == "فهرسة")
                        {
                            var            optionsByPage = db.SystemPageFunctions.FirstOrDefault(p => p.SystemPageFunction_PageID.Equals(Convert.ToInt32(SubNode.Name.Replace('p', ' ').Trim())) && p.SystemPageFunction_FunctionID == (int)FunctionsEnum.Index);
                            GroupPrivilege a             = new GroupPrivilege
                            {
                                GroupPrivilege_PageFunctionID = optionsByPage.SystemPageFunction_ID,
                                GroupPrivilege_GroupID        = group
                            };
                            db.GroupPrivileges.InsertOnSubmit(a);
                        }
                    }
                }

                db.SubmitChanges();
            }
        }
        ++z;
        if (z < tvPermissions.Nodes.Count)
        {
            TreeViewNode MainNode = tvPermissions.Nodes[z];
            PrintNodesRecursive(MainNode, group);
        }
    }
        public static GroupPrivilege GetUserPrivilegeForGroup(int groupId, int userId, string appType)
        {
            var groupPrivilege = new GroupPrivilege();

            var sql = "SELECT * FROM " + TblGroupsForUsers + " WHERE UserID = '" + userId + "' AND AppType = '" + appType + "' AND GroupID = " + groupId + " ; COMMIT;";

            var reader = GetReader(sql);
            if (reader != null)
            {
                while (reader.Read())
                {
                    Enum.TryParse(reader.GetString(8), out groupPrivilege);
                }
                reader.Close();
            }

            return groupPrivilege;
        }
示例#17
0
        public GroupPrivilegeDTO MapGroupPrivilegeToDTO(GroupPrivilege groupPrivilege)
        {
            var mappedDTO = AutoMapper.Mapper.Map <GroupPrivilegeDTO>(groupPrivilege);

            return(mappedDTO);
        }
示例#18
0
        private void ui_listBox_groups_SelectedIndexChanged(object sender, EventArgs e)
        {
            ui_listBox_symbolsInGroup.Items.Clear();
            ui_buttonX_delGroup.Enabled = true;
            ui_buttonX_editGroup.Enabled = true;
            ui_buttonX_join.Enabled = true;
            if (ui_listBox_groups.SelectedItems.Count <= 0) return;

            var privilege = new GroupPrivilege();
            int groupId = 0;

            for (int i = 0; i < ui_listBox_groups.SelectedItems.Count; i++)
            {
                var groupName = ui_listBox_groups.SelectedItems[i].ToString();

                groupId = _groups.Find(a => a.GroupName == groupName).GroupId;
                privilege = DataNetClientDataManager.GetUserPrivilegeForGroup(groupId, _userID, ApplicationType.DataNet.ToString());

                if (privilege != GroupPrivilege.Creator)
                {
                    ui_buttonX_delGroup.Enabled = false;
                    ui_buttonX_editGroup.Enabled = false;
                    ui_buttonX_join.Enabled = false;
                }
            }

            if (ui_listBox_groups.SelectedItems.Count == 1 && privilege != GroupPrivilege.UseGroup)
            {
                var symbolsForCurrGroup = DataNetClientDataManager.GetSymbolsInGroup(groupId);

                foreach (var symbolModel in symbolsForCurrGroup)
                {
                    ui_listBox_symbolsInGroup.Items.Add(symbolModel.SymbolName);
                }
            }
        }