You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
758 B
20 lines
758 B
package com.crm.lead.deadline;
|
|
|
|
import java.time.LocalDateTime;
|
|
|
|
/**
|
|
* 双计时器预算(ADR-0027):一次业务事件对回收/失效截止时刻的预计算结果。
|
|
*
|
|
* <p>生命周期止于调用方——解构后填入 {@code TransitionCmd} 的既有散字段,
|
|
* 不穿越状态机 seam(ADR-0021 的「调用方预计算」契约不变)。</p>
|
|
*
|
|
* @param recycle 回收计时 N 的截止时刻;null = 本事件不设 N
|
|
* @param expire 失效计时 M 的截止时刻;null = 本事件不设 M
|
|
*/
|
|
public record DeadlineBudget(LocalDateTime recycle, LocalDateTime expire) {
|
|
|
|
/** 全空预算:本事件两个计时器都不动 */
|
|
public static DeadlineBudget none() {
|
|
return new DeadlineBudget(null, null);
|
|
}
|
|
}
|
|
|