“mitao”
2026-03-25 309b5eb17c510c781daec96bbfef3b693f3a4d7e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package com.estate.expert.admin.stat.report.render;
 
import com.alibaba.fastjson.JSONObject;
import com.deepoove.poi.policy.DynamicTableRenderPolicy;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.springframework.util.CollectionUtils;
 
import java.util.List;
 
/**
 * 设备信息表格渲染策略
 */
public class DeviceInfoTablePolicy extends DynamicTableRenderPolicy {
 
    /**
     * 渲染设备信息表格
     * @param table 表格
     * @param data 数据
     * @throws Exception 异常
     */
    @Override
    public void render(XWPFTable table, Object data) throws Exception {
        if (data == null) {
            return;
        }
 
        var deviceInfoList = (List<Object>) data;
        if (CollectionUtils.isEmpty(deviceInfoList)) {
            return;
        }
 
        for (var deviceInfo : deviceInfoList) {
            var info = (JSONObject) deviceInfo;
            var row = table.insertNewTableRow(table.getRows().size() - 3);
 
            RenderHelper.renderCell(row, "");
            RenderHelper.renderCell(row, info.getString("设备类型"));
            RenderHelper.renderCell(row, "1");
            RenderHelper.renderCell(row, info.getString("设备编号"));
            RenderHelper.renderCell(row, info.getString("设备租赁单位"));
            RenderHelper.renderCell(row, info.getString("设备使用单位"));
            RenderHelper.renderCell(row, info.getString("安拆单位"));
            RenderHelper.renderCell(row, info.getString("检测单位"));
        }
    }
}