easyUI的datagrid实现分页

防止自己以后忘记,在这里把代码贴出来,前台用的easyUI,后台用的ssh,希望可以和大家一起学习进步

首先前台代码

$("#lsdata1").datagrid( {
		url : "<%=basePath%>jylsJk",//加载的URL 
		pagination : true,
		pageSize:10,
		rownumbers:true,
		pageList:[10,20,30],
		datatype : 'json',
		columns : [ [ //每个列具体内容  
		{
			field : 'serial',
			title : '流水号',
			width : 200
		}, {
			field : 'name',
			title : '商品名称',
			width : 200
		}, {
			field : 'unitPrice',
			title : '单价(元)',
			width : 120
		}, {
			field : 'weight',
			title : '重量(kg)',
			width : 120
		}, {
			field : 'count',
			title : '金额(元)',
			width : 120
		}, {
			field : 'transType',
			title : '支付方式',
			width : 120
		}, {
			field : 'transTime',
			title : '交易时间',
			width : 180
		} ] ]
	});
后台Ctroller

@RequestMapping("jylsJk")//监控交易流水
	@ResponseBody
	public Datagrid jylsJk(HttpServletRequest request,String page,String rows){
		Datagrid datagrid = new Datagrid();
		Long value;
		int total;
		int page1=Integer.valueOf(page);
		int rows1 =Integer.valueOf(rows);
		int begin = (page1-1)*rows1;
		int end = page1*rows1;
		User user = (User) request.getSession().getAttribute("user");
		String qgxzqh = user.getQgxzqh();
		String scbh = user.getScbh();
		List<Jyls> jylsList;
		String sql=null;
		if(scbh==null||scbh.equals("")){
			if(qgxzqh.substring(2,6).equals("0000")){
				
					sql="from Jyls where serial like '"+qgxzqh.substring(0,2)+"%' order by transtime desc";
					 total = Integer.parseInt(baseService.findObject("select count(*) from Jyls where serial like '"+qgxzqh.substring(0,2)+"%'")+"");
					
					jylsList=baseService.findByPager(sql, begin, end);
				
			}else if(qgxzqh.substring(4,6).equals("00")){
				
					 total = Integer.parseInt(baseService.findObject("select count(*) from Jyls where serial like '"+qgxzqh.substring(0,4)+"%'")+"");
					
					sql="from Jyls where serial like '"+qgxzqh.substring(0,4)+"%' order by transtime desc";
					jylsList=baseService.findByPager(sql, begin, end);
				
			}else{
				
					 total = Integer.parseInt(baseService.findObject("select count(*) from Jyls where serial like '"+qgxzqh+"%'")+"");
					
					sql="from Jyls where serial like '"+qgxzqh+"%' order by transtime desc";
					jylsList=baseService.findByPager(sql, begin, end);
				
			}
			
		}else{
			                                //  spService.findObject("select count(*) from Sp where scbh like '"+likeStr+"%'")+""
				 total = Integer.parseInt(baseService.findObject("select count(*) from Jyls where serial like '"+scbh.substring(0, 10)+"%'")+"");
			
				sql="from Jyls where serial like '"+scbh.substring(0, 10)+"%' order by transtime desc";
				jylsList=baseService.findByPager(sql, begin, end);
			
		}
		
//		jylsList = baseService.findAll("from Jyls order by transtime desc");
		List<JylsVo> voList = new ArrayList();
		for(Jyls jyls:jylsList){
			JylsVo vo = new JylsVo();
			vo.setCount(jyls.getCount()+"");
			vo.setName(jyls.getName());
			vo.setSerial(jyls.getSerial());
			vo.setTransTime(jyls.getTransTime());
			Trans trans = (Trans)baseService.findById(Trans.class, jyls.getTransType()+"");
			vo.setTransType(trans.getDefine()+"");
			vo.setUnitPrice(jyls.getUnitPrice()+"");
			vo.setWeight(jyls.getWeight()+"");
			voList.add(vo);
		}
		datagrid.setRows(voList);
		datagrid.setTotal(total);
		System.out.println("========================================"+jylsList.size());
		return datagrid;
	}
baseService中的方法
public interface BaseService<T> {
	List<T> findAll(String sql);
	List<T> findByPager(String sql,int begin,int end);//此方法为分页查血
	Object findObject(String sql);
	Object findById(Class<T> c,int id);
	Object findById(Class<T> c,String id);
	boolean save(Object obj);
	Object update(T obj);
	boolean delete(T obj);
}
baseService实现类

public List<T> findByPager(String sql, int begin, int end) {
		// TODO Auto-generated method stub
		return dao.findByPager(sql, begin, end);
		
	}

dao层

public interface BaseDAO<T> {
	List<T> findAll(String sql);
	Object findObject(String sql);
	List<T> findByPager(String sql,int begin,int end);
	Object findById(Class<T> c,int id);
	Object findById(Class<T> c,String id);
	boolean save(Object obj);
	Object update(T obj);
	boolean delete(T obj);
	boolean flush();
}

dao实现类

	public List<T> findByPager(String sql, int begin, int end) {
		// TODO Auto-generated method stub
		try{
			Query query = em.createQuery(sql);
			query.setFirstResult(begin);
			query.setMaxResults(end);
			return query.getResultList();
		}catch(Exception e){
			e.printStackTrace();
		}
		return null;
	}


最后返回的json类型对象{total:信息数量,row:{所有对象}}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值