|
|
@ -118,7 +118,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
|
|
|
|
//零件发运组
|
|
|
|
//零件发运组
|
|
|
|
model.setMesPartShippingGroup(getMesPartShippingGroup(orderManagement.getOrganizeCode(),orderManagement.getShippingGroupCode()));
|
|
|
|
model.setMesPartShippingGroup(getMesPartShippingGroup(orderManagement.getOrganizeCode(),orderManagement.getShippingGroupCode()));
|
|
|
|
//发运单明细
|
|
|
|
//发运单明细
|
|
|
|
model.setDetailList(getMesShippingOrderManagementDetails(orderManagement));
|
|
|
|
model.setDetailList(getMesShippingOrderManagementDetails(orderManagement,model.getMesPartShippingGroup()));
|
|
|
|
//最近扫描完成的发运单号
|
|
|
|
//最近扫描完成的发运单号
|
|
|
|
MesShippingOrderManagement lastShippingOrder = getLastShippingOrder(orderManagement.getOrganizeCode());
|
|
|
|
MesShippingOrderManagement lastShippingOrder = getLastShippingOrder(orderManagement.getOrganizeCode());
|
|
|
|
if (!Objects.isNull(lastShippingOrder)) {
|
|
|
|
if (!Objects.isNull(lastShippingOrder)) {
|
|
|
@ -290,7 +290,7 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private List<MesShippingOrderManagementDetail> getMesShippingOrderManagementDetails(MesShippingOrderManagement orderManagement) {
|
|
|
|
private List<MesShippingOrderManagementDetail> getMesShippingOrderManagementDetails(MesShippingOrderManagement orderManagement,MesPartShippingGroup mesPartShippingGroup) {
|
|
|
|
DdlPackBean orderDetailPackBean = DdlPackBean.getDdlPackBean(orderManagement.getOrganizeCode());
|
|
|
|
DdlPackBean orderDetailPackBean = DdlPackBean.getDdlPackBean(orderManagement.getOrganizeCode());
|
|
|
|
DdlPreparedPack.getNumEqualPack(orderManagement.getId(), "pid", orderDetailPackBean);
|
|
|
|
DdlPreparedPack.getNumEqualPack(orderManagement.getId(), "pid", orderDetailPackBean);
|
|
|
|
DdlPreparedPack.getNumberSmallerPack(MesExtEnumUtil.SHIPPING_ORDER_DETAIL_SHIPPING_STATUS.CLOSE.getValue(),"status",orderDetailPackBean);
|
|
|
|
DdlPreparedPack.getNumberSmallerPack(MesExtEnumUtil.SHIPPING_ORDER_DETAIL_SHIPPING_STATUS.CLOSE.getValue(),"status",orderDetailPackBean);
|
|
|
@ -305,9 +305,41 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService
|
|
|
|
k.setIsScanFlg(MesCommonConstant.TRUE_INTEGER);
|
|
|
|
k.setIsScanFlg(MesCommonConstant.TRUE_INTEGER);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//序号,总成类型顺序
|
|
|
|
|
|
|
|
if(!Objects.isNull(mesPartShippingGroup.getScanSeqWay()) && !StringUtil.isEmpty(mesPartShippingGroup.getPartType()) && mesPartShippingGroup.getScanSeqWay() == MesExtEnumUtil.SHIPPING_GROUP_SCAN_CONFIRM_SEQ_MODE.SHIPPING_GROUP_SCAN_CONFIRM_SEQ_MODE_40.getValue()){
|
|
|
|
|
|
|
|
return mesShippingOrderManagementDetailsSort(mesPartShippingGroup, detailList);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return detailList;
|
|
|
|
return detailList;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private List<MesShippingOrderManagementDetail> mesShippingOrderManagementDetailsSort(MesPartShippingGroup mesPartShippingGroup, List<MesShippingOrderManagementDetail> detailList) {
|
|
|
|
|
|
|
|
List<MesShippingOrderManagementDetail> resultDetails = new ArrayList<>();
|
|
|
|
|
|
|
|
Map<Long, List<MesShippingOrderManagementDetail>> detailMap = detailList.stream().collect(Collectors.groupingBy(MesShippingOrderManagementDetail::getCustInfoSeq));
|
|
|
|
|
|
|
|
List<String> partTypeList = Arrays.asList(mesPartShippingGroup.getPartType().split(MesPcnExtConstWords.COMMA));
|
|
|
|
|
|
|
|
for (Long seq : detailMap.keySet()) {
|
|
|
|
|
|
|
|
List<MesShippingOrderManagementDetail> details = detailMap.get(seq);
|
|
|
|
|
|
|
|
if (details.size() > MesPcnExtConstWords.ONE) {
|
|
|
|
|
|
|
|
Map<String, List<MesShippingOrderManagementDetail>> containsMap = details.stream().filter(t -> partTypeList.contains(t.getPartTypeCode())).collect(Collectors.groupingBy(MesShippingOrderManagementDetail::getPartTypeCode));
|
|
|
|
|
|
|
|
List<MesShippingOrderManagementDetail> noContains = details.stream().filter(t -> !partTypeList.contains(t.getPartTypeCode())).collect(Collectors.toList());
|
|
|
|
|
|
|
|
//按照维护的总成类型显示
|
|
|
|
|
|
|
|
for (String type : partTypeList){
|
|
|
|
|
|
|
|
if (!Objects.isNull(containsMap) && containsMap.containsKey(type)){
|
|
|
|
|
|
|
|
resultDetails.addAll(containsMap.get(type));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//相同seq,总成类型未维护放在最后面显示
|
|
|
|
|
|
|
|
if (!CollectionUtils.isEmpty(noContains)){
|
|
|
|
|
|
|
|
resultDetails.addAll(noContains);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
resultDetails.addAll(details);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return resultDetails;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private MesShippingOrderManagement getLastShippingOrder(String organizeCode) {
|
|
|
|
private MesShippingOrderManagement getLastShippingOrder(String organizeCode) {
|
|
|
|
DdlPackBean recentlyOrderPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
DdlPackBean recentlyOrderPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPED.getValue(), "status", recentlyOrderPackBean);
|
|
|
|
DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPED.getValue(), "status", recentlyOrderPackBean);
|
|
|
|