public IEnumerable<PermissionItemdata> PostPermissionGroupAll(PermissionItemdata item)
        {
            objConn = objDB.EstablishConnection();
            List<PermissionItemdata> manage = new List<PermissionItemdata>();
            string strSQL = "SELECT pg.PermissionGroupID, pg.PermissionGroupName FROM permissionitems pt ";
            strSQL += "INNER JOIN permissiongroup pg ON pg.PermissionGroupID = pt.PermissionGroupID ";
            strSQL += "LEFT JOIN staffaccess sa ON sa.PermissionItemID = pt.PermissionItemID ";
            strSQL += "WHERE pt.PermissionItemParent = 0 AND pt.Deleted = 0 AND sa.StaffRoleID = '" + item.StaffRoleID + "' ";
            strSQL += "GROUP BY sa.StaffRoleID, pt.PermissionGroupID ORDER BY sa.StaffRoleID, pt.PermissionGroupID, pt.PermissionItemID;";
            string strSQLitem = "SELECT pg.PermissionGroupID, pt.PermissionItemUrl, pt.PermissionItemID, pt.PermissionItemName FROM permissionitems pt ";
            strSQLitem += "INNER JOIN permissiongroup pg ON pg.PermissionGroupID = pt.PermissionGroupID ";
            strSQLitem += "LEFT JOIN staffaccess sa ON sa.PermissionItemID = pt.PermissionItemID ";
            strSQLitem += "WHERE pt.PermissionItemParent = 0 AND pt.Deleted = 0 AND sa.StaffRoleID = '" + item.StaffRoleID + "' ";
            strSQLitem += "GROUP BY pt.PermissionItemID;";

            DataTable dt = objDB.List(strSQL, objConn);
            DataTable dtitem = objDB.List(strSQLitem, objConn);
            objConn.Close();

            if (dt.Rows.Count > 0)
            {
                // Create Main Array

                // Create Object

                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    PermissionItemdata manageStaff = new PermissionItemdata();
                    manageStaff.GroupName = Convert.ToString(dt.Rows[i]["PermissionGroupName"]);
                    // Add Group Name AS String

                    DataRow[] dr = dtitem.Select(" PermissionGroupID = " + dt.Rows[i]["PermissionGroupID"].ToString());

                    // Add Group Parent AS Array
                    List<PermissionItemParent> manageParent = new List<PermissionItemParent>();

                    if (dr.Length > 0)
                    {
                        for (int j = 0; j < dr.Length; j++)
                        {
                            PermissionItemParent manageStaffparent = new PermissionItemParent();
                            // Add Object PermissionGroupID
                            manageStaffparent.PermissionGroupID = Convert.ToString(dr[j]["PermissionGroupID"]);
                            // Add Object PermissionItemUrl
                            manageStaffparent.PermissionItemUrl = Convert.ToString(dr[j]["PermissionItemUrl"]);
                            // Add Object PermissionItemID
                            manageStaffparent.PermissionItemID = Convert.ToString(dr[j]["PermissionItemID"]);
                            // Add Object PermissionItemName
                            manageStaffparent.PermissionItemName = Convert.ToString(dr[j]["PermissionItemName"]);

                            manageParent.Add(manageStaffparent);
                        }
                    }
                    manageStaff.GroupParent = manageParent;
                    manage.Add(manageStaff);
                }
            }
            return manage.ToArray();
        }
 public IEnumerable<PermissionItemdata> PostPermissionGroup(PermissionItemdata item)
 {
     return repository.PostPermissionGroupAll(item);
 }