From 260dd6fe156265832544715192ce1491e9c2afd6 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期五, 26 六月 2026 13:41:13 +0800
Subject: [PATCH] fix(stock): 解决库存管理中的重复键异常问题 - 在采购台账服务中添加净合同金额字段设置 - 在销售台账服务中添加净合同金额字段设置 - 在入库记录服务中为库存插入操作添加重复键异常处理 - 在入库记录服务中为非库存插入操作添加重复键异常处理 - 在库存服务中为库存插入操作添加重复键异常处理 - 统一处理数据库唯一键约束冲突,避免系统错误

---
 src/main/java/com/ruoyi/common/config/MybatisHandler.java |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/ruoyi/common/config/MybatisHandler.java b/src/main/java/com/ruoyi/common/config/MybatisHandler.java
index 2acd7ba..8125a35 100644
--- a/src/main/java/com/ruoyi/common/config/MybatisHandler.java
+++ b/src/main/java/com/ruoyi/common/config/MybatisHandler.java
@@ -14,17 +14,24 @@
     public void insertFill(MetaObject metaObject) {
         Integer userId = null;
         Long tenantId = null;
+        String userName = null;
+        Long deptId = null;
         try {
             userId = SecurityUtils.getUserId().intValue();
             tenantId = SecurityUtils.getLoginUser().getTenantId();
+            userName = SecurityUtils.getUsername();
+            deptId = SecurityUtils.getLoginUser().getCurrentDeptId();
         } catch (Exception ignored) {
         }
         this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now());
         this.strictInsertFill(metaObject, "updateTime",  LocalDateTime.class, LocalDateTime.now());
         this.strictInsertFill(metaObject, "createUser", Integer.class, userId);
         this.strictInsertFill(metaObject, "updateUser", Integer.class, userId);
-        this.strictInsertFill(metaObject, "createUser", Long.class, Optional.ofNullable(userId).orElse(0).longValue());
-        this.strictInsertFill(metaObject, "updateUser", Long.class, Optional.ofNullable(userId).orElse(0).longValue());
+        this.strictInsertFill(metaObject, "createUser", Long.class, userId == null ? 0 : userId.longValue());
+        this.strictInsertFill(metaObject, "updateUser", Long.class, userId == null ? 0 : userId.longValue());
+        this.strictInsertFill(metaObject, "createUserName", String.class, userName);
+        this.strictInsertFill(metaObject, "updateUserName", String.class, userName);
+        this.strictInsertFill(metaObject, "deptId", Long.class, deptId);
         this.strictInsertFill(metaObject, "tenantId", Long.class, tenantId);
     }
 

--
Gitblit v1.9.3