chenc пре 4 година
родитељ
комит
a0ee85cf76

+ 4 - 0
src/main/java/org/jeecg/common/constant/DataBaseConstant.java

@@ -42,6 +42,10 @@ public interface DataBaseConstant {
 	 * 登录用户人员id
 	 */
 	public static final String PERSONNEL_ID = "personnel_id";
+	/**
+	 * 登录用户公司id
+	 */
+	public static final String PK_ORG = "pk_org";
 	/**
 	 * 系统日期"yyyy-MM-dd"
 	 */

+ 7 - 1
src/main/java/org/jeecg/modules/ngalain/controller/NgAlainController.java

@@ -65,6 +65,12 @@ public class NgAlainController {
         userObjcet.put("email", user.getEmail());
         userObjcet.put("token", token);
         userObjcet.put("personnelId", user.getPersonnelId());
+        if(StringUtils.isNotBlank(user.getPersonnelId())&&!user.getPersonnelId().equals("123")){
+            FdPersonnel fdPersonnel=iFdPersonnelService.getById(user.getPersonnelId());
+            userObjcet.put("pkOrgS", fdPersonnel.getPkOrg());//人员中的公司id
+        }else{
+            userObjcet.put("pkOrgS", null);//人员中的公司id
+        }
         List<SysDepart> sysDeparts=iSysDepartService.getByType("1");
         //判断组织id是否为空
         if(StringUtils.isNotBlank(orgId)&&!orgId.equals("null")&&!orgId.equals("undefined")){
@@ -76,7 +82,7 @@ public class NgAlainController {
             //如果关联了人员根据人员组织
             if(StringUtils.isNotBlank(user.getPersonnelId())&&!user.getPersonnelId().equals("123")){
                 FdPersonnel fdPersonnel=iFdPersonnelService.getById(user.getPersonnelId());
-                orgId=fdPersonnel.getPkOrg();
+                orgId=fdPersonnel.getPkOrg().split("、")[0];
                 userObjcet.put("pkOrg", orgId);
             }else{
                 //如果没有关联默认公司 admin

+ 4 - 0
src/main/java/org/jeecg/modules/shiro/authc/util/JwtUtil.java

@@ -153,6 +153,10 @@ public class JwtUtil {
 		if (key.equals(DataBaseConstant.PERSONNEL_ID)|| key.equals(DataBaseConstant.PERSONNEL_ID)) {
 			returnValue = user.getPersonnelId();
 		}
+		//替换为系统登录公司id
+		if (key.equals(DataBaseConstant.PK_ORG)|| key.equals(DataBaseConstant.PK_ORG)) {
+			returnValue = user.getPkOrg();
+		}
 		
 		//替换为系统登录用户的公司编码
 		if (key.equals(DataBaseConstant.SYS_COMPANY_CODE)|| key.equals(DataBaseConstant.SYS_COMPANY_CODE_TABLE)) {

+ 9 - 0
src/main/java/org/jeecg/modules/system/controller/SysUserController.java

@@ -151,6 +151,12 @@ public class SysUserController {
             user.setRoleIdList(null);
         }
 
+        //组织
+        String pkOrg=user.getPkOrg();
+        if(StringUtils.isNotBlank(pkOrg)){
+            user.setPkOrg(null);
+        }
+
         QueryWrapper<SysUserSelect> queryWrapper = QueryGenerator.initQueryWrapper(user, req.getParameterMap());
         queryWrapper.eq("su.del_flag","0");
         queryWrapper.orderByDesc("su.create_time");
@@ -160,6 +166,9 @@ public class SysUserController {
         if (StringUtils.isNotBlank(username)) {
             queryWrapper.like("su.username", username);
         }
+        if(StringUtils.isNotBlank(pkOrg)){
+            queryWrapper.like("fp.pk_org",pkOrg);
+        }
         if(roleIdList!=null&&roleIdList.size()>0){
             if(userIdList.size()>0){
                 queryWrapper.in("su.id",userIdList);

+ 11 - 2
src/main/java/org/jeecg/modules/system/model/SysUserCacheInfo.java

@@ -11,8 +11,10 @@ public class SysUserCacheInfo {
 	private String sysUserName;
 
 	private String personnelId;
-	
-	/*private String sysDate;  
+
+	private String pkOrg;
+
+	/*private String sysDate;
 	
 	private String sysTime;*/
 	
@@ -78,4 +80,11 @@ public class SysUserCacheInfo {
 		this.sysOrgCode = sysOrgCode;
 	}
 
+	public String getPkOrg() {
+		return pkOrg;
+	}
+
+	public void setPkOrg(String pkOrg) {
+		this.pkOrg = pkOrg;
+	}
 }