Pārlūkot izejas kodu

为HTML报表预览添加标题定制功能,可以添加_title参数指定标题,如果不加则以当前预览的报表名为标题

master
jacky6024 pirms 7 gadiem
vecāks
revīzija
16412ad454
  1. 20
      ureport2-console/src/main/java/com/bstek/ureport/console/html/HtmlPreviewServletAction.java
  2. 2
      ureport2-console/src/main/resources/ureport-html/html-preview.html

20
ureport2-console/src/main/java/com/bstek/ureport/console/html/HtmlPreviewServletAction.java

@ -82,6 +82,8 @@ public class HtmlPreviewServletAction extends RenderPageServletAction {
}
errorMsg=buildExceptionMessage(ex);
}
String title=buildTitle(req);
context.put("title", title);
if(htmlReport==null){
context.put("content", "<div style='color:red'><strong>报表计算出错,错误信息如下:</strong><br><div style=\"margin:10px\">"+errorMsg+"</div></div>");
context.put("error", true);
@ -150,6 +152,24 @@ public class HtmlPreviewServletAction extends RenderPageServletAction {
}
}
private String buildTitle(HttpServletRequest req){
String title=req.getParameter("_title");
if(StringUtils.isBlank(title)){
title=req.getParameter("_u");
title=decode(title);
int point=title.lastIndexOf(".ureport.xml");
if(point>-1){
title=title.substring(0,point);
}
if(title.equals("p")){
title="设计中报表";
}
}else{
title=decode(title);
}
return title+"--UReport";
}
private String convertJson(Collection<ChartData> data){
if(data==null || data.size()==0){
return "";

2
ureport2-console/src/main/resources/ureport-html/html-preview.html

@ -6,7 +6,7 @@
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
<meta http-equiv="Cache-Control" content="no-siteapp" />
<meta name ="viewport" content ="initial-scale=1, maximum-scale=3, minimum-scale=1, user-scalable=no">
<title>UReport2报表预览</title>
<title>${title}</title>
<style type="text/css" id="_ureport_table_style">
${style}
</style>

Notiek ielāde…
Atcelt
Saglabāt