AttributionReportVO.java 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package com.etotem.cfc.dto;
  2. import lombok.Data;
  3. import java.io.Serializable;
  4. import java.util.ArrayList;
  5. import java.util.LinkedHashMap;
  6. import java.util.List;
  7. import java.util.Map;
  8. /**
  9. * 归因分析报告视图(B1)。
  10. *
  11. * <p>{@code reportJson} 为十节结构(结论先行/数据速览/逐人归因/家庭系统归因/应对方案/
  12. * 12周目标/教练提问序列/问诊清单/红线与转介/一句话收尾)。
  13. *
  14. * @author 家庭归因阶段二(ATT-S2-B1)
  15. */
  16. @Data
  17. public class AttributionReportVO implements Serializable {
  18. /** 归因报告ID(attribution_reports.id) */
  19. private Long attributionId;
  20. /** 家庭ID */
  21. private Long familyId;
  22. /** 目标成员ID列表 */
  23. private List<Long> memberIds = new ArrayList<>();
  24. /** 关联方案ID */
  25. private Long planId;
  26. /** 状态机(ANALYZING/READY/ADJUSTING/ADJUSTED/CONFIRMED/GENERATED/INVALIDATED) */
  27. private String status;
  28. /** 十节结构化报告 JSON */
  29. private String reportJson;
  30. /** 红线命中编号(如 ["RL01","RL02"]) */
  31. private List<String> redlineHits = new ArrayList<>();
  32. /** 归因中间态(供 B2 条件路由 / B3 回填) */
  33. private Map<String, Object> intermediateState = new LinkedHashMap<>();
  34. /** 非阻断性告警(如常模缺失「待补」、成员被跳过等) */
  35. private List<String> warnings = new ArrayList<>();
  36. }