package com.zy.acs.manager.core.service;
|
|
import com.zy.acs.manager.manager.entity.Guarantee;
|
|
import java.time.LocalDateTime;
|
|
/**
|
* Runtime guarantee orchestration entry.
|
*/
|
public interface GuaranteeRuntimeService {
|
|
/**
|
* Lead time entrance: make sure enough vehicles can reach the target window.
|
*/
|
void prepare(Guarantee plan, LocalDateTime targetTime);
|
|
/**
|
* Lock stage: restrict non-essential dispatching for reserve vehicles.
|
*/
|
void lock(Guarantee plan, LocalDateTime targetTime);
|
|
/**
|
* Executed repeatedly during the guarantee window to keep SLA.
|
*/
|
void checkWindow(Guarantee plan, LocalDateTime targetTime);
|
|
/**
|
* Called once after the window ends to release state/records.
|
*/
|
void finish(Guarantee plan, LocalDateTime targetTime);
|
}
|