...
|
...
|
@@ -2,7 +2,7 @@ |
|
|
--------
|
|
|
### 算费结果在context对象的ChargeTotal中,调用ChargerService.charge(context).
|
|
|
### 1.docharge进行算费
|
|
|
#### 1.1对商品进行分类,
|
|
|
#### 1.1对商品进行分类,
|
|
|
1.1.1 遍历ChargeContext中的chargeGoodsList,
|
|
|
首先判断是否下架,再根据是否是预售,结果存入preOffShelvesGoods或offShelvesGoods中。
|
|
|
根据库存信息,判断是否售罄,结果存入offShelvesGoods或soldOutGoods中。
|
...
|
...
|
@@ -10,15 +10,15 @@ |
|
|
共分为:mainGoodsGift、mainGoodsPriceGift、advanceGoods、outletGoods、mainGoods。
|
|
|
如果购物车类型是预售,则mainGoods=advanceGoods(预售购物车只取mainGoods类别)
|
|
|
设置jit信息,goodlist中只要有一个是jit则,设置ChargeParam的IsJit为true。
|
|
|
#### 1.2进行初始化算费,调用InitCharge.charge方法,计算普通商品的总价和运费
|
|
|
#### 1.2进行初始化算费,调用InitCharge.charge方法,计算普通商品的总价和运费
|
|
|
遍历maingoods,
|
|
|
计算maingoods的购买数量goodsCount,
|
|
|
计算已选maingoods的购买数量selectedGoodsCount
|
|
|
计算已选且不是赠品和加价购商品的总价orderAmount
|
|
|
从ChargeParam中取得是否需要运费(默认不需要)以及是否加急等,计算运费(普通10元,加急加5元)。
|
|
|
将以上信息保存到ChargeTotal中并设置到chargeContext中
|
|
|
#### 1.3从ChargeParam中获取chargeType
|
|
|
#### 1.4根据chargeType执行对应的操作(分别是普通商品、预售产品、限购商品、计算优惠券可用不可用)
|
|
|
#### 1.3从ChargeParam中获取chargeType
|
|
|
#### 1.4根据chargeType执行对应的操作(分别是普通商品、预售产品、限购商品、计算优惠券可用不可用)
|
|
|
ORDINARY普通商品:
|
|
|
调用doOrdinaryCharge(chargeContext)进行具体算费。
|
|
|
1.4.1异步调用货到付款信息
|
...
|
...
|
|