|
@@ -246,11 +246,9 @@ public class StatementOfAccountServiceImpl extends ServiceImpl<StatementOfAccoun
|
|
|
List<DocumentBySkuVo> documentBySkuVoList = orderSkuList.stream()
|
|
|
.map(item -> DocumentBySkuVo.builder()
|
|
|
.skuSpecId(item.getSkuSpecId())
|
|
|
+ .orderId(item.getOrderId())
|
|
|
// 判断是否是委外订单,如果是委外订单时将bom数量修改为0
|
|
|
- .quantity(ObjectUtil.isNotEmpty(
|
|
|
- orderService.getOne(q -> q
|
|
|
- .eq(OrderInfo::getId, item.getOrderId()).eq(OrderInfo::getType, 2)))
|
|
|
- ? BigDecimal.ZERO : item.getQuantity())
|
|
|
+ .quantity(item.getQuantity())
|
|
|
.unitPrice(item.getUnitPrice()
|
|
|
.add(item.getCustomProcessingFee())
|
|
|
.add(item.getLssueFee())
|
|
@@ -260,8 +258,15 @@ public class StatementOfAccountServiceImpl extends ServiceImpl<StatementOfAccoun
|
|
|
.add(item.getManagementFee())
|
|
|
)
|
|
|
.build())
|
|
|
- .peek(item -> item.setSubtotal(item.getQuantity().multiply(item.getUnitPrice())))
|
|
|
+ .peek(item -> item.setSubtotal(ObjectUtil.equals(item.getQuantity(), BigDecimal.ZERO) ? item.getUnitPrice() : item.getQuantity().multiply(item.getUnitPrice())))
|
|
|
.peek(item -> item.setTotal(item.getSubtotal()))
|
|
|
+ .peek(item -> {
|
|
|
+ // 判断是否是委外订单,如果是委外订单时将bom数量修改为0
|
|
|
+ OrderInfo orderInfo = orderService.getOne(q -> q.eq(OrderInfo::getId, item.getOrderId()).eq(OrderInfo::getType, 2));
|
|
|
+ if (ObjectUtil.isNotEmpty(orderInfo)) {
|
|
|
+ item.setQuantity(BigDecimal.ZERO);
|
|
|
+ }
|
|
|
+ })
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
// 赋值sku规格品名和品号
|
|
@@ -302,26 +307,9 @@ public class StatementOfAccountServiceImpl extends ServiceImpl<StatementOfAccoun
|
|
|
|
|
|
// 主材bom
|
|
|
List<DocumentByBomVo> result = orderSkuList.stream()
|
|
|
- .map(item -> {
|
|
|
- OrderInfo orderInfo = orderService.getOne(q -> q.eq(OrderInfo::getId, item.getOrderId()).eq(OrderInfo::getType, 2));
|
|
|
- if (ObjectUtil.isNotEmpty(orderInfo)) {
|
|
|
- // 判断是否是委外订单,如果是委外订单时将bom数量修改为0
|
|
|
- return DocumentByBomVo.builder()
|
|
|
- .bomSpecId(item.getBomSpecId())
|
|
|
- .quantity(BigDecimal.ZERO)
|
|
|
- .unitPrice(item.getUnitPrice())
|
|
|
- .laserLogoSummary((Objects.equals(item.getCustomProcessingType(), "20")
|
|
|
- ? item.getCustomProcessingFee() : BigDecimal.ZERO))
|
|
|
- .laserMitochondrialSummary((Objects.equals(item.getCustomProcessingType(), "10")
|
|
|
- ? item.getCustomProcessingFee() : BigDecimal.ZERO))
|
|
|
- .lssueFeeSummary(item.getLssueFee())
|
|
|
- .deliveryMaterialsFeeSummary(item.getDeliveryMaterialsFee())
|
|
|
- .packingLaborSummary(item.getPackingLabor())
|
|
|
- .managementFeeSummary(item.getManagementFee())
|
|
|
- .build();
|
|
|
- } else {
|
|
|
- return DocumentByBomVo.builder()
|
|
|
+ .map(item -> DocumentByBomVo.builder()
|
|
|
.bomSpecId(item.getBomSpecId())
|
|
|
+ .orderId(item.getOrderId())
|
|
|
.quantity(item.getQuantity())
|
|
|
.unitPrice(item.getUnitPrice())
|
|
|
.laserLogoSummary((Objects.equals(item.getCustomProcessingType(), "20")
|
|
@@ -332,9 +320,7 @@ public class StatementOfAccountServiceImpl extends ServiceImpl<StatementOfAccoun
|
|
|
.deliveryMaterialsFeeSummary(item.getDeliveryMaterialsFee().multiply(item.getQuantity()))
|
|
|
.packingLaborSummary(item.getPackingLabor().multiply(item.getQuantity()))
|
|
|
.managementFeeSummary(item.getManagementFee().multiply(item.getQuantity()))
|
|
|
- .build();
|
|
|
- }
|
|
|
- })
|
|
|
+ .build())
|
|
|
.peek(item -> item.setSubtotal(
|
|
|
item.getUnitPrice()
|
|
|
.multiply(item.getQuantity())
|
|
@@ -346,6 +332,13 @@ public class StatementOfAccountServiceImpl extends ServiceImpl<StatementOfAccoun
|
|
|
.add(item.getManagementFeeSummary())
|
|
|
))
|
|
|
.peek(item -> item.setTotal(item.getSubtotal()))
|
|
|
+ .peek(item -> {
|
|
|
+ // 判断是否是委外订单,如果是委外订单时将bom数量修改为0
|
|
|
+ OrderInfo orderInfo = orderService.getOne(q -> q.eq(OrderInfo::getId, item.getOrderId()).eq(OrderInfo::getType, 2));
|
|
|
+ if (ObjectUtil.isNotEmpty(orderInfo)) {
|
|
|
+ item.setQuantity(BigDecimal.ZERO);
|
|
|
+ }
|
|
|
+ })
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
// 赋值主材bom品名品号
|
|
@@ -537,10 +530,7 @@ public class StatementOfAccountServiceImpl extends ServiceImpl<StatementOfAccoun
|
|
|
.orderSkuId(item.getId())
|
|
|
.skuSpecId(item.getSkuSpecId())
|
|
|
// 判断是否是委外订单,如果是委外订单时将bom数量修改为0
|
|
|
- .quantity(ObjectUtil.isNotEmpty(
|
|
|
- orderService.getOne(q -> q
|
|
|
- .eq(OrderInfo::getId, item.getOrderId()).eq(OrderInfo::getType, 2)))
|
|
|
- ? BigDecimal.ZERO : item.getQuantity())
|
|
|
+ .quantity(item.getQuantity())
|
|
|
.unitPrice(item.getUnitPrice()
|
|
|
.add(item.getCustomProcessingFee())
|
|
|
.add(item.getLssueFee())
|
|
@@ -551,6 +541,13 @@ public class StatementOfAccountServiceImpl extends ServiceImpl<StatementOfAccoun
|
|
|
.build())
|
|
|
.peek(item -> item.setSubtotal(item.getQuantity().multiply(item.getUnitPrice())))
|
|
|
.peek(item -> item.setTotal(item.getSubtotal()))
|
|
|
+ .peek(item -> {
|
|
|
+ // 判断是否是委外订单,如果是委外订单时将bom数量修改为0
|
|
|
+ OrderInfo orderInfo = orderService.getOne(q -> q.eq(OrderInfo::getId, item.getOrderId()).eq(OrderInfo::getType, 2));
|
|
|
+ if (ObjectUtil.isNotEmpty(orderInfo)) {
|
|
|
+ item.setQuantity(BigDecimal.ZERO);
|
|
|
+ }
|
|
|
+ })
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
|
skuSpecService.attributeAssign(skuSpecList, DocumentByOrderVo.SkuSpec::getSkuSpecId, (item, skuSpec) -> {
|