|
@@ -275,28 +275,56 @@ public class ApiMkStoreCampMinusService {
|
|
|
*/
|
|
|
private void getResultByCheckPieceConf(MkStoreCampMinusVo minusVo,List<CartVo> cartVoList,
|
|
|
Integer pieceConf, BigDecimal money, List<CampMinusDto> result,List<MkStoreCampMinusVo> switchList){
|
|
|
- if(minusVo.getApplyType().equalsIgnoreCase(Dict.applyType.item_00.getItem())){//全部商品参与
|
|
|
- //计算购物车中满足部分商品的销售价
|
|
|
- BigDecimal totalByGoodsId = getTotalByGoodsId(cartVoList, minusVo);
|
|
|
- //计算购物车中满足部分商品的件数
|
|
|
- Integer pieceByGoodsId = getPieceByGoodsId(cartVoList, minusVo);
|
|
|
- //购物车中件数>满减件,去重
|
|
|
- if (pieceByGoodsId.compareTo(pieceConf) >= 0 && totalByGoodsId.compareTo(money) > 0 && containsList(switchList,minusVo)) {
|
|
|
- CampMinusDto campMinusDto = setCampMinus(minusVo, money);
|
|
|
- result.add(campMinusDto);
|
|
|
- switchList.add(minusVo);
|
|
|
+ if(minusVo.getCampMinusType().equalsIgnoreCase(Dict.campMinusType.item_01.getItem())) {
|
|
|
+ if (minusVo.getApplyType().equalsIgnoreCase(Dict.applyType.item_00.getItem())) {//全部商品参与
|
|
|
+ //计算购物车中满足部分商品的销售价
|
|
|
+ BigDecimal totalByGoodsId = getTotalByGoodsId(cartVoList, minusVo);
|
|
|
+ //计算购物车中满足部分商品的件数
|
|
|
+ Integer pieceByGoodsId = getPieceByGoodsId(cartVoList, minusVo);
|
|
|
+ //购物车中件数>满减件,去重
|
|
|
+ if (pieceByGoodsId.compareTo(pieceConf) >= 0 && totalByGoodsId.compareTo(money) > 0 && containsList(switchList, minusVo)) {
|
|
|
+ CampMinusDto campMinusDto = setCampMinus(minusVo, money);
|
|
|
+ result.add(campMinusDto);
|
|
|
+ switchList.add(minusVo);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!minusVo.getApplyType().equalsIgnoreCase(Dict.applyType.item_00.getItem())) {//部分商品参与
|
|
|
+ //计算购物车中满足部分商品的销售价
|
|
|
+ BigDecimal totalByGoodsId = getTotalByGoodsId(cartVoList, minusVo);
|
|
|
+ //计算购物车中满足部分商品的件数
|
|
|
+ Integer pieceByGoodsId = getPieceByGoodsId(cartVoList, minusVo);
|
|
|
+ //购物车中件数>满减件,去重
|
|
|
+ if (pieceByGoodsId.compareTo(pieceConf) >= 0 && totalByGoodsId.compareTo(money) > 0 && containsList(switchList, minusVo)) {
|
|
|
+ CampMinusDto campMinusDto = setCampMinus(minusVo, money);
|
|
|
+ result.add(campMinusDto);
|
|
|
+ switchList.add(minusVo);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- if(!minusVo.getApplyType().equalsIgnoreCase(Dict.applyType.item_00.getItem())) {//部分商品参与
|
|
|
- //计算购物车中满足部分商品的销售价
|
|
|
- BigDecimal totalByGoodsId = getTotalByGoodsId(cartVoList, minusVo);
|
|
|
- //计算购物车中满足部分商品的件数
|
|
|
- Integer pieceByGoodsId = getPieceByGoodsId(cartVoList, minusVo);
|
|
|
- //购物车中件数>满减件,去重
|
|
|
- if(pieceByGoodsId.compareTo(pieceConf) >= 0 && totalByGoodsId.compareTo(money) > 0 && containsList(switchList,minusVo)){
|
|
|
- CampMinusDto campMinusDto = setCampMinus(minusVo, money);
|
|
|
- result.add(campMinusDto);
|
|
|
- switchList.add(minusVo);
|
|
|
+ if(minusVo.getCampMinusType().equalsIgnoreCase(Dict.campMinusType.item_11.getItem())){
|
|
|
+ if (minusVo.getApplyType().equalsIgnoreCase(Dict.applyType.item_00.getItem())) {//全部商品参与
|
|
|
+// //计算购物车中满足部分商品的销售价
|
|
|
+// BigDecimal totalByGoodsId = getTotalByGoodsId(cartVoList, minusVo);
|
|
|
+ //计算购物车中满足部分商品的件数
|
|
|
+ Integer pieceByGoodsId = getPieceByGoodsId(cartVoList, minusVo);
|
|
|
+ //购物车中件数>满减件,去重
|
|
|
+ if (pieceByGoodsId.compareTo(pieceConf) >= 0 && containsList(switchList, minusVo)) {
|
|
|
+ CampMinusDto campMinusDto = setCampMinus(minusVo, money);
|
|
|
+ result.add(campMinusDto);
|
|
|
+ switchList.add(minusVo);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!minusVo.getApplyType().equalsIgnoreCase(Dict.applyType.item_00.getItem())) {//部分商品参与
|
|
|
+// //计算购物车中满足部分商品的销售价
|
|
|
+// BigDecimal totalByGoodsId = getTotalByGoodsId(cartVoList, minusVo);
|
|
|
+ //计算购物车中满足部分商品的件数
|
|
|
+ Integer pieceByGoodsId = getPieceByGoodsId(cartVoList, minusVo);
|
|
|
+ //购物车中件数>满减件,去重
|
|
|
+ if (pieceByGoodsId.compareTo(pieceConf) >= 0 && containsList(switchList, minusVo)) {
|
|
|
+ CampMinusDto campMinusDto = setCampMinus(minusVo, money);
|
|
|
+ result.add(campMinusDto);
|
|
|
+ switchList.add(minusVo);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|