feat(refdata): Q22 basicdata 映射与 ReferenceDataProcessor(ACM2-93)

闭合 Q22;V6 建 basicdata 表组;RefData 走真处理器(DNLD/RESP/ADD/UPD/DEL/RSTA)。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
windyboy
2026-09-21 16:01:06 +08:00
co-authored by Cursor
parent 02b0b2f189
commit e5449a5cb1
24 changed files with 1442 additions and 34 deletions
@@ -124,6 +124,7 @@ class MessageProcessor(
private val flopProcessor: FlopProcessor,
private val fdelProcessor: FdelProcessor,
private val adftProcessor: AdftProcessor,
private val referenceDataProcessor: ReferenceDataProcessor,
private val outbound: OutboundRequestService,
private val procFailure: ProcFailure,
private val props: PipelineProps,
@@ -237,10 +238,9 @@ class MessageProcessor(
flopProcessor.apply(head, decoded, payload)
}
is MsgKind.RefData -> {
// 参考数据必须走 US-13implementation.md「分派」),不得按"不支持"跳过;
// ReferenceDataProcessor 尚未实装(ACM2-93,待 Q22),先按可重试失败留队并告警。
log.warn("refdata without handler -> FAILED(UNSUPPORTED) msgId={} type={}", head.msgId, kind.type)
return procFailure.fail(head, ErrorClass.UNSUPPORTED, "refdata-pending:${kind.type}")
val body = decoded.body as? com.gzzn.omms.msgexchange.domain.ref.RefDataBody // validated below
if (body == null) return deadMalformed(head, "missing-refdata-body")
referenceDataProcessor.apply(head, decoded, kind.type)
}
MsgKind.Eror -> {
val payload = decoded.body as? ErorPayload