您的位置:首页 > 产品设计 > UI/UE

easyUi分页以及条件查询

2017-05-19 15:46 369 查看
//easyUi分页以及条件查询

JQuery 写法 (只需要找一个地方放入就行);

//大表格数据

var _getPage = localUrl + '/plugins/sqm/mservicemodel/findPage2EasyUI.ilf';
$('#dg').datagrid({
url : _getPage,
rownumbers : true,
pagination : true,
fitColumns : true,
fit : true,
singleSelect : false,
pageSize : 10,
pageList : [5, 10, 15],
remoteSort:true,
multiSort:true,
queryParams : {conditions : getSearchConditions()},
columns : [[
{field: 'id', title: "id", checkbox:true, hidden: false, width: 100, sortable: true, align: 'center'},
{field :'serviceCategory',title:'Service Category',hidden:false,width:50,sortable:true,align : 'center'},
{field :'serviceModel',title:'Service Model',hidden:false,width:50,sortable:true,align : 'center'},
{field :'description',title:'Description',hidden:false,width:50,sortable:true,align : 'center'}
]],
});

});

//加条件
function getSearchConditions() {
var searchName = $("#searchName").val().trim();

if(searchName!=null){
var param = [];
param.push({
"name" : "searchName",
"value" : searchName
});

var conditions = $.toJSON(param);

}

return conditions;
}

//查询表格数据
//searchGrid 绑定的是一个javascript事件方法
function searchGrid() {
var queryParams = {
conditions : getSearchConditions()
};
$('#dg').datagrid('load', queryParams);
}


//这是html标签页

<div data-options="region:'center',border:false" style="padding: 5px; width:900px; height: 300px;">
<table id="dg"></table>
</div>

<input style="height: 26px;" name="alarmName" class="easyui-validatebox validatebox-text" id="searchName">

<a href="javascript:searchGrid()" class="easyui-linkbutton" style="margin-bottom: -40px;" iconCls="icon-search">Query</a>


JAVA 代码(固定TestController.java

@RequestMapping(value = "/findPage2EasyUI.ilf")
@ResponseBody
public EasyTableResult<MserviceModel> findPage(@RequestParam Integer page,
@RequestParam Integer rows, String sort, String order,
String conditions) throws Exception {
EasyTableResult<MserviceModel> result = new EasyTableResult<MserviceModel>();
try {

// 处理页码
Page<MserviceModel> dgpage = new Page<MserviceModel>();
page = (page == null || page == 0) ? 1 : page;
rows = (rows == null || rows == 0) ? 25 : rows;
dgpage.setStart((page - 1) * rows);
dgpage.setLimit(rows);
// 处理排序
Map<String, String> orders = new HashMap<String, String>();
if (sort != null && order != null) {
String[] colNames = sort.split(",");
String[] colOrders = order.split(",");
if (colNames.length == colOrders.length) {
for (int i = 0; i < colNames.length; i++) {
orders.put(colNames[i], colOrders[i]);
}
}
}
// 处理条件
Map<String, String> c = null;
if (conditions != null && !"".equals(conditions)) {
c = DataTableCondition.getCondition(conditions);
}
// 查询并返回结果 dgpage 使用返回的数据,可以从这里书写条件
dgpage = testService.findPageByCondition(dgpage, c, orders);

result.setStart(dgpage.getStart());

result.setRows(dgpage.getRows());
result.setTotal(dgpage.getTotalCount());

} catch (Exception e) {
e.printStackTrace();
System.out.println("............error.........:" + e.getMessage());
}

return result;
}


service层

TestService.java

public Page<MserviceModel> findPageByCondition(Page<MserviceModel> page,
Map<String, String> conditions, Map<String, String> orders) {
List<Criterion> criterionList = getCondition(conditions);

List<Order> orderList = new ArrayList<Order>();
for (Map.Entry<String, String> m : orders.entrySet()) {
if (m.getValue().endsWith("asc"))
orderList.add(Order.asc(m.getKey()));
else
orderList.add(Order.desc(m.getKey()));
}

return mserviceModelDao.findPage(page, criterionList, orderList);
}

///这里是用来写条件的
private  List<Criterion> getCondition(Map<String, String> conditions){
List<Criterion> criterionList =new ArrayList<Criterion>();

/*
if (conditions.containsKey("dictNameFilter")&& !"".equals(conditions.get("dictNameFilter"))) {
criterionList.add(Restrictions.like("serviceModel", "%"+ conditions.get("dictNameFilter") + "%"));
}
if (conditions.containsKey("serviceCategory")&& !"".equals(conditions.get("serviceCategory"))) {
criterionList.add(Restrictions.eq("serviceCategory", ""+ conditions.get("serviceCateg
995c
ory") + ""));
}
if (conditions.containsKey("id")&& !"".equals(conditions.get("id"))) {
criterionList.add(Restrictions.eq("id", Long.parseLong(conditions.get("id")) ));
}
*/

if(conditions.containsKey("searchName")&& !"".equals(conditions.get("searchName"))){
System.out.println(conditions.get("searchName"));
criterionList.add(Restrictions.like("serviceModel", "%"+ conditions.get("searchName") + "%"));
}

return criterionList;
}


“`
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  分页 easyui