From 9b6f0ade46587f0b9fcbb659d491bae01c7e2649 Mon Sep 17 00:00:00 2001
From: quxin <592870522@qq.com>
Date: 星期五, 04 九月 2026 11:37:30 +0800
Subject: [PATCH] 修复: 生产领料后的退料应该是选择领料的记录,不是选择库存的记录(同时库存数据需要根据领料退料变动,比如库存100,领用80,然后领用80中退料30,库存应由原来的20变成50)

---
 yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/oauth2/OAuth2TokenServiceImpl.java |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/oauth2/OAuth2TokenServiceImpl.java b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/oauth2/OAuth2TokenServiceImpl.java
index 5a8d019..da7b82f 100644
--- a/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/oauth2/OAuth2TokenServiceImpl.java
+++ b/yudao-module-system/src/main/java/cn/iocoder/yudao/module/system/service/oauth2/OAuth2TokenServiceImpl.java
@@ -57,6 +57,12 @@
     @Resource
     @Lazy // 鎳掑姞杞斤紝閬垮厤寰幆渚濊禆
     private AdminUserService adminUserService;
+    @Resource
+    @Lazy
+    private cn.iocoder.yudao.module.system.service.permission.PermissionService permissionService;
+    @Resource
+    @Lazy
+    private cn.iocoder.yudao.module.system.service.permission.RoleService roleService;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -226,8 +232,18 @@
         }
         if (userType.equals(UserTypeEnum.ADMIN.getValue())) {
             AdminUserDO user = adminUserService.getUser(userId);
-            return MapUtil.builder(LoginUser.INFO_KEY_NICKNAME, user.getNickname())
-                    .put(LoginUser.INFO_KEY_DEPT_ID, StrUtil.toStringOrNull(user.getDeptId())).build();
+            java.util.Map<String, String> info = new java.util.HashMap<>();
+            info.put(LoginUser.INFO_KEY_NICKNAME, user.getNickname());
+            info.put(LoginUser.INFO_KEY_DEPT_ID, cn.hutool.core.util.StrUtil.toStringOrNull(user.getDeptId()));
+            // Fetch roles and put into info
+            java.util.Set<Long> roleIds = permissionService.getUserRoleIdListByUserId(userId);
+            if (cn.hutool.core.collection.CollUtil.isNotEmpty(roleIds)) {
+                java.util.List<cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO> roles = roleService.getRoleList(roleIds);
+                if (cn.hutool.core.collection.CollUtil.isNotEmpty(roles)) {
+                    info.put(LoginUser.INFO_KEY_ROLE_CODES, cn.hutool.core.collection.CollUtil.join(roles, ",", cn.iocoder.yudao.module.system.dal.dataobject.permission.RoleDO::getCode));
+                }
+            }
+            return info;
         } else if (userType.equals(UserTypeEnum.MEMBER.getValue())) {
             // 娉ㄦ剰锛氱洰鍓� Member 鏆傛椂涓嶈鍙栵紝鍙互鎸夐渶瀹炵幇
             return Collections.emptyMap();

--
Gitblit v1.9.3