package edu.sjtu.infosec.ismp.manager.LM.pfLog.web.actions; import java.sql.Timestamp; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.beanutils.BeanUtils; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.actions.DispatchAction; import org.infosec.ismp.manager.rmi.lm.pfLog.model.SystemLog; import edu.sjtu.infosec.ismp.manager.LM.pfLog.service.SystemLogService; import edu.sjtu.infosec.ismp.manager.LM.pfLog.web.form.SystemLogActionForm; import edu.sjtu.infosec.ismp.manager.LM.util.InitQueryDate; import edu.sjtu.infosec.ismp.manager.LM.util.modle.PageBean; public class SystemLogAction extends DispatchAction { private SystemLogService systemlogService; public ActionForward init(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { List<String> initDate = InitQueryDate.initQueryDate(30); SystemLogActionForm systemLogActionForm = (SystemLogActionForm) form; if(systemLogActionForm.getBeginDate()==null){ systemLogActionForm.setBeginDate(initDate.get(0)); systemLogActionForm.setEndDate(initDate.get(1)); } request.setAttribute("dateList", initDate); return query(mapping, form, request, response); } public ActionForward query(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { SystemLog log = new SystemLog(); SystemLogActionForm systemLogActionForm = (SystemLogActionForm) form; // System.out.println("--------------"+systemLogActionForm.getModuleName()); PageBean pageBean = new PageBean(); if(request.getParameter("type")==null || !request.getParameter("type").equals("page")){ if(!systemLogActionForm.getModuleName().equals("all")){ BeanUtils.copyProperties(log, systemLogActionForm); // System.out.println("--------------"+log.getModuleName()+"--"+log.getTime()); } List dateList = new ArrayList(); dateList.add(systemLogActionForm.getBeginDate()); dateList.add(systemLogActionForm.getEndDate()); request.getSession().setAttribute("systemLogListQuery_date", dateList); request.getSession().setAttribute("systemLogListQuery_log", log); } int pageNo = 1; if(request.getParameter("pageNo")!=null && request.getParameter("pageNo")!="") pageNo = Integer.valueOf(request.getParameter("pageNo")); pageBean.setPageRowNum(12); pageBean.setPageNo(pageNo); List<SystemLog> systemlog = systemlogService.getPageBySystemLog((SystemLog)request.getSession().getAttribute("systemLogListQuery_log"), (pageBean.getPageNo()-1)*pageBean.getPageRowNum(), pageBean.getPageRowNum(), Timestamp.valueOf(((List)request.getSession().getAttribute("systemLogListQuery_date")).get(0).toString()), Timestamp.valueOf(((List)request.getSession().getAttribute("systemLogListQuery_date")).get(1).toString())); pageBean.setResultRowSum(systemlogService.getSystemLogCount((SystemLog)request.getSession().getAttribute("systemLogListQuery_log"), Timestamp.valueOf(((List)request.getSession().getAttribute("systemLogListQuery_date")).get(0).toString()), Timestamp.valueOf(((List)request.getSession().getAttribute("systemLogListQuery_date")).get(1).toString()))); pageBean.setPageMaxSum((pageBean.getResultRowSum()+(pageBean.getPageRowNum()-1))/pageBean.getPageRowNum()); pageBean.setPageResult(systemlog); request.setAttribute("pageResult", pageBean); // System.out.println("----------PageBean--source-------"); // System.out.println("当前页:" + pageBean.getPageNo()); // System.out.println("一共多少页:" + pageBean.getPageMaxSum()); // System.out.println("每页多少行:" + pageBean.getPageRowNum()); // System.out.println("一共多少行:" + pageBean.getResultRowSum()); // System.out.println("符合查询数:" + pageBean.getPageResult().size()); // System.out.println("----------PageBean--source-------"); return mapping.findForward("systemLogDisplay"); } public SystemLogService getSystemlogService() { return systemlogService; } public void setSystemlogService(SystemLogService systemlogService) { this.systemlogService = systemlogService; } }