📄 ilabprojectinfo4researcheraction.java
字号:
package cn.edu.hlju.oa.kygl.action;
import javax.servlet.http.*;
import javax.servlet.ServletContext;
import java.io.*;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.engine.JRRuntimeException;
import java.util.*;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.JasperFillManager;
import java.util.Map;
import cn.edu.hlju.oa.kygl.print.SRDataSourceFactory;
import cn.edu.hlju.oa.kygl.util.GlobalUtil;
public class ILabProjectInfo4ResearcherAction extends GeneralAction {
public ILabProjectInfo4ResearcherAction() {
}
/**
* 一些预处理操作
*
* @param request HttpServletRequest
* @param response HttpServletResponse
* @throws Exception
* @todo Implement this cn.edu.hlju.oa.kygl.action.GeneralAction method
*/
void preProcess(HttpServletRequest request, HttpServletResponse response) throws Exception {
request.setCharacterEncoding("UTF-8");
String action=request.getParameter("action");
//如果没有参数则设置默认值
if( action == null)
action = "reportQuery";
if( action.equals("reportQuery")){
actionType=REPORT_QUERY;
actionPage="ILabProjectInfo4ResearcherQuery.jsp";
}else if(action.equals("reportPreview")){
actionType=REPORT_PREVIEW;
//进入到打印预览页面
actionPage="GeneralHTMLReportViewer.jsp";
//actionPage="PrintPreviewServlet";
}else if(action.equals("reportPrint")){
actionType=REPORT_PRINT;
//返回到查询页面
actionPage="ILabProvincePlusProjectQuery.jsp";
}
}
/**
* 验证操作
*
* @param request HttpServletRequest
* @param response HttpServletResponse
* @throws Exception
* @todo Implement this cn.edu.hlju.oa.kygl.action.GeneralAction method
*/
void validate(HttpServletRequest request, HttpServletResponse response) throws Exception {
}
/**
* 执行业务逻辑的操作
*
* @param request HttpServletRequest
* @param response HttpServletResponse
* @throws Exception
* @todo Implement this cn.edu.hlju.oa.kygl.action.GeneralAction method
*/
void executeBusiniess(HttpServletRequest request, HttpServletResponse response) throws Exception {
switch (actionType) {
case REPORT_QUERY:
{
//从数据库中获得项目来源的编码和编码名称----------------------------------
TreeMap map = GlobalUtil.getILabInfo("001");
request.setAttribute("QueryTitle","实验室人员承担项目信息");
request.setAttribute("ActionName","ILabProjectInfo4ResearcherAction");
request.setAttribute("ILabInfo",map);
}
break;
case REPORT_PREVIEW:
{
//获得年限:5年或10年-----------------------------------------------------
int yearLimit = Integer.parseInt(request.getParameter("yearLimit"));
int startYear = Integer.parseInt(request.getParameter("startYear"));
//获得重点实验室的编码
String iLabBm = request.getParameter("ILabSelection");
String filePath = null;
ServletContext context = this.getServletConfig().getServletContext();
if( yearLimit == 5)
filePath = context.getRealPath("/Reports/实验室人员承担项目情况/ProjectInfo4ResearcherInLab1.jasper");
else
filePath = context.getRealPath("/Reports/实验室人员承担项目情况/ProjectInfo4ResearcherInLab2.jasper");
//生成对Jasper文件的引用
File reportFile = new File(filePath);
if (!reportFile.exists())
throw new JRRuntimeException("File WebappReport.jasper not found. The report design must be compiled first.");
//报表装填
JasperReport jasperReport = (JasperReport)JRLoader.loadObject(reportFile.getPath());
Map parameters = new HashMap();
parameters.put("StartYear",startYear);
JasperPrint jasperPrint =
JasperFillManager.fillReport(
jasperReport,
parameters,
SRDataSourceFactory.createILabReseacherProjectsDS(startYear,yearLimit,iLabBm)
);
//JasperViewer.viewReport(jasperPrint, false);
request.getSession().setAttribute("JasperPrint",jasperPrint);
request.getSession().setAttribute("pageTitle","实验室人员承担项目情况");
}
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -