CAMessage.jsp 3.88 KB

<%@ page language="java" contentType="application/json" pageEncoding="UTF-8"%>
<%@page import="net.sf.json.*"%>
<%@ page import="weaver.file.*" %>
<%@ page import="java.util.*" %>
<%@page import="weaver.conn.*"%>
<%@ page import="weaver.general.*" %>
<%@ page import="ln.LN" %>
<%@page import="weaver.file.Prop" %>
<%@ page import="weaver.hrm.*" %>
<%@page import="weaver.login.CALoginCheck" %>

<%
	Map<String, Object> result = new HashMap<String, Object>();

	RecordSet rs = new RecordSet();

	FileUpload fu = new FileUpload(request);

	String method = Util.null2String(fu.getParameter("method"));

	if("query".equals(method)){
		String name = Util.null2String(fu.getParameter("name"));
		String pageBegin = Util.null2String(fu.getParameter("pageBegin"));
		String pageEnd = Util.null2String(fu.getParameter("pageEnd"));
		String pageSize = Util.null2String(fu.getParameter("pageSize"));
		String pageStart = Util.null2String(fu.getParameter("pageStart"));

		List conditions = new ArrayList();
	
		String dbType = rs.getDBType();
		if("oracle".equals(dbType)){
			rs.executeSql("select * from (select *,ROWNUM RN from hrm_mobile_ca_cert where status = 0 and lastname LIKE '%"+name+"%')a where RN BETWEEN "+pageBegin+" AND "+ pageEnd);
			while(rs.next()){
				Map<String, String> map = new HashMap<String, String>();
				String userid = rs.getString("userid");
				String cert = rs.getString("cert");
				String lastname = rs.getString("lastname");
				String cert18name = rs.getString("cert18name");
				String cert18id = rs.getString("cert18id");
				map.put("userid",userid);
				map.put("cert",cert);
				map.put("lastname",lastname);
				map.put("cert18name",cert18name);
				map.put("cert18id",cert18id);
				conditions.add(map);
			}
		
		} else if("sqlserver".equals(dbType)){
			rs.executeSql("select top "+pageSize+" * from hrm_mobile_ca_cert where  status = 0 and lastname LIKE '%"+name+"%' and cert not in(select top "+pageStart+" cert from hrm_mobile_ca_cert where  status = 0 and lastname LIKE '%"+name+"%' order by userid) order by userid");
			while(rs.next()){
				Map<String, String> map = new HashMap<String, String>();
				String userid = rs.getString("userid");
				String cert = rs.getString("cert");
				String lastname = rs.getString("lastname");
				String cert18name = rs.getString("cert18name");
				String cert18id = rs.getString("cert18id");
				map.put("userid",userid);
				map.put("cert",cert);
				map.put("lastname",lastname);
				map.put("cert18name",cert18name);
				map.put("cert18id",cert18id);
				conditions.add(map);
			}
		
		}
		rs.executeSql("select count(*) total from hrm_mobile_ca_cert where status = 0 and lastname LIKE '%"+name+"%' ");
		while(rs.next()){
			result.put("total",Util.getIntValue(rs.getString("total"), 0));
		}
		result.put("conditions",conditions);
	} else if("logOff".equals(method)){
		String cert = Util.null2String(fu.getParameter("cert"));
		rs.executeSql("update hrm_mobile_ca_cert set status = 1 where cert = '"+cert+"'");
		result.put("status","1");
	}  else if("check".equals(method)){
		boolean flag = false;
		try {
			User user = HrmUserVarify.getUser (request , response) ;
			Map<String, String> parames = new HashMap<String, String>();
			String cert = Util.null2String(fu.getParameter("cert"));
			String signAlg = Util.null2String(fu.getParameter("signAlg"));
			String signatureValue = Util.null2String(fu.getParameter("signatureValue"));
			String randomNumber = Util.null2String(fu.getParameter("randomNumber"));
			parames.put("cert",cert);
			parames.put("signAlg",signAlg);
			parames.put("signatureValue",signatureValue);
			parames.put("randomNumber",randomNumber);
			CALoginCheck caLoginCheck = new CALoginCheck();
			flag = caLoginCheck.validateMobileCaData(parames,user.getUID());
		} catch (Exception e) {
		}
		result.put("flag",flag);
	}
		

	if(result!=null) {
		JSONObject jo = JSONObject.fromObject(result);
		//System.out.println(jo);
		out.println(jo.toString());
	}
%>