gongchunyi
4 小时以前 801854b46b8ad6b003fc767e0cf85367de8843eb
fix: 安全设施巡检修改
已修改2个文件
56 ■■■■■ 文件已修改
src/main/java/com/ruoyi/safe/pojo/SafeFacilityRectification.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/safe/service/impl/SafeFacilityRectificationServiceImpl.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/safe/pojo/SafeFacilityRectification.java
@@ -5,8 +5,10 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.basic.dto.StorageBlobVO;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
@@ -111,8 +113,18 @@
    private String facilityName;
    @TableField(exist = false)
    private String facilityCode;
    @TableField(exist = false)
    private String inspectionCode;
    @TableField(exist = false)
    private String rectifyUserName;
    @TableField(exist = false)
    private String verifyUserName;
    @Schema(description = "巡检异常图片回显")
    @TableField(exist = false)
    private List<StorageBlobVO> storageBlobVOs;
}
src/main/java/com/ruoyi/safe/service/impl/SafeFacilityRectificationServiceImpl.java
@@ -2,12 +2,17 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.basic.dto.StorageBlobVO;
import com.ruoyi.basic.enums.RecordTypeEnum;
import com.ruoyi.basic.utils.FileUtil;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.project.system.domain.SysUser;
import com.ruoyi.project.system.mapper.SysUserMapper;
import com.ruoyi.safe.pojo.SafeFacilityInspection;
import com.ruoyi.safe.pojo.SafeFacilityLedger;
import com.ruoyi.safe.pojo.SafeFacilityRectification;
import com.ruoyi.safe.mapper.SafeFacilityRectificationMapper;
import com.ruoyi.safe.service.SafeFacilityInspectionService;
import com.ruoyi.safe.service.SafeFacilityLedgerService;
import com.ruoyi.safe.service.SafeFacilityRectificationService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -33,7 +38,11 @@
    @Autowired
    private SafeFacilityLedgerService safeFacilityLedgerService;
    @Autowired
    private SafeFacilityInspectionService safeFacilityInspectionService;
    @Autowired
    private SysUserMapper sysUserMapper;
    @Autowired
    private FileUtil fileUtil;
    @Override
    public SafeFacilityRectification getById(Serializable id) {
@@ -62,12 +71,26 @@
            return;
        }
        // 收集设施ID
        List<Integer> facilityIds = records.stream()
                .map(SafeFacilityRectification::getFacilityId)
        List<Integer> inspectionIds = records.stream()
                .map(SafeFacilityRectification::getInspectionId)
                .filter(Objects::nonNull)
                .distinct()
                .collect(Collectors.toList());
        Map<Integer, SafeFacilityInspection> inspectionMap = inspectionIds.isEmpty() ? Collections.emptyMap()
                : safeFacilityInspectionService.listByIds(inspectionIds).stream()
                .collect(Collectors.toMap(SafeFacilityInspection::getId, inspection -> inspection, (v1, v2) -> v1));
        // 收集设施ID
        Set<Integer> facilityIdSet = records.stream()
                .map(SafeFacilityRectification::getFacilityId)
                .filter(Objects::nonNull)
                .collect(Collectors.toSet());
        inspectionMap.values().stream()
                .map(SafeFacilityInspection::getFacilityId)
                .filter(Objects::nonNull)
                .forEach(facilityIdSet::add);
        List<Integer> facilityIds = new ArrayList<>(facilityIdSet);
        // 收集所有用户ID(整改责任人 + 验收人)
        Set<Long> userIds = new HashSet<>();
@@ -85,10 +108,23 @@
                .collect(Collectors.toMap(SysUser::getUserId, SysUser::getNickName, (v1, v2) -> v1));
        for (SafeFacilityRectification record : records) {
            SafeFacilityInspection inspection = record.getInspectionId() == null ? null : inspectionMap.get(record.getInspectionId());
            if (inspection != null) {
                record.setInspectionCode(inspection.getInspectionCode());
                if (record.getFacilityId() == null) {
                    record.setFacilityId(inspection.getFacilityId());
                }
                List<StorageBlobVO> attachments = fileUtil.getStorageBlobVOsByRecordTypeAndRecordId(
                        RecordTypeEnum.SAFE_FACILITY_INSPECTION,
                        inspection.getId().longValue()
                );
                record.setStorageBlobVOs(attachments == null ? Collections.emptyList() : attachments);
            }
            if (record.getFacilityId() != null) {
                SafeFacilityLedger facility = facilityMap.get(record.getFacilityId());
                if (facility != null) {
                    record.setFacilityName(facility.getFacilityName());
                    record.setFacilityCode(facility.getFacilityCode());
                }
            }
            if (record.getRectifyUserId() != null) {
@@ -119,7 +155,9 @@
            entity.setActualTime(LocalDateTime.now());
        }
        if ("已验收".equals(entity.getStatus())) {
            if (entity.getVerifyUserId() == null) {
            entity.setVerifyUserId(currentUserId.intValue());
            }
            entity.setVerifyTime(LocalDateTime.now());
        }
        return super.updateById(entity);