下面这种表格如何使用xml导出呢?
xml代码
xml
<?xml version="1.0" encoding="UTF-8"?>
<tables>
<styles>
<style id="h1" font.fontheightinpoints="14" font.fontname="黑体" alignment="center"
border="1" vertical="center"/>
<style id="h2" font.fontheightinpoints="14" font.fontname="黑体" alignment="center"
border="1" vertical="center"/>
<style id="header_cell_center_bold" font.fontheightinpoints="12" font.fontname="黑体" alignment="center"
border="1" vertical="center"/>
<style id="header_cell_center_bold_h2" font.fontheightinpoints="12" font.fontname="黑体" alignment="left"
border="1" vertical="center"/>
<style id="content_cell_center" font.fontheightinpoints="10" font.fontname="宋体" alignment="center" border="1"
wrapText="true" vertical="center"/>
<style id="content_cell_left" font.fontheightinpoints="12" font.fontname="黑体" alignment="left" border="1"
wrapText="true" vertical="center"/>
</styles>
<table name="总体情况">
#if($dataMap['jibqk']!=$null && $dataMap['jibqk'].rows.size()>0)
<tr>
<td styleId="content_cell_left" colspan="6">基本情况</td>
</tr>
<tr>
#foreach($row in $dataMap['jibqk'].rows)
<td styleId="content_cell_center" width="14">$row.cells.name</td>
<td styleId="content_cell_center" width="6">$row.cells.data_c</td>
#set($remainder = $foreach.count%3)
#if($remainder==0)
</tr>
<tr>
<!--$remainder..2 作用:因为总共六列,集合数据中,第一列和第二列一定会有值,所以remainder的值为0(循环2次),1(循环1次),2(循环0次) 每循环一次会增加两列,最多增加4列--> #elseif($foreach.count==$dataMap['jibqk'].rows.size())
#foreach($i in [$remainder..2])
<td styleId="content_cell_center" width="14"></td>
<td styleId="content_cell_center" width="6"></td>
#end
#end
#end
</tr>
#end
#if($dataMap['tongzds']!=$null && $dataMap['tongzds'].rows.size()>0)
<tr>
<td styleId="content_cell_left" colspan="6">通知单</td>
</tr>
<tr>
#foreach($row in $dataMap['tongzds'].rows)
<td styleId="content_cell_center" width="14">$row.cells.tzd_doctype_name</td>
<td styleId="content_cell_center" width="6">$row.cells.prj_c</td>
#set($remainder = $foreach.count%3)
#if($remainder==0)
</tr>
<tr>
#elseif($foreach.count==$dataMap['tongzds'].rows.size())
#foreach($i in [$remainder..2])
<td styleId="content_cell_center" width="14"></td>
<td styleId="content_cell_center" width="6"></td>
#end
#end
#end
</tr>
#end
#if($dataMap['fankfs']!=$null && $dataMap['fankfs'].rows.size()>0)
<tr>
<td styleId="content_cell_left" colspan="6">反馈方式</td>
</tr>
<tr>
#foreach($row in $dataMap['fankfs'].rows)
<td styleId="content_cell_center" width="14">$row.cells.feedback_type_name</td>
<td styleId="content_cell_center" width="6">$row.cells.prj_c</td>
#set($remainder = $foreach.count%3)
#if($remainder==0)
</tr>
<tr>
#elseif($foreach.count==$dataMap['fankfs'].rows.size())
#foreach($i in [$remainder..2])
<td styleId="content_cell_center" width="14"></td>
<td styleId="content_cell_center" width="6"></td>
#end
#end
#end
</tr>
#end
</table>
</tables>
后端返回的数据结构
json
{
"jibqk": {
"rows": [
{
"cells": {
"name": "总量",
"params": {},
"data_c": 304
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 3
},
{
"cells": {
"name": "办理中",
"params": {
"handleStatus": "10"
},
"data_c": 291
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 3
},
{
"cells": {
"name": "已办结",
"params": {
"handleStatus": "30"
},
"data_c": 12
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 3
},
{
"cells": {
"name": "未到期",
"params": {
"emptyFinishLimitDate": "contain",
"handleStatus": "10",
"finishLimitDateBegin": "2025-04-10"
},
"data_c": 246
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 3
},
{
"cells": {
"name": "超期未办结",
"params": {
"finishLimitDateEnd": "2025-04-09",
"handleStatus": "10"
},
"data_c": 45
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 3
},
{
"cells": {
"name": "按时办结",
"params": {
"handleStatus": "30",
"prjOverDue": false
},
"data_c": 10
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 3
},
{
"cells": {
"name": "超期办结",
"params": {
"handleStatus": "30",
"prjOverDue": true
},
"data_c": 2
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 3
}
],
"columns": [
"name",
"params",
"data_c"
]
},
"fankfs": {
"rows": [
{
"cells": {
"prj_c": 56,
"feedback_type_name": "督查专报",
"feedback_type_id": "12a71a3e2ea24b75a76152654f94101c",
"params": {
"feedbackTypeId": "12a71a3e2ea24b75a76152654f94101c"
}
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 4
}
],
"columns": [
"prj_c",
"feedback_type_name",
"feedback_type_id",
"params"
]
},
"tongzds": {
"rows": [
{
"cells": {
"prj_c": 154,
"tzd_doctype_id": "912f2c748c284c369e008b9ea3a4da95",
"tzd_doctype_name": "督查通知单",
"params": {
"tzdDoctypeId": "912f2c748c284c369e008b9ea3a4da95"
}
},
"subDs": null,
"joined": false,
"closCount": 1,
"cellSize": 4
}
],
"columns": [
"prj_c",
"tzd_doctype_id",
"tzd_doctype_name",
"params"
]
}
}