liujie
2026-06-25 4e8da8055692c845345f48e891850b6a685977be
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
package com.estate.expert.admin.io.processor.impl.record;
 
import com.estate.expert.admin.domain.exam.record.error.ErrorRecord;
import com.estate.expert.admin.io.processor.RowDataProcessorBase;
import com.estate.expert.admin.io.processor.util.ProcessorHelper;
import com.estate.expert.admin.utils.DeletedObjectUtil;
 
import java.util.List;
 
/**
 * 综合问题记录处理器
 * 
 * 用于处理综合问题记录信息的读取和写入
 */
public class SystemErrorRecordProcessor extends RowDataProcessorBase<ErrorRecord> {
 
    protected final String[] getHeaders() {
        return new String[]{
                "委托方", "检查计划", "项目名称", "施工单位", "监理单位", "建设单位",
                "打分评价", "模糊评价", "检查类型",
                "检查内容(节点1)", "检查内容(节点2)", "检查内容(节点3)", "检查内容(节点4)", "检查内容(节点5)", "检查内容(节点6)",
                "检查部位", "问题描述", "问题备注", "规范条款",
                "隐患等级", "复核情况", "创建时间"
        };
    }
 
    @Override
    public String getName() {
        return "综合问题";
    }
 
    @Override
    protected List<String> buildRowData(ErrorRecord data) {
        // 保留此方法以保持兼容性,实际使用 buildRowDataObjects
        return null;
    }
 
    @Override
    protected List<Object> buildRowDataObjects(ErrorRecord data) {
        if(data.getDevice() != null) // 没有设备信息的为综合问题记录
            return null;
 
        var checkTask = data.getCheckTask();
        var project = checkTask.getProject();
        var plan = checkTask.getPlan();
 
        return List.of(
                DeletedObjectUtil.beautifyDeletedString(project.getClient().getName()),
                DeletedObjectUtil.beautifyDeletedString(plan.getName()),
                DeletedObjectUtil.beautifyDeletedString(project.getName()),
                project.getConstructionCompanyInfo() != null ? project.getConstructionCompanyInfo().getName() : "",
                project.getSupervisorCompanyInfo() != null ? project.getSupervisorCompanyInfo().getName() : "",
                project.getConstructionCompanyInfo() != null ? project.getConstructionCompanyInfo().getName() : "",
                checkTask.getSystemScore() != null ? checkTask.getSystemScore() : "-",
                checkTask.getSystemFuzzy() != null ? checkTask.getSystemFuzzy() : "-",
                plan.getType().getDesc(),
                ProcessorHelper.getHierarchyName(data, 5),
                ProcessorHelper.getHierarchyName(data, 4),
                ProcessorHelper.getHierarchyName(data, 3),
                ProcessorHelper.getHierarchyName(data, 2),
                ProcessorHelper.getHierarchyName(data, 1),
                ProcessorHelper.getHierarchyName(data, 0),
                data.getProblemPart(),
                data.getProblem().getDescription(),
                data.getRemark(),
                ProcessorHelper.getSpec(data),
                data.getLevel().getDesc(),
                ProcessorHelper.getReviewStateStr(data),
                ProcessorHelper.formatDateTime(data.getCreateTime())
        );
    }
 
}