|
|
|
@@ -1,11 +1,13 @@ |
|
|
|
package com.iformall.print.data; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Iterator; |
|
|
|
import java.util.List; |
|
|
|
import org.jsoup.Jsoup; |
|
|
|
import org.jsoup.nodes.Document; |
|
|
|
import org.jsoup.nodes.Element; |
|
|
|
import org.jsoup.nodes.Node; |
|
|
|
import org.jsoup.nodes.TextNode; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import com.alibaba.fastjson.JSON; |
|
|
|
import com.alibaba.fastjson.JSONObject; |
|
|
|
@@ -42,44 +44,41 @@ public class PrintCustomedTableDataHandler{ |
|
|
|
} |
|
|
|
Document doc = Jsoup.parse(componentContent); |
|
|
|
Element titleTr = doc.getElementById("titletr"); |
|
|
|
List<Node> titleTds = titleTr.childNodes(); |
|
|
|
List<Node> titleAllTds = titleTr.childNodes(); |
|
|
|
List<Node> titleTds = new ArrayList<Node>();; |
|
|
|
for (int i = 0 ; i < titleAllTds.size() ; i ++) { |
|
|
|
Node tatn = titleAllTds.get(i); |
|
|
|
if (tatn instanceof Element) { |
|
|
|
titleTds.add(tatn); |
|
|
|
} |
|
|
|
} |
|
|
|
String trclass = titleTr.attr("class"); |
|
|
|
String trstyle = titleTr.attr("style"); |
|
|
|
StringBuffer sb = new StringBuffer(); |
|
|
|
for (int i = 0 ; i < listdata.size(); i ++) { |
|
|
|
Object object = listdata.get(i); |
|
|
|
JSONObject o = JSON.parseObject(JSON.toJSONString(object)); |
|
|
|
Element tr = titleTr.parent().appendElement("tr"); |
|
|
|
sb.append("<tr "); |
|
|
|
if (StringUtils.isNotBlank(trclass)) { |
|
|
|
sb.append(" class = \"").append(trclass).append("\" "); |
|
|
|
tr.attr("class", trclass); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(trstyle)) { |
|
|
|
sb.append(" style = \"").append(trstyle).append("\" "); |
|
|
|
tr.attr("style", trstyle); |
|
|
|
} |
|
|
|
sb.append(">"); |
|
|
|
for (int j = 0 ; j < titleTds.size() ; j ++) { |
|
|
|
Node td = titleTds.get(j); |
|
|
|
Element tre = tr.appendElement("td"); |
|
|
|
String tdclass = td.attr("class"); |
|
|
|
String tdstyle = td.attr("style"); |
|
|
|
String tdcolspan = td.attr("colspan"); |
|
|
|
sb.append("<td "); |
|
|
|
if (StringUtils.isNotBlank(tdclass)) { |
|
|
|
sb.append(" class = \"").append(tdclass).append("\" "); |
|
|
|
tre.attr("class", tdclass); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(tdstyle)) { |
|
|
|
sb.append(" style = \"").append(tdstyle).append("\" "); |
|
|
|
tre.attr("style", tdstyle); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(tdcolspan)) { |
|
|
|
sb.append(" colspan = \"").append(tdcolspan).append("\" "); |
|
|
|
tre.attr("colspan", tdcolspan); |
|
|
|
} |
|
|
|
sb.append(">"); |
|
|
|
//取什么属性 |
|
|
|
String fieldName = td.attr("fieldName"); |
|
|
|
if (StringUtils.isNotBlank(fieldName)) { |
|
|
|
@@ -114,10 +113,7 @@ public class PrintCustomedTableDataHandler{ |
|
|
|
} |
|
|
|
tre.appendText(tdcontent.toString()); |
|
|
|
} |
|
|
|
sb.append("</td>"); |
|
|
|
} |
|
|
|
sb.append("</tr>"); |
|
|
|
|
|
|
|
} |
|
|
|
return doc.head().html() + doc.body().html(); |
|
|
|
} |
|
|
|
|