解释一下 if (CollectionUtils.isEmpty(recordList)) { return null; } SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日"); //返回结果集 HashMap<String, Map<String, Object>> result = new HashMap<>(); result.put("负责人", new HashMap<String, Object>()); recordList.forEach(processingRecord -> { Date date = processingRecord.getTime(); String endTime = sdf.format(date); if (!result.get("负责人").containsKey(processingRecord.getName())) { result.get("负责人").put(processingRecord.getName(), processingRecord.getWorkerName()); } //返回结果集中的value Map<String, Object> map = result.get(endTime); if (null == map) { HashMap<String, Object> countMap = new HashMap<>(); countMap.put(processingRecord.getName(), 1); result.put(endTime, countMap); } else { Integer count = (Integer) map.get(processingRecord.getName()); if (null == count) { map.put(processingRecord.getName(), 1); } else { map.put(processingRecord.getName(), count + 1); } result.put(endTime, map); } }); return result; }
时间: 2023-05-24 11:03:21 浏览: 157
DirectCodes.zip_If...
这段代码意思是:如果传入的记录列表为空,则返回null。然后定义了一个日期格式化对象,接着创建一个包含“负责人”信息的HashMap对象,遍历传入的记录列表,将记录按时间分组并统计每个负责人在每个时间点的工作次数。最后返回结果集合。
阅读全文