/**
* 查询关联指定dataObjectCode的业务对象,code相同的业务对象只出现一次,取创建时间最新那条记录
*/
@Override
public List<BusinessObjectVo> listVoByDataObjectCode(String dataObjectCode) {
List<BusinessObjectVo> businessObjectVo = new ArrayList<>();
List<BusinessObjectVo> businessObjectVoList = new ArrayList<>();
List<DataObjectEntity> objectEntities = dataObjectService.findAll(Example.of(new DataObjectEntity().setCode(dataObjectCode)));
for (DataObjectEntity dataObjects : objectEntities) {
Long businessObjectId = dataObjects.getBusinessObjectId();
BusinessObjectEntity businessObjectEntity = super.getById(businessObjectId);
businessObjectVo.add(businessObjectEntityToBusinessObjectVo(businessObjectEntity));
}
Map<String, List<BusinessObjectVo>> group
= businessObjectVo.stream().collect(Collectors.groupingBy(BusinessObjectVo::getCode));
for (String keys : group.keySet()) {
List<BusinessObjectVo> businessObjectVos = group.get(keys);
businessObjectVos.sort(Comparator.comparing(BusinessObjectVo::getCreatedDate));
businessObjectVoList.add(businessObjectVos.get(businessObjectVos.size()-1));
}
return businessObjectVoList;
}
Java代码的组内排序(利用java内存的list内的排序分组)
最新推荐文章于 2024-11-30 15:07:59 发布