|
@@ -1,5 +1,6 @@
|
|
|
package com.sd.business.service.board.impl;
|
|
|
|
|
|
+import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.ruoyi.common.core.domain.BaseIdPo;
|
|
@@ -123,7 +124,7 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
// 查询今日出库单出库数据
|
|
|
Map<String, List<OutboundOrder>> outboundOrderMap = outboundOrderService.mapKGroup(OutboundOrder::getOrderWlnCode,
|
|
|
q -> q.between(OutboundOrder::getOutboundTime, beginDate, endDate)
|
|
|
- .groupBy(Arrays.asList(OutboundOrder::getCode, OutboundOrder::getOrderWlnCode, OutboundOrder::getSkuSpecCode, OutboundOrder::getStorageCode)));
|
|
|
+ .groupBy(Arrays.asList(OutboundOrder::getCode, OutboundOrder::getOrderWlnCode, OutboundOrder::getSkuSpecCode, OutboundOrder::getStorageCode, OutboundOrder::getQuantity)));
|
|
|
|
|
|
// 获取今日订单sku列表
|
|
|
List<Long> orderIds = orderInfoList.stream().map(BaseIdPo::getId).collect(Collectors.toList());
|
|
@@ -147,7 +148,7 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
for (OrderSku orderSku : orderSkus) {
|
|
|
Long orderSkuId = orderSku.getSkuSpecId();
|
|
|
BomSpecBo bomSpecBo = bomSpecBoMap.get(orderSku.getBomSpecId());
|
|
|
- if (bomSpecBo == null || Objects.equals(bomSpecBo.getClassifyParentId(), 1L)) {
|
|
|
+ if (bomSpecBo == null || !Objects.equals(bomSpecBo.getClassifyParentId(), 1L)) {
|
|
|
continue;
|
|
|
}
|
|
|
OrderBomDifferenceVo bomDifferenceVo = differenceMap.computeIfAbsent(orderSku.getBomSpecId(), item -> {
|
|
@@ -197,7 +198,7 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
// 查询今日出库单出库数据
|
|
|
Map<String, List<OutboundOrder>> outboundOrderMap = outboundOrderService.mapKGroup(OutboundOrder::getOrderWlnCode,
|
|
|
q -> q.between(OutboundOrder::getOutboundTime, beginDate, endDate)
|
|
|
- .groupBy(Arrays.asList(OutboundOrder::getCode, OutboundOrder::getOrderWlnCode, OutboundOrder::getSkuSpecCode, OutboundOrder::getStorageCode)));
|
|
|
+ .groupBy(Arrays.asList(OutboundOrder::getCode, OutboundOrder::getOrderWlnCode, OutboundOrder::getSkuSpecCode, OutboundOrder::getStorageCode, OutboundOrder::getQuantity)));
|
|
|
if (ObjectUtil.isEmpty(outboundOrderMap)) {
|
|
|
return vo;
|
|
|
}
|
|
@@ -230,6 +231,9 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
List<DailyBoardOutStorageBomVo> outStorageBomVoList = new ArrayList<>();
|
|
|
for (OutboundOrder outboundOrder : outboundOrderList) {
|
|
|
SkuSpec skuSpec = skuSpecMap.get(outboundOrder.getSkuSpecCode());
|
|
|
+ if (skuSpec == null) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
BomSpecBo bomSpecBo = bomSpecBoMap.get(skuSpec.getBomSpecId());
|
|
|
if (bomSpecBo == null) {
|
|
|
continue;
|
|
@@ -252,8 +256,10 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
DailyBoardOutStorageBomVo::getBomSpecId,
|
|
|
Function.identity(),
|
|
|
(v1, v2) -> {
|
|
|
- v1.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
- return v1;
|
|
|
+ DailyBoardOutStorageBomVo tempVo = new DailyBoardOutStorageBomVo();
|
|
|
+ BeanUtil.copyProperties(v1, tempVo);
|
|
|
+ tempVo.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
+ return tempVo;
|
|
|
}
|
|
|
));
|
|
|
// 佰卓订单
|
|
@@ -265,8 +271,10 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
DailyBoardOutStorageBomVo::getBomSpecId,
|
|
|
Function.identity(),
|
|
|
(v1, v2) -> {
|
|
|
- v1.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
- return v1;
|
|
|
+ DailyBoardOutStorageBomVo tempVo = new DailyBoardOutStorageBomVo();
|
|
|
+ BeanUtil.copyProperties(v1, tempVo);
|
|
|
+ tempVo.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
+ return tempVo;
|
|
|
}
|
|
|
));
|
|
|
vo.setBzSumBomCount(vo.getBzSumBomCount().add(quantity));
|
|
@@ -278,8 +286,10 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
DailyBoardOutStorageBomVo::getBomSpecId,
|
|
|
Function.identity(),
|
|
|
(v1, v2) -> {
|
|
|
- v1.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
- return v1;
|
|
|
+ DailyBoardOutStorageBomVo tempVo = new DailyBoardOutStorageBomVo();
|
|
|
+ BeanUtil.copyProperties(v1, tempVo);
|
|
|
+ tempVo.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
+ return tempVo;
|
|
|
}
|
|
|
));
|
|
|
vo.setSySumBomCount(vo.getSySumBomCount().add(quantity));
|
|
@@ -357,8 +367,10 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
DailyBoardOutStorageBomVo::getBomSpecId,
|
|
|
Function.identity(),
|
|
|
(v1, v2) -> {
|
|
|
- v1.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
- return v1;
|
|
|
+ DailyBoardOutStorageBomVo tempVo = new DailyBoardOutStorageBomVo();
|
|
|
+ BeanUtil.copyProperties(v1, tempVo);
|
|
|
+ tempVo.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
+ return tempVo;
|
|
|
}
|
|
|
));
|
|
|
// 佰卓订单
|
|
@@ -370,8 +382,10 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
DailyBoardOutStorageBomVo::getBomSpecId,
|
|
|
Function.identity(),
|
|
|
(v1, v2) -> {
|
|
|
- v1.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
- return v1;
|
|
|
+ DailyBoardOutStorageBomVo tempVo = new DailyBoardOutStorageBomVo();
|
|
|
+ BeanUtil.copyProperties(v1, tempVo);
|
|
|
+ tempVo.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
+ return tempVo;
|
|
|
}
|
|
|
));
|
|
|
vo.setBzSumBomCount(vo.getBzSumBomCount().add(quantity));
|
|
@@ -383,8 +397,10 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
DailyBoardOutStorageBomVo::getBomSpecId,
|
|
|
Function.identity(),
|
|
|
(v1, v2) -> {
|
|
|
- v1.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
- return v1;
|
|
|
+ DailyBoardOutStorageBomVo tempVo = new DailyBoardOutStorageBomVo();
|
|
|
+ BeanUtil.copyProperties(v1, tempVo);
|
|
|
+ tempVo.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
+ return tempVo;
|
|
|
}
|
|
|
));
|
|
|
vo.setSySumBomCount(vo.getSySumBomCount().add(quantity));
|
|
@@ -450,8 +466,10 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
DailyBoardOutStorageBomVo::getBomSpecId,
|
|
|
Function.identity(),
|
|
|
(v1, v2) -> {
|
|
|
- v1.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
- return v1;
|
|
|
+ DailyBoardOutStorageBomVo tempVo = new DailyBoardOutStorageBomVo();
|
|
|
+ BeanUtil.copyProperties(v1, tempVo);
|
|
|
+ tempVo.setQuantity(v1.getQuantity().add(v2.getQuantity()));
|
|
|
+ return tempVo;
|
|
|
}
|
|
|
));
|
|
|
}
|