Reiskuchen 5 lat temu
rodzic
commit
e40f8411d6

+ 8 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ReportController.java

@@ -60,6 +60,14 @@ public class ReportController {
         return reportService.editReport(report, request);
     }
 
+
+//    @RequestMapping("/editReport")
+//    public HttpRespMsg editReport2(
+//            String[] id, Integer[] projectId, String createTime, Double[] workingTime, String[] content) {
+//        Report[] reportList = new
+//        return reportService.editReport(reportList, request);
+//    }
+
     /**
      * 删除报告
      * id 要删除的报告的id

+ 22 - 6
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/TimeCalculationServiceImpl.java

@@ -118,6 +118,7 @@ public class TimeCalculationServiceImpl extends ServiceImpl<TimeCalculationMappe
     public HttpRespMsg getDuration(String startDate, String endDate, HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         try {
+            //首先获取数据
             List<TimeCalculation> dataList = timeCalculationMapper.selectList(new QueryWrapper<TimeCalculation>()
                     .eq("user_id", request.getHeader("Token"))
                     .eq("action_type", 0)
@@ -125,13 +126,28 @@ public class TimeCalculationServiceImpl extends ServiceImpl<TimeCalculationMappe
                             LocalDate.parse(startDate, DateTimeFormatter.ofPattern("yyyy-MM-dd")),
                             LocalDate.parse(endDate, DateTimeFormatter.ofPattern("yyyy-MM-dd")))
                     .orderByAsc("start_time"));
-            List<Map<String, Object>> resultList = new ArrayList<>();
+            //先把所有的日期搞到一个set里面
+            Set<String> dateSet = new HashSet<>();
             for (TimeCalculation timeCalculation : dataList) {
-                Map<String, Object> map = new HashMap<>();
-                map.put("startTime", LocalDateTime.of(timeCalculation.getDate(), timeCalculation.getStartTime()));
-                map.put("endTime", LocalDateTime.of(timeCalculation.getDate(), timeCalculation.getEndTime()));
-                map.put("duration", timeCalculation.getDuration());
-                resultList.add(map);
+                dateSet.add(timeCalculation.getDate().toString());
+            }
+            List<Map<String, Object>> resultList = new ArrayList<>();
+            for (String date : dateSet) {
+                Map<String, Object> dataMap = new HashMap<>();
+                dataMap.put("date", date);
+                List<Map<String, Object>> list = new ArrayList<>();
+                for (TimeCalculation timeCalculation : dataList) {
+                    if (timeCalculation.getDate().toString().equals(date)) {
+                        Map<String, Object> map = new HashMap<>();
+                        map.put("startTime", timeCalculation.getStartTime().format(DateTimeFormatter.ofPattern("HH:mm")));
+                        map.put("endTime", timeCalculation.getEndTime().format(DateTimeFormatter.ofPattern("HH:mm")));
+                        map.put("duration", timeCalculation.getDuration());
+                        resultList.add(map);
+                        /*这里可以有个优化 remove已经读取过的内容 但是加强for好像获取不到索引的亚子*/
+                    }
+                }
+                dataMap.put("time", list);
+                resultList.add(dataMap);
             }
             httpRespMsg.data = resultList;
         } catch (NullPointerException e) {