package cn.lihu.jh.module.ecg; import cn.lihu.jh.module.ecg.service.queue.BedQueueBO; import jodd.typeconverter.impl.LocalTimeConverter; import java.time.LocalTime; import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Utils { public static LocalTime parseTime(String strTime) { String regex = "(\\d+)[::](\\d+)"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(strTime); if (!matcher.find()) return null; // 获取整个匹配的字符串 String fullMatch = matcher.group(); // 获取第一个捕获组(小时) String strOpenHour = matcher.group(1); // 获取第二个捕获组(分钟) String strOpenMinute = matcher.group(2); LocalTime localTime = LocalTime.of(Integer.valueOf(strOpenHour), Integer.valueOf(strOpenMinute)); return localTime; } public static List parseOpeningTime(String strOpeningTime) { String regex = "(\\d+)[::](\\d+)~(\\d+)[::](\\d+)"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(strOpeningTime); if (!matcher.find()) return null; // 获取整个匹配的字符串 String fullMatch = matcher.group(); // 获取第一个捕获组(小时) String strOpenHour = matcher.group(1); // 获取第二个捕获组(分钟) String strOpenMinute = matcher.group(2); // 获取第一个捕获组(小时) String strCloseHour = matcher.group(3); // 获取第二个捕获组(分钟) String strCloseMinute = matcher.group(4); LocalTime localOpenTime = LocalTime.of(Integer.valueOf(strOpenHour), Integer.valueOf(strOpenMinute)); LocalTime localCloseTime = LocalTime.of(Integer.valueOf(strCloseHour), Integer.valueOf(strCloseMinute)); List openCloseTime = new ArrayList(); openCloseTime.add(localOpenTime); openCloseTime.add(localCloseTime); return openCloseTime; } public static String formatRoomBed(Long roomId, String bedNo) { return String.format("%09d%s", roomId, bedNo); } }