Просмотр исходного кода

用户登入时将岗位放入全局用户信息中

wy 5 месяцев назад
Родитель
Сommit
e27639b3a6

+ 2 - 0
ibps-oauth-root/modules/oauth-server2-default/src/main/java/com/lc/ibps/cloud/oauth/server/provider/BaseProvider.java

@@ -95,6 +95,8 @@ public class BaseProvider extends GenericProvider {
 	@Resource
 	protected PartyPositionRepository partyPositionRepository;
 	@Resource
+	protected PartyPositionUserRepository partyPositionUserRepository;
+	@Resource
 	protected PartyUserGroupRepository partyUserGroupRepository;
 	@Resource
 	protected PartyGroupRepository partyGroupRepository;

+ 17 - 9
ibps-oauth-root/modules/oauth-server2-default/src/main/java/com/lc/ibps/cloud/oauth/server/provider/UserProvider.java

@@ -4,6 +4,7 @@ import java.io.IOException;
 import java.util.*;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 import com.jfirer.baseutil.encrypt.Md5Util;
 import com.lc.ibps.api.org.constant.PartyRelType;
@@ -12,6 +13,7 @@ import com.lc.ibps.cloud.oauth.server.util.IpUtil;
 import com.lc.ibps.cloud.util.AESUtil;
 import com.lc.ibps.org.auth.persistence.entity.LoginLogPo;
 import com.lc.ibps.org.auth.persistence.entity.LoginLogTbl;
+import com.lc.ibps.org.party.persistence.entity.*;
 import org.apache.http.Consts;
 import org.apache.http.HttpEntity;
 import org.apache.http.NameValuePair;
@@ -70,15 +72,6 @@ import com.lc.ibps.cloud.oauth.server.service.IUserService;
 import com.lc.ibps.cloud.redis.utils.RedisUtil;
 import com.lc.ibps.cloud.utils.RequestUtil;
 import com.lc.ibps.components.httpclient.model.HttpStatus;
-import com.lc.ibps.org.party.persistence.entity.DefaultPartyRolePo;
-import com.lc.ibps.org.party.persistence.entity.DefaultPartyUserPo;
-import com.lc.ibps.org.party.persistence.entity.PartyEmployeePo;
-import com.lc.ibps.org.party.persistence.entity.PartyGroupPo;
-import com.lc.ibps.org.party.persistence.entity.PartyOrgPo;
-import com.lc.ibps.org.party.persistence.entity.PartyPositionPo;
-import com.lc.ibps.org.party.persistence.entity.PartyUserGroupPo;
-import com.lc.ibps.org.party.persistence.entity.PartyUserLimitPo;
-import com.lc.ibps.org.party.persistence.entity.PartyUserPo;
 import com.lc.ibps.org.party.repository.DefaultPartyUserRepository;
 import com.lc.ibps.org.spi.SpiUserService;
 import com.lc.ibps.org.spi.SpiUserServiceUtil;
@@ -797,6 +790,7 @@ public class UserProvider extends BaseProvider implements IUserService {
 			data.put("employee", null);
 			data.put("org", null);
 			data.put("mainPosition", null);
+			data.put("mainPositionUser", null);
 			data.put("positions", null);
 			data.put("role", null);
 		}
@@ -845,6 +839,15 @@ public class UserProvider extends BaseProvider implements IUserService {
 				
 				PartyPositionPo position = getPosition(employee);
 				data.put("mainPosition", position);
+
+				List<PartyPositionUserPo> poUsList = getPositionUser(employee.getId());
+				data.put("positionUsers", BeanUtils.isNotEmpty(poUsList) ? poUsList : null);
+				List<PartyPositionUserPo> collect = new ArrayList<>();
+				if(BeanUtils.isNotEmpty(poUsList)){
+					collect = poUsList.stream().filter(item -> "mainResp".equals(item.getDataType())).collect(Collectors.toList());
+				}
+				data.put("mainPositionUser",BeanUtils.isNotEmpty(collect)? collect.get(0):null);
+
 				if(BeanUtils.isNotEmpty(employee)) {
 					List<PartyPositionPo> positions = partyPositionRepository.findByUserId(employee.getId());
 					setMainPostAndPrincipal(employee.getId(),positions);
@@ -905,6 +908,11 @@ public class UserProvider extends BaseProvider implements IUserService {
 		}
 		return data;
 	}
+
+	private List<PartyPositionUserPo> getPositionUser(String userId){
+		List<PartyPositionUserPo> poList = partyPositionUserRepository.queryWithRespByIds(userId);
+		return BeanUtils.isNotEmpty(poList) ? poList : null;
+	}
 	
 	private PartyOrgPo getOrg(PartyEmployeePo employee) {
 		PartyOrgPo data = null;