From fb7bc35a49bac34373ee2ac93dc850d0b0f4444f Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期四, 09 五月 2024 15:48:13 +0800 Subject: [PATCH] 2024-5-9 绩效管理-班次后端开发调整月份完成 --- performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java | 37 ++++++++++++++++++++++++++++++++----- 1 files changed, 32 insertions(+), 5 deletions(-) diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java b/performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java index b7d09b5..fd33f86 100644 --- a/performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java +++ b/performance-server/src/main/java/com/yuanchu/mom/service/impl/PerformanceShiftServiceImpl.java @@ -91,7 +91,7 @@ } @Override - public IPage<PerformanceShiftMapDto> performanceShiftPage(Page<Object> page, String time, String userName, String laboratory) { + public Map<String, Object> performanceShiftPage(Page<Object> page, String time, String userName, String laboratory) { IPage<PerformanceShiftMapDto> mapIPage = baseMapper.performanceShiftPage(page, time, userName, laboratory); List<Enums> shiftType = enumService.selectEnumByCategory("鐝绫诲瀷"); List<Map<String, Object>> mapYearIPage = baseMapper.performanceShiftYearPage(time, userName, laboratory); @@ -117,10 +117,7 @@ } hashMap.put("id", shiftTimeAndShift[2]); hashMap.put("shift", shiftTimeAndShift[1]); - DateTime parse = DateUtil.parse(shiftTimeAndShift[0]); - hashMap.put("weekly", DateUtil.weekOfYear(DateUtil.offsetDay(parse, 1))); hashMap.put("time", shiftTimeAndShift[0]); - hashMap.put("headerTime", getWeek(shiftTimeAndShift[0])); map.add(hashMap); } int totalYearAttendance = 0; @@ -145,7 +142,26 @@ i.setList(map); i.setShiftTime(null); }); - return mapIPage; + // 鑾峰彇header鏃堕棿 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + DateTimeFormatter formatters = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + // 灏嗗瓧绗︿覆鏃堕棿杞崲涓� LocalDateTime 绫诲瀷鏃堕棿 + LocalDateTime localDateTime = LocalDateTime.parse(time, formatters); + LocalDate firstDayOfMonth = localDateTime.toLocalDate().withDayOfMonth(1); + LocalDate lastDayOfMonth = localDateTime.toLocalDate().with(TemporalAdjusters.lastDayOfMonth()); + List<LocalDateTime> localDateTimesBetween = getLocalDateTimesBetween(firstDayOfMonth.atStartOfDay(), lastDayOfMonth.atStartOfDay()); + List<Object> list1 = new ArrayList<>(); + for (LocalDateTime dateTime : localDateTimesBetween) { + Map<Object, Object> hashMap = new HashMap<>(); + DateTime parse = DateUtil.parse(dateTime.format(formatter)); + hashMap.put("weekly", DateUtil.weekOfYear(DateUtil.offsetDay(parse, 1))); + hashMap.put("headerTime", getWeek(dateTime.format(formatters))); + list1.add(hashMap); + } + Map<String, Object> resultMap = new HashMap<>(); + resultMap.put("page", mapIPage); + resultMap.put("headerList", list1); + return resultMap; } @Override @@ -155,6 +171,17 @@ .set(PerformanceShift::getShift, performanceShift.getShift())); } +// public static void main(String[] args) { +// String dateStr = "2023-09-15 12:30:45"; +// LocalDateTime localDateTime = convertToLocalDateTime(dateStr); +// System.out.println(localDateTime); +// } +// +// public static LocalDateTime convertToLocalDateTime(String dateStr) { +// DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); +// return LocalDateTime.parse(dateStr, formatter); +// } + // 鑾峰彇涓や釜localDateTime鐨勬瘡涓�澶� public static List<LocalDateTime> getLocalDateTimesBetween(LocalDateTime start, LocalDateTime end) { List<LocalDateTime> localDateTimes = new ArrayList<>(); -- Gitblit v1.9.3