一个时间区间,判断另一个区间是否嵌套
//一个时间区间,判断另一个区间是否嵌套
private boolean getErrSituation(Map<Integer, Map<String, Object>> mapAll) throws ParseException {
SimpleDateFormat SDF_HM = new SimpleDateFormat("yyyy-MM-dd HH:mm");
Map<Integer, Map<String, Object>> mapAllCopy = mapAll;
for (Integer map : mapAll.keySet()) {
for (Integer mapCopy : mapAllCopy.keySet()) {
String allS = (String) mapAll.get(map).get("startdate");
String allE = (String) mapAll.get(map).get("enddate");
String copyS = (String) mapAllCopy.get(mapCopy).get("startdate");
String copyE = (String) mapAllCopy.get(mapCopy).get("enddate");
//etid为表id,itemno为唯一键
if (mapAllCopy.get(mapCopy).get("etid").equals(mapAll.get(map).get("etid")) &&
!mapAllCopy.get(mapCopy).get("itemno").equals(mapAll.get(map).get("itemno"))) {
if (copyS.equals(allS) && copyE.equals(allE)) {
return true;
} else if ((SDF_HM.parse(copyS).compareTo(SDF_HM.parse(allS)) <= 0 && SDF_HM.parse(copyE).compareTo(SDF_HM.parse(allS)) >= 0) ||
(SDF_HM.parse(copyS).compareTo(SDF_HM.parse(allE)) <= 0 && SDF_HM.parse(copyE).compareTo(SDF_HM.parse(allE)) >= 0) ||
(SDF_HM.parse(copyS).compareTo(SDF_HM.parse(allS)) > 0 && SDF_HM.parse(copyE).compareTo(SDF_HM.parse(allE)) < 0)) {
return true;
}
}
}
}
return false;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix