merge 45787 PDA 点检界面,工单排序顺序:新工单需要显示最前面

uat-temp-wj-chongqingdaqu-dev
王杰 3 months ago
parent 880edbdede
commit 3e8bdb0a23

@ -95,22 +95,33 @@ public class MesSpotCheckOrderService implements IMesSpotCheckOrderService {
DdlPackBean packBean = getDdlPackBean(spotCheckOrder);
pager = PagerHelper.getPager(pager, spotCheckOrderRepository.findByHqlWhereCount(packBean));
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue(),CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"status","createDatetime"}, packBean);
List<MesSpotCheckOrder> resultList = spotCheckOrderRepository.findByHqlWherePage(packBean, pager);
if (CollectionUtils.isEmpty(resultList)) {
return new ListPager<>(resultList, pager);
}
List<String> equipmentlist = resultList.stream().map(MesSpotCheckOrder::getEquipCode).collect(Collectors.toList());
if (CollectionUtils.isEmpty(resultList)) return new ListPager<>(resultList, pager);
List<String> equipmentCodeList = (resultList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getEquipCode())))
.map(MesSpotCheckOrder::getEquipCode).collect(Collectors.toList())).stream().filter(o -> !StringUtils.isEmpty(o)).distinct().collect(Collectors.toList());
if (!CollectionUtils.isEmpty(equipmentCodeList)) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(spotCheckOrder.getOrganizeCode());
DdlPreparedPack.getInPackList(equipmentlist, "equipmentCode", ddlPackBean);
if (equipmentCodeList.size() == 1) DdlPreparedPack.getStringEqualPack(equipmentCodeList.get(0), MesPcnExtConstWords.EQUIPMENT_CODE, ddlPackBean);
else DdlPreparedPack.getInPackList(equipmentCodeList, MesPcnExtConstWords.EQUIPMENT_CODE, ddlPackBean);
List<MesEquipment> mesEquipments = mesEquipmentRepository.findByHqlWhere(ddlPackBean);
Map<String, List<MesEquipment>> map = mesEquipments.stream().collect(Collectors.groupingBy(MesEquipment::getEquipmentCode));
Map<String, List<MesEquipment>> equipMap = mesEquipments.stream().collect(Collectors.groupingBy(MesEquipment::getEquipmentCode));
if (!CollectionUtils.isEmpty(equipMap)) {
resultList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getEquipCode())))
.forEach(o -> o.setEquipId(equipMap.containsKey(o.getEquipCode()) ? equipMap.get(o.getEquipCode()).get(0).getEquipId() : null));
}
}
resultList.forEach(mesSpotCheckOrder -> {
mesSpotCheckOrder.setEquipId(map.get(mesSpotCheckOrder.getEquipCode()).get(0).getEquipId());
});
List<MesSpotCheckOrder> resultList2Create = resultList.stream().filter(o -> (null != o && o.getStatus().compareTo(MesExtEnumUtil.SPOT_CHECK_ORDER_STATUS.CREATE.getValue()) == 0)).collect(Collectors.toList());
List<MesSpotCheckOrder> resultList2Other = resultList.stream().filter(o -> (null != o && o.getStatus().compareTo(MesExtEnumUtil.SPOT_CHECK_ORDER_STATUS.CREATE.getValue()) != 0)).collect(Collectors.toList());
if (!CollectionUtils.isEmpty(resultList2Create)) resultList2Create = resultList2Create.stream().filter(o -> null != o).sorted(Comparator.comparing(MesSpotCheckOrder::getCreateDatetime).reversed()).collect(Collectors.toList());
if (!CollectionUtils.isEmpty(resultList2Other)) resultList2Other = resultList2Other.stream().filter(o -> null != o).sorted(Comparator.comparing(MesSpotCheckOrder::getModifyDatetime).reversed()).collect(Collectors.toList());
resultList.clear();
if (!CollectionUtils.isEmpty(resultList2Create)) resultList.addAll(resultList2Create);
if (!CollectionUtils.isEmpty(resultList2Other)) resultList.addAll(resultList2Other);
return new ListPager<>(resultList, pager);

Loading…
Cancel
Save