namespace Admin.NET.Plugin.ApprovalFlow.Service;
///
/// 业务流程回调处理器接口
/// 每种 BizType 实现一个 Handler,注册到 DI 容器
///
public interface IFlowBizHandler
{
///
/// 业务类型编码(与流程定义的 BizType 匹配)
///
string BizType { get; }
///
/// 流程发起后回调(可选:更新业务表状态为"审批中")
///
Task OnFlowStarted(long bizId, long instanceId) => Task.CompletedTask;
///
/// 流程结束后回调(必须:更新业务表最终状态)
///
Task OnFlowCompleted(long bizId, FlowInstanceStatusEnum finalStatus);
///
/// 单个节点审批完成回调(可选:按节点推进业务进度)
///
Task OnNodeCompleted(long bizId, string nodeId, string nodeName) => Task.CompletedTask;
///
/// 获取业务数据用于网关条件表达式求值(可选)
/// 返回 key-value 字典,key 对应条件表达式中的变量名
/// 例如: { "amount": 50000, "urgent": 1, "customLevel": 3 }
///
Task> GetBizData(long bizId) => Task.FromResult(new Dictionary());
}