diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesPullingOrderInfoService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesPullingOrderInfoService.java index 3e6828a..e9c7fc1 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesPullingOrderInfoService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesPullingOrderInfoService.java @@ -203,11 +203,11 @@ public class MesPullingOrderInfoService implements IMesPullingOrderInfoService { if (!CollectionUtils.isEmpty(pullingOrderPartInfos)) { pullingOrderInfo.setPartCount(pullingOrderPartInfos.size()); pullingOrderPartInfos.forEach(item->{ - if(!StringUtil.isEmpty(item.getLocation()) && item.getLocation().contains(MesPcnExtConstWords.COMMA)){ - item.setLocatAddr(item.getLocation().split(MesPcnExtConstWords.COMMA)[0]); - item.setLightAddr(item.getLocation().split(MesPcnExtConstWords.COMMA)[1]); - } + String[] locationArr = StringUtils.isEmpty(item.getLocation()) ? null : item.getLocation().split(MesPcnExtConstWords.COMMA); + item.setLocatAddr((null != locationArr && locationArr.length >= 1 ? locationArr[0] : MesPcnExtConstWords.ZERO_STR)); + item.setLightAddr((null != locationArr && locationArr.length >= 2 ? locationArr[1] : MesPcnExtConstWords.EMPTY)); }); + pullingOrderPartInfos = pullingOrderPartInfos.stream().filter(o -> null != o).sorted(Comparator.comparing(MesPullingOrderPartInfo::getLocatAddr)).collect(Collectors.toList()); pullingOrderInfo.setPullingOrderPartInfos(pullingOrderPartInfos); } pullingOrderInfo.setWorkOrderNoLast(!StringUtil.isEmpty(pullingOrderInfo.getWorkOrderNo())?pullingOrderInfo.getWorkOrderNo().substring(pullingOrderInfo.getWorkOrderNo().length() - MesPcnExtConstWords.THREE):"");