@pisell/pisellos
Version:
一个可扩展的前端模块化SDK框架,支持插件系统
33 lines (32 loc) • 1.14 kB
TypeScript
import { EvaluationResult, RuntimeContext } from '../../type';
import { BusinessAdapter } from '../type';
import { WalletPassBusinessData, WalletPassTransformResult } from './type';
/**
* Wallet Pass 适配器
* 用于将 wallet pass 业务数据转换为策略引擎可识别的格式
*/
export default class WalletPassAdapter implements BusinessAdapter {
name: string;
version: string;
/**
* 准备运行时上下文
* 将业务数据转换为策略引擎可识别的 RuntimeContext
*/
prepareContext(businessData: WalletPassBusinessData): RuntimeContext;
/**
* 转换执行结果
* 将策略引擎的通用结果转换为业务层需要的格式
*/
transformResult(result: EvaluationResult, businessData?: WalletPassBusinessData): WalletPassTransformResult;
/**
* 格式化配置
*/
formatConfig(result: EvaluationResult, businessData?: WalletPassBusinessData): {
result: EvaluationResult;
businessData?: WalletPassBusinessData;
};
/**
* 计算适用商品的总金额和数量
*/
private calculateApplicableProducts;
}