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