From 8e25b416ec8f2a26229cfc4602d30d5b2e7dc53a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=88=E5=B1=95=E8=88=AA?= <2426745133@qq.com> Date: Wed, 19 Nov 2025 19:39:37 +0800 Subject: [PATCH] =?UTF-8?q?11-19-=E6=A8=A1=E6=9D=BF=E5=88=9D=E7=89=88(?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=89=88)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../HseSafetyWeeklyReportServiceImpl.java | 54 ++++++++++++++++--- 1 file changed, 48 insertions(+), 6 deletions(-) diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/service/impl/HseSafetyWeeklyReportServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/service/impl/HseSafetyWeeklyReportServiceImpl.java index 0d6fcead..ee5c6cdf 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/service/impl/HseSafetyWeeklyReportServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/service/impl/HseSafetyWeeklyReportServiceImpl.java @@ -19,12 +19,15 @@ import org.dromara.common.core.utils.ObjectUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.mechanical.domain.BusMechanicalrewriting; +import org.dromara.mechanical.service.impl.BusMechanicalrewritingServiceImpl; import org.dromara.out.service.impl.OutConstructionValueRangeServiceImpl; import org.dromara.progress.domain.enums.PgsProgressCategoryTypeEnum; import org.dromara.progress.domain.vo.progresscategory.PgsProgressCategoryDatePlanVo; import org.dromara.progress.domain.vo.progresscategory.PgsProgressCategoryDateTotalVo; import org.dromara.progress.service.IPgsProgressCategoryService; import org.dromara.project.domain.vo.project.BusProjectVo; +import org.dromara.project.service.IBusAttendanceService; import org.dromara.project.service.IBusProjectService; import org.dromara.safety.domain.HseSafetyWeeklyReport; import org.dromara.safety.domain.dto.safetyweeklyreport.HseSafetyWeeklyReportCreateReq; @@ -51,7 +54,9 @@ import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.Collection; import java.util.List; +import java.util.Map; import java.util.Scanner; +import java.util.stream.Collectors; /** * 安全周报Service业务层处理 @@ -78,6 +83,12 @@ public class HseSafetyWeeklyReportServiceImpl extends ServiceImpl lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(HseSafetyWeeklyReport::getProjectId, entity.getProjectId()); + lambdaQueryWrapper.eq(HseSafetyWeeklyReport::getScope, entity.getScope()); + lambdaQueryWrapper.eq(HseSafetyWeeklyReport::getScopeEnd, entity.getScopeEnd()); + List list = this.list(lambdaQueryWrapper); + if (list != null && !list.isEmpty()){ + throw new ServiceException("已生成过周报", HttpStatus.WARN); + } + Long projectId = entity.getProjectId(); if (create) { if (projectId == null) { @@ -484,7 +506,7 @@ public class HseSafetyWeeklyReportServiceImpl extends ServiceImpl 0){ + sb.append( count).append("人。"); + } + //机械统计 + LambdaQueryWrapper query = new LambdaQueryWrapper<>(); + query.eq(BusMechanicalrewriting::getProjectId, report.getProjectId()); + query.between(BusMechanicalrewriting::getEntryTime, report.getScope(), report.getScopeEnd()); + List mechanicalrewritingList = busMechanicalrewritingService.list(query); + //统计并分类 + Map deviceCountMap = mechanicalrewritingList.stream() + .collect(Collectors.groupingBy(BusMechanicalrewriting::getDevicename, Collectors.counting())); + sb.append("\n共投入机械: "); + for (String key : deviceCountMap.keySet()) { + sb.append(key).append(deviceCountMap.get(key)).append("/n"); + } - - contentCell.setCellValue("本周施工人员633人,共投入光伏钻机21台,小蜜蜂钻机6台,履带式潜孔钻机4台,柴油发动空压机6台,无人机18台,汽油发动振捣棒20台,小型电动工具一批。"); +// contentCell.setCellValue("本周施工人员633人,共投入光伏钻机21台,小蜜蜂钻机6台,履带式潜孔钻机4台,柴油发动空压机6台,无人机18台,汽油发动振捣棒20台,小型电动工具一批。"); + contentCell.setCellValue(sb.toString()); contentCell.setCellStyle(contentStyle); // 恢复原来的合并范围:C-L列