Bläddra i källkod

修改for循环中的查询语句

wutt 5 år sedan
förälder
incheckning
9c1a64ab83

+ 5 - 3
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -120,7 +120,8 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             style.setDataFormat(HSSFDataFormat.getBuiltinFormat("yy/mm/dd hh:mm"));
             //新增数据行 并且装填数据
             int rowNum = 1;
-            for (Map<String, Object> map : reportMapper.getAllReportByDate(date)) {
+            List<Map<String, Object>> allReportByDate = reportMapper.getAllReportByDate(date);
+            for (Map<String, Object> map : allReportByDate) {
                 HSSFRow row = sheet.createRow(rowNum);
                 row.createCell(0).setCellValue(rowNum);
                 row.createCell(1).setCellValue((String) map.get("name"));
@@ -167,10 +168,11 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
             //以下区间被认为是工作时间
             Integer[] workType = {-1, 0, 1, 2, 3, 4, 5};
             //工作时间筛选
-            for (TimeCalculation timeCalculation : timeCalculationMapper.selectList(new QueryWrapper<TimeCalculation>()
+            List<TimeCalculation> timeCalculations = timeCalculationMapper.selectList(new QueryWrapper<TimeCalculation>()
                     .eq("date", LocalDate.parse(date, DateTimeFormatter.ofPattern("yyyy-MM-dd")))
                     .eq("user_id", userId)
-                    .in("action_type", workType))) {
+                    .in("action_type", workType));
+            for (TimeCalculation timeCalculation : timeCalculations) {
                 totalWorkingTime += timeCalculation.getDuration();
             }
             //把总秒数转为double后换算为小时并保留两位小数

+ 3 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ScreenshotServiceImpl.java

@@ -106,10 +106,11 @@ public class ScreenshotServiceImpl extends ServiceImpl<ScreenshotMapper, Screens
         Map<String, Object> resultMap = new HashMap<>();
         List<String> srcList = new ArrayList<>();
         List<Object> dataList = new ArrayList<>();
-        for (Screenshot screenshot : screenshotMapper.selectList(new QueryWrapper<Screenshot>()
+        List<Screenshot> screenshots = screenshotMapper.selectList(new QueryWrapper<Screenshot>()
                 .eq("date_str", LocalDate.now(ZoneOffset.of("+8")))
                 .eq("uid", userId)
-                .orderByDesc("indate"))) {
+                .orderByDesc("indate"));
+        for (Screenshot screenshot : screenshots) {
             srcList.add(screenshot.getPicUrl());
             Map<String, Object> map = new HashMap<>();
             map.put("time", screenshot.getIndate().toLocalTime());