調整菜單的方法及系統的制作方法
【技術領域】
[0001] 本發明涉及通信領域,更為具體而言,涉及調整菜單的方法及系統。
【背景技術】
[0002] 在互聯網系統中,菜單為用戶提供了系統的功能入口,一個較好的菜單能夠讓用 戶迅速定位到目的功能,對用戶體驗的影響十分重大。因此,當前的互聯網系統趨向于根據 用戶的喜好個性化地調整導航菜單。然而,這些可以實現個性化調整導航菜單的互聯網系 統均未涉及對菜單的層級進行個性化的調整,影響了用戶的體驗。
【發明內容】
[0003] 為解決上述技術問題,本發明提供一種調整菜單的方法及系統。
[0004] -方面,本發明的實施方式提供了 一種調整菜單的方法,所述方法包括:
[0005] 獲取用戶請求的菜單頁面中待調整的菜單樹以及與所述用戶對應的菜單調整規 則;
[0006] 根據獲取到的菜單調整規則識別所述菜單樹中是否存在層級調整菜單;
[0007] 若存在所述層級調整菜單,則從所述菜單調整規則中讀取所述層級調整菜單在調 整后的父菜單并將所述層級調整菜單設置為所述父菜單的子菜單。
[0008] 相應地,本發明實施方式提供了一種調整菜單的系統,所述系統包括:
[0009] 獲取模塊,包括:用于獲取用戶請求的菜單頁面中待調整的菜單樹的第一獲取單 元,以及用于獲取與所述用戶對應的菜單調整規則的第二獲取單元;
[0010] 第一識別模塊,用于根據所述獲取模塊所獲取到的菜單調整規則識別所述菜單樹 中是否存在層級調整菜單;
[0011] 讀取及設置模塊,用于執行下述處理:在所述第一識別模塊識別出存在所述層級 調整菜單的情形下,從所述菜單調整規則中讀取所述層級調整菜單在調整后的父菜單并將 所述層級調整菜單設置為所述父菜單的子菜單。
[0012] 實施本發明提供的調整菜單的方法及系統,可以對菜單的層級進行個性化的調 整,提高用戶的體驗度。
【附圖說明】
[0013] 圖1是根據本發明實施方式的一種調整菜單的方法的流程圖;
[0014] 圖2是根據本發明實施方式的另一種調整菜單的方法的流程圖;
[0015] 圖3是根據本發明實施方式的又一種調整菜單的方法的流程圖;
[0016] 圖4是根據本發明實施方式的一種菜單層級結構的示意圖;
[0017] 圖5是根據本發明實施方式的一種調整菜單的系統的結構示意圖;
[0018] 圖6示出了圖5所示的第一獲取單元110的結構示意圖。
【具體實施方式】
[0019] 為使本發明的實施例的目的、技術方案和優點更加清楚,下面將結合附圖對本發 明作進一步地詳細描述。
[0020] 圖1是根據本發明實施方式的一種調整菜單的方法的流程圖。參見圖1,所述方法 包括:
[0021] S100:獲取用戶請求的菜單頁面中待調整的菜單樹以及與所述用戶對應的菜單調 整規則。
[0022] S200:根據獲取到的菜單調整規則識別所述菜單樹中是否存在層級調整菜單,若 是,則執行S300,若否,則結束。
[0023] S300:從所述菜單調整規則中讀取所述層級調整菜單在調整后的父菜單并將所述 層級調整菜單設置為所述父菜單的子菜單。
[0024] 圖2是根據本發明實施方式的另一種調整菜單的方法的流程圖。如圖2所示,所述 方法包括:
[0025] S100'至S300' :同上述的S100至S300,在此不再贅述。
[0026] S400':根據所述菜單調整規則識別所述菜單樹中是否存在子菜單順序調整菜單, 若是,則執行S500',若否,則結束。
[0027] S500':將所述子菜單順序調整菜單在所述菜單樹中的子菜單順序修改為所述子 菜單順序調整菜單在所述菜單調整規則中的子菜單順序。
[0028] 上述實施方式僅是本發明的一個示例,本領域的技術人員可以在不脫離本發明的 保護范圍的前提下,根據實際需要調整上述處理S100'至S500'的執行順序,例如,可以在執 行處理S200 '前執行處理S400 '至S500 '。
[0029] 圖3是根據本發明實施方式的又一種調整菜單的方法的流程圖。如圖3所示,所述 方法包括:
[0030] S100"至S500" :同上述S100'至S500',在此不再贅述。
[0031 ] S600" :根據所述菜單調整規則識別所述菜單樹中是否存在隱藏菜單,若是,則執 行S700",若否,則結束。
[0032] S700" :從所述菜單樹中刪除所述隱藏菜單。
[0033] 上述實施方式僅是本發明的一個示例,本領域的技術人員可以在不脫離本發明的 保護范圍的前提下,根據實際需要調整上述處理S100"至S700"的執行順序,例如,可以在處 理S300"和S400"之間執行處理S600"至S700"。
[0034] 在本發明的一種實施方式中,上述獲取用戶請求的菜單頁面中待調整的菜單樹的 處理例如可以通過下述方式實現:讀取所述菜單頁面中的初始菜單樹;從所述初始菜單樹 中選取所述用戶有權訪問的菜單樹,其中,選取出的菜單樹為所述待調整的菜單樹。
[0035] 為使得通過實施本發明所提供的調整菜單的方法而得到的菜單樹的結構能夠更 加真實地反映用戶的喜好,所述菜單調整規則例如可以是所述用戶自定義的規則。具體地, 用戶可以在客戶端所顯示的編輯頁面中對菜單樹進行調整,客戶端根據用戶的操作結果生 成相應的菜單調整規則。生成的菜單調整規則可以直接保存在客戶端中,然而一旦用戶更 換客戶端,就需要該用戶在新的客戶端上重新定義所述菜單調整規則,影響了用戶的體驗 度,因此,在本發明的另一種實施方式中,客戶端可以將生成的菜單調整規則存儲在服務器 中。
[0036] 本發明所提供的調整菜單的方法可以在客戶端側執行,也可以在服務器側執行, 下面以該調整跟菜單的方法在服務器側執行為例,對本發明的實施方式進行具體描述。
[0037] 步驟1:服務器讀取菜單數據并初始化菜單樹。
[0038]服務器讀取的菜單數據例如包括:menu_id(菜單標識符)、type_id(菜單類型)、 par ent_menu_i d (父菜單)以及menu_f u 1 lname (菜單名稱)等關鍵信息。
[0039] 由于互聯網系統中通常存在大量的菜單,如果把包括用戶不能使用的菜單在內的 全部菜單都展現給用戶,會嚴重影響用戶的體驗度。
[0040] 步驟2:服務器根據用戶的角色、開通功能等條件對菜單樹中的菜單進行篩選,選 擇出用戶有權限訪問的菜單以構成上述的待調整的菜單樹。
[0041] 步驟3:服務器讀取菜單調整規則,根據讀取到的菜單調整規則調整步驟2所得到 的菜單樹的結構,例如將部分的二級或三級菜單調整為一級菜單、調整部分菜單的子菜單 順序或者刪除部分菜單等。由此服務器獲取到最終向用戶展現的菜單樹,然后由服務器所 述最終展現的菜單樹發送給客戶端以便于客戶端根據接收到的菜單樹的層次關系構建導 航菜單。
[0042]其中,步驟3具體可以通過以下過程實現:
[0043] (1)服務器從菜單層級調整控制表中根據用戶的ID( identification,唯一標識 符)獲取該用戶定義的菜單調整規則,在這個表中,每一條記錄表示一個調整規則。該表主 要由以下關鍵字段構成:
[0044]
[0045]表1菜單層級調整控制表的字段含義對照表
[0046] (2)讀取該用戶所有的菜單層級調整規則(即RULE_TYPE值為1的記錄),對每條規 則執行以下操作:
[0047] a.將MENU_ID字段記錄的菜單從其原有的父菜單的子菜單列表中刪除。
[0048] b.將MENU_ID字段記錄的菜單添加到NEW_MENU_PARENT_ID字段記錄的菜單的子菜 單列表中。
[0049] (3)讀取該用戶所有的子菜單順序調整規則(即RULE_TYPE值為2的記錄),對每條 規則執行以下操作:a.將MENU_ID字段記錄的菜單的子菜單順序替換為NEW_CHILD_ORDER字 段記錄的子菜單順序。
[0050] (4)讀取該用戶所有的菜單隱藏規則(即RULE_TYPE值為3的記錄),對每條規則執 行以下操作:
[0051 ] a.對MENU_ID字段記錄的菜單,將HIDDEN_CHILD_MENUS字段保存的需要隱藏的子 菜單添加到待刪除菜單中。
[0052] 步驟4:客戶端接收從服務器返回的菜單樹后,按接收到的菜單樹展現導航菜單。
[0053] 其中,該菜單調整規則為用戶在客戶端自定義的規則,客戶端將該規則發送給服 務器進行存儲。用戶在客戶端自定義所述菜單調整規則的具體實現過程如下:
[0054] (1)客戶端利用WEB(互聯網)頁面技術,在當前頁面(原始頁面)上構建可視化的編 輯頁面(懸浮于原始頁面上),讀取當前的導航菜單信息,在該編輯頁面中展現與原始頁面 一致的導航菜單(此時只展現一級菜單),供用戶進行可視化編輯。
[0055] (2)用戶點擊展現的一級菜單,客戶端根據點擊的一級菜單,從原始頁面中讀取該 一級菜單的二級菜單,以此類推,可獲取其余的三級菜單、四級菜單。各級菜單的層級結構 如圖4所不,其中,A是一級菜單,B、C是二級菜單、D、E、F、G、H、I是二級菜單。
[