From 07496adb3a0c61e48c660e0cb4ee95d44782f05d Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期四, 23 七月 2026 10:18:37 +0800
Subject: [PATCH] fix: 修改新增绑定逻辑,避免重复绑定产品

---
 src/main/java/com/ruoyi/safe/service/impl/SafeLineInspectionHazardServiceImpl.java |   25 +++++++++++++++++++++++++
 1 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/safe/service/impl/SafeLineInspectionHazardServiceImpl.java b/src/main/java/com/ruoyi/safe/service/impl/SafeLineInspectionHazardServiceImpl.java
index 733043d..3f2e43b 100644
--- a/src/main/java/com/ruoyi/safe/service/impl/SafeLineInspectionHazardServiceImpl.java
+++ b/src/main/java/com/ruoyi/safe/service/impl/SafeLineInspectionHazardServiceImpl.java
@@ -2,12 +2,14 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.safe.pojo.SafeLineInspectionHazard;
 import com.ruoyi.safe.mapper.SafeLineInspectionHazardMapper;
 import com.ruoyi.safe.service.SafeLineInspectionHazardService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalDateTime;
 import java.util.List;
 
 /**
@@ -38,4 +40,27 @@
                 .orderByDesc(SafeLineInspectionHazard::getCreateTime)
                 .list();
     }
+
+    @Override
+    public boolean save(SafeLineInspectionHazard entity) {
+        if (entity.getHazardCode() == null || entity.getHazardCode().isEmpty()) {
+            entity.setHazardCode(generateHazardCode());
+        }
+        return super.save(entity);
+    }
+
+    @Override
+    public boolean updateById(SafeLineInspectionHazard entity) {
+        if ("宸叉暣鏀�".equals(entity.getStatus())) {
+            Long currentUserId = SecurityUtils.getUserId();
+            entity.setRectifyUserId(currentUserId.intValue());
+            entity.setRectifyTime(LocalDateTime.now());
+        }
+        return super.updateById(entity);
+    }
+
+    private String generateHazardCode() {
+        long count = this.count() + 1;
+        return "YH" + String.format("%05d", count);
+    }
 }

--
Gitblit v1.9.3