api收集
一、计算两个date时间差
Date now = df.parse("2011-1-12 10:23:45");
Date now1 = df.parse("2011-1-13 10:24:50");
LocalDateTime punchIn = LocalDateTime.ofInstant(now.toInstant(), ZoneId.systemDefault());
LocalDateTime punchOut = LocalDateTime.ofInstant(now1.toInstant(), ZoneId.systemDefault());
Duration diff = Duration.between(punchIn, punchOut);
long hours = diff.toHours();
long minutes = diff.toMinutes();
long leftMinutes = minutes - hours * 60;
System.out.println(leftMinutes);
二、stream流分组后取每一组最大值
Map<String, Optional<OtdOrderDeviceDto>> barRecordMap = orderDeviceDtos.stream()
.collect(Collectors.groupingBy(OtdOrderDeviceDto::getAssetGuid, Collectors.maxBy(Comparator.comparing(OtdOrderDeviceDto::getUnbindDate))));