|
|
@ -128,22 +128,28 @@ public class CrossStockServiceImpl implements CrossStockService{ |
|
|
|
bo.setExpressid("SF"); |
|
|
|
|
|
|
|
List<IbOrderItemRequestBo> items = new ArrayList<>(); |
|
|
|
//税费 |
|
|
|
BigDecimal taxtotal = BigDecimal.ZERO; |
|
|
|
|
|
|
|
List<CereOrderProduct> curOrderCereOrderProductList = cereOrderProductList.stream().filter(item -> item.getOrderId().equals(cereShopOrder.getOrderId())).collect(Collectors.toList()); |
|
|
|
for (CereOrderProduct cereOrderProduct : curOrderCereOrderProductList) { |
|
|
|
|
|
|
|
BigDecimal rate = cereOrderProduct.getRate().divide(BigDecimal.valueOf(100f),2,BigDecimal.ROUND_HALF_UP); |
|
|
|
|
|
|
|
IbOrderItemRequestBo item = new IbOrderItemRequestBo(); |
|
|
|
item.setPrice(cereOrderProduct.getProductPrice()); |
|
|
|
//这里需要计算不含税单价 |
|
|
|
item.setPrice(cereOrderProduct.getProductPrice().divide(BigDecimal.ONE.add(rate),2,BigDecimal.ROUND_HALF_UP)); |
|
|
|
item.setQty(new BigDecimal(cereOrderProduct.getNumber())); |
|
|
|
if(StringUtils.isEmpty(CrossStockConfig.DEFAULT_SKU)){ |
|
|
|
item.setSku(cereOrderProduct.getSKU()); |
|
|
|
}else { |
|
|
|
item.setSku(CrossStockConfig.DEFAULT_SKU); |
|
|
|
} |
|
|
|
item.setSubtotal(item.getPrice().multiply(new BigDecimal(cereOrderProduct.getNumber()))); |
|
|
|
item.setTax(item.getSubtotal().multiply(rate)); |
|
|
|
items.add(item); |
|
|
|
|
|
|
|
taxtotal = taxtotal.add(cereOrderProduct.getProductPrice() |
|
|
|
.multiply(new BigDecimal(cereOrderProduct.getNumber())) |
|
|
|
.multiply(cereOrderProduct.getRate().divide(BigDecimal.valueOf(100f),2,BigDecimal.ROUND_HALF_UP))); |
|
|
|
taxtotal = taxtotal.add(item.getTax()); |
|
|
|
} |
|
|
|
bo.setItems(items); |
|
|
|
|
|
|
|