| @@ -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(); | |||
| } | |||