JEECG簡單實例講解權限控制數據庫
博文地址:http://blog.itpub.net/30066956/viewspace-1868754/測試
做者: 許國傑 spa
1、業務背景.net
某公司要實現一個日誌系統,用來了解員工的工做量飽和狀況。日誌
2、需求code
1、角色分爲:員工、經理兩種。orm
2、員工天天在日誌系統中填報工做總結,而後經理進行點評。blog
3、表單內容包含:姓名、日期、工做總結、我的筆記、日誌點評。開發
3、業務權限描述get
一、 員工能夠進行日誌填報、查看操做。(按鈕控件權限)
二、 經理能夠進行日誌點評、查看操做。(按鈕控件權限)
三、 我的筆記內容只對填報本人可見,經理不能看到我的筆記內容。(表單字段權限)
四、 經理只能夠編輯日誌點評字段。(表單字段權限)
五、 員工查詢出的數據列表列爲
姓名、日期、我的筆記、日誌點評(數據列權限)
六、 經理查詢出的數據列表列爲
姓名、日期、日誌點評(數據列權限)
七、 員工只能夠看到本身填報的日誌記錄。(數據行權限)
4、開發過程
一、 建立表單:
二、 編輯頁面屬性
三、 同步數據庫
四、 測試查看錶單內容以下
五、 生成代碼
六、 把代碼copy到項目中。
七、 新建兩個角色:員工、經理;新建三個用戶:員工小A,員工小B,王經理。並分配對應的角色。
八、 配置菜單
九、 給員工與經理角色分配菜單
使用王經理登陸,測試能夠看到工做日誌菜單了。但要求的權限尚未進行控制。並且生成的頁面樣式有點問題。
十、 調整頁面樣式,修改按鈕文字、刪除不用的按鈕。
5、權限配置
權限描述以下
一、 員工能夠進行日誌填報、查看操做。(按鈕控件權限)
配置日誌點評按鈕不可見,並對員工角色起做用。
A、在代碼中,日誌點評按鈕增長operationCode="update"
B、在菜單管理中,爲工做日誌菜單加控件權限:日誌點評隱藏
C、在角色管理中,員工角色使用此權限控制。
D、測試,能夠發現使用員工A和員工B登陸已經看不到日誌點評了。
二、 經理能夠進行日誌點評、查看操做。(按鈕控件權限)
配置日誌填報按鈕不可見,並對經理角色起做用。
過程同上一項。
三、 員工查詢出的數據列表列爲
姓名、日期、我的筆記、日誌點評
經理查詢出的數據列表列爲
姓名、日期、日誌點評(數據列權限)
配置我的筆記列隱藏,並對經理角色起做用。
A、 在員工日誌下新增控件權限。
B、 對經理角色使用此權限。
C、 測試以下,王經理登陸已經看不到我的筆記一列了。
四、 員工只能夠看到本身填報的日誌記錄。(數據行權限)
配置datagrid操做createBy =#{ sys_user_code}
A、新增訪問類型的菜單。注意:必定要是訪問類型。路徑爲列表查詢action.
B、 對新加的訪問類型菜單增長數據權限。
C、對員工角色使用此數據權限。
D、 分別使用員工A、員工B 錄入數據。測試每一個人只能夠看到本身錄入的數據。
五、 我的筆記內容只對填報員工可見,經理不能看到我的筆記內容。(表單字段權限)
配置我的筆記表單字段不可見,並對經理角色起做用。
A、 在新增頁面,爲點評行加上t:authFilter標記
B、 新增訪問類型菜單
C、 對新增長的菜單增長控制權限
D、 對員工角色使用該權限控制。
E、 測試一下,發現日誌點評在日誌填報頁面已經沒有了。
六、 日誌點評頁面,經理只能夠編輯日誌點評字段。
日誌點評頁面把其它字段都使用readonly屬性。
這個功能說明:雖然權限配置起來很方便,但改變頁面,或方法有時更方便。
完成!