## 商品盒数中间表支持小数盒数;
This commit is contained in:
parent
1937ced88e
commit
1384c3ecd7
|
@ -291,6 +291,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
|
|||
|
||||
// 订单明细
|
||||
SaOrderItems orderItems = saOrderHandle.getSaOrderItems(cuMember, saOrderExt, currency, orderItemsList, waresDetailExt);
|
||||
orderItems.setWaresBoxNum(null != waresDetailExt.getBoxNum() ? waresDetailExt.getBoxNum() : BigDecimal.ZERO);
|
||||
|
||||
// 不是赠品,需要累积包邮邮费
|
||||
if (EYesNo.NO.getIntValue() == waresDetailExt.getIsGift()) {
|
||||
|
@ -762,7 +763,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
|
|||
// 订单商品拆分数据
|
||||
List<SaOrderWares> orderWaresList = new ArrayList<>();
|
||||
// 订单商品map(key:商品主键-商品价格,value:商品数量)
|
||||
Map<String, Integer> orderWaresMap = new HashMap<>();
|
||||
Map<String, BigDecimal> orderWaresMap = new HashMap<>();
|
||||
// 商品销量数据
|
||||
List<WaresNumberParam> waresNumberList = new ArrayList<>();
|
||||
// 商品销量map(key:商品主键,value:商品数量)
|
||||
|
@ -784,9 +785,15 @@ public class RetailOrderServiceImpl implements IRetailOrderService {
|
|||
// 指定商品拆分 并且 非赠品
|
||||
if (boxProductList.contains(saOrderItems.getWareCode())
|
||||
&& EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) {
|
||||
BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity()));
|
||||
// key: 商品ID-商品价格(产品价格*产品数量)
|
||||
String key = saOrderItems.getPkWares() + "-" + (saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())));
|
||||
orderWaresMap.merge(key, saOrderItems.getWaresQuantity(), Integer::sum);
|
||||
if (orderWaresMap.containsKey(key)) {
|
||||
BigDecimal tmpBoxNum = orderWaresMap.get(key).add(boxNum);
|
||||
orderWaresMap.put(key, tmpBoxNum);
|
||||
} else {
|
||||
orderWaresMap.put(key, boxNum);
|
||||
}
|
||||
|
||||
waresLimitMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum);
|
||||
}
|
||||
|
|
|
@ -198,4 +198,10 @@ public class SaOrderItems extends BaseEntity {
|
|||
@TableField(exist = false)
|
||||
private String wareCode;
|
||||
|
||||
/**
|
||||
* 商品上传盒数
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private BigDecimal waresBoxNum;
|
||||
|
||||
}
|
||||
|
|
|
@ -47,7 +47,7 @@ public class SaOrderWares extends BaseEntity {
|
|||
* 商品数量
|
||||
*/
|
||||
@TableField("WARES_QUANTITY")
|
||||
private Integer waresQuantity;
|
||||
private BigDecimal waresQuantity;
|
||||
|
||||
/**
|
||||
* 商品价格
|
||||
|
|
Loading…
Reference in New Issue