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