下列代码为easyUI查询列表下的排序(查询后台代码)
/*前台代码*/
$("#searchList").datagrid({
fit:true,
singleSelect:true,
columns:[
//sortable:标示排序,sortName:标示要排序的列,sortOrder:标示正序OR倒序
{field:'time',title:'时间',sortable:true,sortName:'time',sortOrder:'asc'},
{field:'sort',title:'顺序',sortable:true,sortName:'sort',sortOrder:'asc'}
]
});
/*后台代码*/
public Object test(HttpServletRequest re){
String sortName = re.getParameter("sort");//前台排序字段
String sortOrder = re.getParameter("order");//desc OR asc
JSONObject json = new JSONObject();
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
//list赋值
Map<String,String> map = new HashMap<String,String>();
map.put("time","2016-01-12 10:30:25");
map.put("sort",1);
list.add(map);
Map<String,String> map1 = new HashMap<String,String>();
map1.put("time","2016-01-11 10:30:25");
map1.put("sort",2);
list.add(map1);
Collection.sort(list,new Comparator<Map<String,String>>(){
@Override
public int compare(Map<String,String>m,Map<String,String>m1){
if("time".equals(sortName)){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date d = new Date();
Date d1 = new Date();
d = sdf.parse(m.get("time").toString());
d1 = sdf.parse(m1.get("time").toString());
if("asc".equals(sortOrder))
return d.compareTo(d1);
else
return d1.compareTo(d);
}else if("sort".equals(sortName)){
if("asc".equals(sortOrder))
return (Integer.parse(m.get("sort").toString()).compareTo(Integer.parse(m1.get("sort").toString()));
else
return (Integer.parse(m1.get("sort").toString()).compareTo(Integer.parse(m.get("sort").toString()));
}else return -1;
}
});
json.put("list",list);
return json.toString();
}