Explorar el Código

feat(user): 添加用户组织类型字段并优化登录逻辑

- 在 SysUser 实体中添加 orgType 字段,用于存储用户所在组织的类型
- 在登录时,通过查询 SysDepart 表获取用户所在组织的类型,并设置到 SysUser 对象中
- 优化了登录逻辑,提高了用户信息获取的准确性
SheepHy hace 5 días
padre
commit
36c728658d

+ 5 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/controller/LoginController.java

@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.aliyuncs.exceptions.ClientException;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import lombok.extern.slf4j.Slf4j;
@@ -24,6 +25,7 @@ import org.jeecg.modules.base.service.BaseCommonService;
 import org.jeecg.modules.system.entity.SysDepart;
 import org.jeecg.modules.system.entity.SysRoleIndex;
 import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.mapper.SysDepartMapper;
 import org.jeecg.modules.system.model.SysLoginModel;
 import org.jeecg.modules.system.service.*;
 import org.jeecg.modules.system.service.impl.SysBaseApiImpl;
@@ -65,6 +67,8 @@ public class LoginController {
 	private BaseCommonService baseCommonService;
 	@Autowired
 	private JeecgBaseConfig jeecgBaseConfig;
+	@Resource
+	private SysDepartMapper sysDepartMapper;
 
 	private final String BASE_CHECK_CODES = "qwertyuiplkjhgfdsazxcvbnmQWERTYUPLKJHGFDSAZXCVBNM1234567890";
 
@@ -188,6 +192,7 @@ public class LoginController {
 		if(oConvertUtils.isNotEmpty(username)) {
 			// 根据用户名查询用户信息
 			SysUser sysUser = sysUserService.getUserByName(username);
+			sysUser.setOrgType(sysDepartMapper.selectOne(Wrappers.<SysDepart>lambdaQuery().eq(SysDepart::getOrgCode, sysUser.getOrgCode())).getOrgCategory());
 			JSONObject obj=new JSONObject();
 			log.info("1 获取用户信息耗时(用户基础信息)" + (System.currentTimeMillis() - start) + "毫秒");
 

+ 2 - 0
national-motion-module-system/national-motion-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java

@@ -227,4 +227,6 @@ public class SysUser implements Serializable {
     /**荣誉证书多个逗号分隔*/
     @Schema(description = "荣誉证书多个逗号分隔")
     private String honor;
+    @TableField(exist = false)
+    private String orgType;
 }