使用EasyUI開發銀行業績統計系統[21]-選單管理的Code On
一,簡介
角色管理和選單管理的業務邏輯基本是一模一樣的,無非增刪改查而已,貓哥直接講述如何利用複製-貼上的方式完成選單管理功能的開發。
注意:本篇採用一種意識流的開發手段,即直接一頓狂編碼,最後直接測試,如果邏輯能力夠強大的的話,應該直接一遍測試就透過。
在唱片界,這叫做One Take,林志炫老師很愛這個。在程式碼界,我們叫做Code Once!
二,大體過程
涉及到需要新建的檔案:
1,menu_manage.jsp,選單管理網頁,參照role_manage.jsp修改即可
2,menu_manage.jsp.js,網頁呼叫的js指令碼,參照role_manage.jsp.js修改即可。
3,MenuServlet.java,服務端元件,參照RoleServlet.java修改即可。
4,MenuService.java,資料服務元件,參照RoleService.java修改即可哦。
三,選單管理網頁
注意需要修改的地方貓哥已經新增註釋。
<!-- 新建檔案menu_manage.jsp -->
選單管理
<!-- 角色改為選單 -->
<!--角色列表改為選單列表;RoleServlet改為MenuServlet-->
<!-- 按照資料庫中menu表的結構修改即可 -->選單編號
選單名稱
選單url
<!-- 工具欄;方法所屬物件改為menu_manage -->
<!--詳情對話方塊 -->
詳細資訊
<!--方法所屬物件改為menu_manage -->
四,js指令碼修改
//在script資料夾下新建menu_manage.jsp.js,並複製role_manage.jsp.js中的程式碼後進行修改
var menu_manage_function=function(){//將role_manage_function改為menu_manage_function
this.CreateOne=function(){
$('#uiDialog').dialog('open').dialog('setTitle','新增');
$('#formInfo').form('clear');
url = '/BankStatistics/MenuServlet?method=createOne&ran='+Math.random();//RoleServlet改為MenuServlet
};
this.EditOne=function(){
var row = $('#uiGrid').datagrid('getSelected');
if (row){
$('#uiDialog').dialog('open').dialog('setTitle','編輯');
$('#formInfo').form('load',row);
//RoleServlet改為MenuServlet;role_id改為menu_id
url = '/BankStatistics/MenuServlet?method=editOne&id='+row.menu_id+'&ran='+Math.random();
}
};
this.SaveOne=function(){
$('#formInfo').form('submit',{
url: url,
onSubmit: function(){
return $(this).form('validate');
},
success: function(result){
var result = eval('('+result+')');
if (result.success===false){
$.messager.show({
title: 'Error',
msg: result.errorMsg
});
} else {
$('#uiDialog').dialog('close');
$('#uiGrid').datagrid('reload');
}
}
});
};
this.DeleteOne=function(){
var row = $('#uiGrid').datagrid('getSelected');
if (row){
$.messager.confirm('確認','確定刪除選中項?',function(r){
if (r){
//RoleServlet改為MenuServlet;role_id改為menu_id
$.post('/BankStatistics/MenuServlet?method=deleteOne&ran='+Math.random()
,{id:row.menu_id},
function(result){
if (result.success===true){
$('#uiGrid').datagrid('reload');
}
else {
$.messager.show({
title: 'Error',
msg: '刪除錯誤'
});
}//ifelse
}//functoon
,'json'
);//post
}//if(r)
});//messager.confirm
}//if(row)
};
};
//role_manage_function改為menu_manage_function;role_manage改為menu_manage
var menu_manage=new menu_manage_function();
五,Servlet和Service修改
這兩個修改比較簡單,自行比照上一篇文章即可。
package panda.bank.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import panda.bank.entity.Menu;
import panda.bank.service.MenuService;
import net.sf.json.JSONObject;
@WebServlet(urlPatterns="/MenuServlet")
public class MenuServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setCharacterEncoding("utf-8");
request.setCharacterEncoding("utf-8");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String method=request.getParameter("method");
MenuService service=new MenuService(Menu.class);
//獲取列表
if(method.equals("list")){
int page,rows,offset,total;
String i_page=request.getParameter("page");
if(i_page==null)
page=1;
else
page=Integer.parseInt(i_page);
String i_rows=request.getParameter("rows");
if(i_rows==null)
rows=10;
else
rows=Integer.parseInt(i_rows);
offset=(page-1)*rows;
total=service.getTotalCount();
List
package panda.bank.service;
import java.util.List;
import panda.bank.entity.Menu;
public class MenuService extends Service{
public MenuService(Class entityClass) {
super(entityClass);
}
public int getTotalCount(){
return operation.selectCount();
}
public List getPage(int offset,int rows){
return operation.selectPage(offset, rows);
}
public Menu getByMenuId(String id){
return (Menu)operation.selectOne(id);
}
public int add(Menu one){
return operation.add(one);
}
public int update(Menu one){
return operation.update(one);
}
public int delete(String key){
return operation.delete(key);
}
}
六,測試和總結
重新 部署、執行Tomcat,選單的增、刪、改、查、分頁一切正常,Code Once實現,成就感滿滿!
經過這兩個案例,以後針對單表操作的功能,一筆帶過,畢竟很簡單,演示已經很充分了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2318/viewspace-2807800/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用EasyUI開發銀行業績統計系統[4]-EasyUI表單UI行業
- 使用EasyUI開發銀行業績統計系統[11]-EasyUI樹形控制元件trUI行業控制元件
- 機械行業ERP管理系統開發怎麼選?機械行業erp系統開發行業
- 餐飲行業企業管理系統開發行業
- CRM管理系統如何帶來業績?
- 怎麼選擇更適合企業的ERP系統?企業ERP管理系統開發
- 機械企業管理系統的設計與開發
- java績效管理系統Java
- 企業管理系統-ERP開發
- ERP管理系統是如何進行倉庫管理的呢?ERP管理系統開發
- 電商企業如何選擇erp系統開發?erp系統開發
- 模切行業小白選擇管理類系統指南行業
- SSM + easyUI 搭建簡易的人事管理系統 系統概要部分SSMUI
- [BUG反饋]編輯【系統-系統管理-選單管理】有個BUG
- PbootCMS企業網站開發建設管理系統系統使用者授權的宣告boot網站
- 如何藉助CRM銷售管理系統提升業績?
- 學生成績管理系統——課程設計報告
- 商業銀行押品管理系統建設探索和實踐
- 企業工程專案管理系統原始碼+系統管理+系統設定+二次開發專案管理原始碼
- CRM客戶管理系統幫助企業增長業績
- 疫苗接種管理系統的設計與開發
- 企業工程專案管理系統+spring cloud 系統管理+java 系統設定+二次開發專案管理SpringCloudJava
- 適用於銀行業的ERP系統有哪些?行業
- 濱州能源管理系統開發高耗能重工業能耗監測系統開發
- Thinkphp訂單系統,DukuanCMS競價訂單系統,單品訂單管理系統,多產品訂單管理系統PHP
- CRM客戶管理系統幫助企業提升銷售業績
- 基於SSM開發的物業維修管理系統SSM
- 基於SSM開發的企業人事管理系統SSM
- pms酒店管理系統功能,酒店管理系統軟體開發
- 高效生產管理:選擇順通鞋業ERP系統派單的理由
- CRM系統如何帶來業績?
- 程式設計作業——系統管理程式設計
- 合約跟單系統|現貨跟單系統|跟單交易系統開發案例
- 校園圖書管理系統開發-中小學智慧圖書管理系統開發
- 貝殼_程式設計實踐_銀行系統程式設計
- 模切行業選擇ERP系統的方案行業
- 客戶管理系統SAAS應用行業軟體系統進銷存CRM管理系統行業
- 化工能耗管理系統開發能源線上監控系統開發