protected override void CalculateRefoundFor(ReturnOrder returnOrder) { //处理退库的业务代码 }
protected override void GenerateReturnTransactionFor(ReturnOrder returnOrder) { //无条件退款,只是退还商品价格,不包含邮费运费 returnOrder.AmountToRefund = returnOrder.PricePaid; }
public void Process(ReturnOrder returnOrder) { GenerateReturnTransactionFor(returnOrder); CalculateRefoundFor(returnOrder); }
protected abstract void CalculateRefoundFor(ReturnOrder returnOrder);
/// <summary> /// /// </summary> protected abstract void GenerateReturnTransactionFor(ReturnOrder returnOrder);
public void Process(ReturnOrder returnOrder) { ReturnProcessTemplate returnProcess = ReturnProcessFactory.CreateFrom(returnOrder.Action); returnProcess.Process(returnOrder); }
protected override void GenerateReturnTransactionFor(ReturnOrder returnOrder) { //问题退款,除了商品价格,还包括运费 returnOrder.AmountToRefund = returnOrder.PricePaid + returnOrder.PostageCost; }