Operation.jsp 3.2 KB
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ include file="/page/maint/common/initNoCache.jsp" %>
<%@ page import="net.sf.json.JSONObject,weaver.general.*"%>
<jsp:useBean id="rs" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rs1" class="weaver.conn.RecordSet" scope="page" />
<%
	String keyword = Util.null2String(request.getParameter("keyword"));
	String typeval = Util.null2String(request.getParameter("typeval"));
	String maintable = "KT_Map";
    int pageNum = Util.getIntValue(request.getParameter("pageNum"),1);//第几页
    List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
	String msg = "";
	int totalpage = 0;//总页数
	try{
		String innerSql  = " id,name,previewimg bjtp ";
		StringBuffer whereSql = new StringBuffer();
		whereSql.append(" "+maintable+" where deleted=0 ");
		String orderSql = " order by id desc ";	
		String orderSql1 = " order by id ";	
		String orderSql2 = " order by id desc ";
		if(!"".equals(keyword)){
			whereSql.append(" and name like '%"+keyword+"%'");
		}
		if(!"".equals(typeval)){
			whereSql.append(" and maptype = "+typeval);
		}
		String countSql = "select count(id) total from "+ whereSql.toString();
		rs.executeSql(countSql);
		int iTotal = 0;  //总条数
		while(rs.next()){
			iTotal = rs.getInt("total");
		}
		int _pagesize = 20; //每页显示页数
		if(iTotal>0){
			totalpage = iTotal / _pagesize;
			if(iTotal % _pagesize >0) totalpage += 1;
			int iNextNum = pageNum * _pagesize;
			int ipageset = _pagesize;
			if(iTotal - iNextNum + _pagesize < _pagesize) ipageset = iTotal - iNextNum + _pagesize;
			if(iTotal < _pagesize) ipageset = iTotal;
			String sql = "";
			if(rs.getDBType().equals("oracle")){
				sql = "select "+innerSql+" from " +whereSql+orderSql;
				sql = "select A.*,rownum rn from (" + sql + ") A where rownum <= " +  iNextNum;
				sql = "select B.* from (" + sql + ") B where rn > " + (iNextNum  - _pagesize);
			}else if("mysql".equals(rs.getDBType())){
				sql = "select A.* from (select " + innerSql+" from "+ whereSql+ orderSql + " limit "+iNextNum +" ) A "+ orderSql1 +" limit "+ipageset;
				//sql = "select top " + ipageset + " B.* from (" + sql + ") B "+ orderby3;
			}else{
				sql = "select top " + ipageset +" A.* from (select top "+ iNextNum + innerSql+" from "+ whereSql+ orderSql+ ") A "+orderSql1;
				sql = "select top " + ipageset +" B.* from (" + sql + ") B "+orderSql2;
			}
// 			System.out.println(sql);
			
			String date = TimeUtil.getCurrentDateString();
			rs.executeSql(sql);
			Map<String,Object> maps = null;
			while(rs.next()){
				maps = new HashMap<String,Object>();
				String id = Util.null2String(rs.getString("id"));
				String bjtp = Util.null2String(rs.getString("bjtp"));
				String name = Util.null2String(rs.getString("name"));
				
				maps.put("id",id);
				maps.put("name",name);
				maps.put("bjtp",bjtp);
				list.add(maps);
			}
			msg = "0";
		}else{
			msg = "暂无知识地图";
		}
    }catch(Exception e){
    	e.printStackTrace();
    	msg = "数据加载失败,请稍后再试";
    }
    JSONObject json = new JSONObject();
	json.put("list",list);
	json.put("msg",msg);
	json.put("totalpage",totalpage);
	//System.out.println(json.toString());
	out.print(json.toString());
    
%>