//以分页的形式返回数据
public static Map<String, Object> resultpage( HttpServletRequest request,HashMap data) {
if (data == null) {
return data;
}
Map<String, Object> result = new HashMap<String, Object>();
Integer page = Integer.valueOf(request.getParameterValues("page")[0].toString());
Integer start = Integer.valueOf(request.getParameterValues("start")[0].toString());
Integer limit = Integer.valueOf(request.getParameterValues("limit")[0].toString());
List list = (List)data.get("list");
List temp = new ArrayList();
int total = list.size();
int end = start + limit > total ? total : start + limit;
for(int i = start ; i < end ; i++){
temp.add(list.get(i));
}
result.put("list",temp);
result.put("total",total);
result.put("success", true);
return result;
}
/*签收单位加载*/controller
@RequestMapping(value = "/choSignUnit", method = RequestMethod.POST)
@ResponseBody
public Map<String, Object> choSignUnit(
@RequestParam(value = "v_departname") String v_departname,
HttpServletRequest request,
HttpServletResponse response) throws Exception {
Map<String, Object> result = new HashMap<String, Object>();
HashMap data = jrule00Service.choSignUnit(v_departname);
return resultpage(request,data);
}
//表格信息加载
var gridStore = Ext.create('Ext.data.Store', {
id: 'gridStore',
autoLoad: false,
pageSize:5,
fields: ['DEPARTCODE', 'DEPARTNAME', 'SIGN_LEVEL', 'SIGN_DEPART', 'EXEDEPART', 'SIGN_USERID', 'SIGN_USERNAME'],
proxy: {
type: 'ajax',
async: false,
url: AppUrl + 'Jrule00/choSignUnit',
actionMethods: {
read: 'POST'
},
reader: {
type: 'json',
root: 'list',
total: 'total'
}
}
});
var grid = Ext.create('Ext.grid.Panel', {
region: 'center',
id: 'grid',
columnLines: true,
width: '100%',
autoScroll: true,
store: gridStore,
autoWidth: true,
height: 400,
columns: [
{text : '选择',dataIndex : 'COMMON_ID',width : 70,align:'center',renderer:check},
{text: '签收单位编码', width : 240, dataIndex: 'DEPARTCODE', align: 'center'},
{text: '签收单位名', width : 240, dataIndex: 'DEPARTNAME', align: 'center'},
{text: '签收层级', width : 240, dataIndex: 'SIGN_LEVEL', align: 'center'},
{text: '执行部门', width : 240, dataIndex: 'EXEDEPART', align: 'center'},
{text: '签收人', width : 240, dataIndex: 'SIGN_USERNAME', align: 'center'}],
bbar: [{
id: 'page',
xtype: 'pagingtoolbar',
dock: 'bottom',
displayInfo: true,
displayMsg: '显示第{0}条到第{1}条记录,一共{2}条',
emptyMsg: '没有记录',
store: 'gridStore'
}]
});
Ext.data.StoreManager.lookup('gridStore').on('beforeload', function (store) {
store.proxy.extraParams = {
v_departname:Ext.getCmp('qsdw').getValue()
}
});
QueryGrid()
function QueryGrid() {
Ext.data.StoreManager.lookup('gridStore').load({
params: {
v_departname:Ext.getCmp('qsdw').getValue()
}
});
}
---------------------------------------------------
@RequestMapping(value = "selDownMenu", method = RequestMethod.POST)
@ResponseBody
public Map<String, Object> selDownMenu(
@RequestParam(value = "v_up_menu_id", required = false) String v_up_menu_id,
HttpServletRequest request,
HttpServletResponse response)
throws SQLException {
Map<String, Object> result = new HashMap<String ,Object>();
HashMap data=Jrule06Service.selDownMenu(v_up_menu_id);
return setPage(request,response,data);
}
//---------------------------------------------------
public class Page {
private int start;
private int limit;
public int getStart() {
return start;
}
public void setStart(int start) {
this.start = start;
}
public int getLimit() {
return limit;
}
public void setLimit(int limit) {
this.limit = limit;
}
public Integer getPage(){
return (start/limit)+1;
}
}
//---------------------------------------
@RequestMapping(value = "/setPage", method = RequestMethod.POST)
@ResponseBody
public Map<String, Object> setPage(HttpServletRequest req,HttpServletResponse res, HashMap data) {
if (data == null) {
return data;
}
Map<String, Object> result = new HashMap<String, Object>();
res.setContentType("text/plain");
Integer start = Integer.parseInt(req.getParameter("start"));
Integer limit = Integer.parseInt(req.getParameter("limit"));
/ -- / Integer start = Integer.valueOf(req.getParameterValues("start")[0].toString());
/ --/ Integer limit = Integer.valueOf(req.getParameterValues("limit")[0].toString());
Page page=new Page();
page.setStart(start);
page.setLimit(limit);
List list = (List)data.get("list");
List temp = new ArrayList();
int total = list.size();
int end = start + limit > total ? total : start + limit;
for(int i = start ; i < end ; i++){
temp.add(list.get(i));
}
result.put("list",temp);
result.put("total",total);
result.put("success", true);
return result;
}
java-ext 数据分页显示问题
最新推荐文章于 2021-02-16 11:56:48 发布