|
@@ -116,9 +116,16 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
public List<OrderBomDifferenceVo> getOrderBomDifferenceList(DailyBoardSelectDto dto) {
|
|
|
Date beginDate = DateUtil.beginOfDay(dto.getBeginDate());
|
|
|
Date endDate = DateUtil.endOfDay(dto.getEndDate());
|
|
|
+ // 查询佰卓和实业的事业部id
|
|
|
+ List<Department> departmentList = departmentService.list(q -> q.like(Department::getName, "实业").or().eq(Department::getName, "佰卓").select(BaseIdPo::getId));
|
|
|
+ List<Long> departmentIds = departmentList.stream().map(BaseIdPo::getId).collect(Collectors.toList());
|
|
|
// 查询今日订单
|
|
|
List<OrderInfo> orderInfoList = orderService.list(q -> q.eq(OrderInfo::getSource, 2)
|
|
|
- .between(OrderInfo::getWlnCreateTime, beginDate, endDate));
|
|
|
+ .between(OrderInfo::getWlnCreateTime, beginDate, endDate)
|
|
|
+ .in(OrderInfo::getDepartmentId, departmentIds));
|
|
|
+ if (ObjectUtil.isEmpty(orderInfoList)) {
|
|
|
+ return Collections.emptyList();
|
|
|
+ }
|
|
|
// 查询今日生成完成任务
|
|
|
Map<Long, List<ProductionTask>> taskMap = productionTaskService.mapKGroup(ProductionTask::getOrderId, q -> q.between(ProductionTask::getCompleteTime, beginDate, endDate));
|
|
|
// 查询今日出库单出库数据
|
|
@@ -194,7 +201,12 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
vo.setSySumOrderCount(0);
|
|
|
Date beginDate = DateUtil.beginOfDay(dto.getBeginDate());
|
|
|
Date endDate = DateUtil.endOfDay(dto.getEndDate());
|
|
|
- Department department = departmentService.getOne(q -> q.eq(Department::getName, "佰卓"));
|
|
|
+ // 查询佰卓和实业的事业部id
|
|
|
+ Department department = departmentService.getOne(q -> q.eq(Department::getName, "佰卓").select(BaseIdPo::getId));
|
|
|
+ List<Department> departmentList = departmentService.list(q -> q.like(Department::getName, "实业").select(BaseIdPo::getId));
|
|
|
+ List<Long> departmentIds = departmentList.stream().map(BaseIdPo::getId).collect(Collectors.toList());
|
|
|
+ departmentIds.add(department.getId());
|
|
|
+
|
|
|
// 查询今日出库单出库数据
|
|
|
Map<String, List<OutboundOrder>> outboundOrderMap = outboundOrderService.mapKGroup(OutboundOrder::getOrderWlnCode,
|
|
|
q -> q.between(OutboundOrder::getOutboundTime, beginDate, endDate)
|
|
@@ -204,7 +216,9 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
}
|
|
|
Set<String> wlnCodeList = outboundOrderMap.keySet();
|
|
|
// 出库单相关的订单数据
|
|
|
- List<OrderInfo> orderList = orderService.list(q -> q.in(OrderInfo::getWlnCode, wlnCodeList));
|
|
|
+ List<OrderInfo> orderList = orderService.list(q -> q
|
|
|
+ .in(OrderInfo::getWlnCode, wlnCodeList)
|
|
|
+ .in(OrderInfo::getDepartmentId, departmentIds));
|
|
|
if (ObjectUtil.isEmpty(orderList)) {
|
|
|
return vo;
|
|
|
}
|
|
@@ -213,9 +227,10 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
List<Long> orderIds = orderList.stream().map(BaseIdPo::getId).collect(Collectors.toList());
|
|
|
List<OrderSku> orderSkuList = orderSkuService.list(q -> q.in(OrderSku::getOrderId, orderIds));
|
|
|
List<Long> skuSpecIds = orderSkuList.stream().map(OrderSku::getSkuSpecId).collect(Collectors.toList());
|
|
|
- Map<String, SkuSpec> skuSpecMap = skuSpecService.mapKEntity(SkuSpec::getCode, q -> q.in(SkuSpec::getId, skuSpecIds));
|
|
|
+ List<SkuSpec> skuSpecList = skuSpecService.list(q -> q.in(SkuSpec::getId, skuSpecIds));
|
|
|
+ Map<String, SkuSpec> skuSpecMap = skuSpecList.stream().collect(Collectors.toMap(SkuSpec::getCode, item -> item, (v1, v2) -> v2));
|
|
|
// 获取今日订单bom列表
|
|
|
- List<Long> bomSpecIds = orderSkuList.stream().map(OrderSku::getBomSpecId).collect(Collectors.toList());
|
|
|
+ List<Long> bomSpecIds = skuSpecList.stream().map(SkuSpec::getBomSpecId).collect(Collectors.toList());
|
|
|
Map<Long, BomSpecBo> bomSpecBoMap = skuSpecService.getBomSpecBoByIdList(bomSpecIds);
|
|
|
|
|
|
Map<Long, DailyBoardOutStorageBomVo> outStorageBomMap = new HashMap<>();
|
|
@@ -312,7 +327,12 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
vo.setSySumOrderCount(0);
|
|
|
Date beginDate = DateUtil.beginOfDay(dto.getBeginDate());
|
|
|
Date endDate = DateUtil.endOfDay(dto.getEndDate());
|
|
|
- Department department = departmentService.getOne(q -> q.eq(Department::getName, "佰卓"));
|
|
|
+ // 查询佰卓和实业的事业部id
|
|
|
+ Department department = departmentService.getOne(q -> q.eq(Department::getName, "佰卓").select(BaseIdPo::getId));
|
|
|
+ List<Department> departmentList = departmentService.list(q -> q.like(Department::getName, "实业").select(BaseIdPo::getId));
|
|
|
+ List<Long> departmentIds = departmentList.stream().map(BaseIdPo::getId).collect(Collectors.toList());
|
|
|
+ departmentIds.add(department.getId());
|
|
|
+
|
|
|
// 查询今日出库单出库数据
|
|
|
Map<Long, List<ProductionTask>> taskMap = productionTaskService.mapKGroup(ProductionTask::getOrderId, q -> q.between(ProductionTask::getCompleteTime, beginDate, endDate));
|
|
|
if (ObjectUtil.isEmpty(taskMap)) {
|
|
@@ -321,7 +341,8 @@ public class DailyBoardServiceImpl implements DailyBoardService {
|
|
|
// 出库单相关的订单数据
|
|
|
List<OrderInfo> orderList = orderService.list(q -> q
|
|
|
.eq(OrderInfo::getSource, 2)
|
|
|
- .in(OrderInfo::getId, taskMap.keySet()));
|
|
|
+ .in(OrderInfo::getId, taskMap.keySet())
|
|
|
+ .in(OrderInfo::getDepartmentId, departmentIds));
|
|
|
vo.setSumOrderCount(orderList.size());
|
|
|
if (ObjectUtil.isEmpty(orderList)) {
|
|
|
return vo;
|