|
@@ -1,25 +1,8 @@
|
|
|
package com.lc.ibps.cloud.oauth.server.provider;
|
|
package com.lc.ibps.cloud.oauth.server.provider;
|
|
|
|
|
|
|
|
-import java.util.Date;
|
|
|
|
|
-import java.util.List;
|
|
|
|
|
-import java.util.concurrent.TimeUnit;
|
|
|
|
|
-
|
|
|
|
|
-import javax.annotation.Resource;
|
|
|
|
|
-
|
|
|
|
|
-import com.lc.ibps.base.framework.table.ICommonDao;
|
|
|
|
|
-import com.lc.ibps.cloud.oauth.exception.*;
|
|
|
|
|
-import com.lc.ibps.cloud.oauth.server.util.LicUtil;
|
|
|
|
|
-import com.lc.ibps.org.auth.persistence.entity.LoginLogPo;
|
|
|
|
|
-import com.lc.ibps.org.auth.persistence.entity.LoginLogTbl;
|
|
|
|
|
-import com.lc.ibps.org.auth.repository.LoginLogRepository;
|
|
|
|
|
-import com.lc.ibps.org.party.repository.*;
|
|
|
|
|
-import org.slf4j.Logger;
|
|
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
-import org.springframework.beans.factory.annotation.Value;
|
|
|
|
|
-import org.springframework.context.annotation.Lazy;
|
|
|
|
|
-import org.springframework.util.Assert;
|
|
|
|
|
-
|
|
|
|
|
|
|
+import cn.hutool.core.date.DateTime;
|
|
|
|
|
+import cn.hutool.core.lang.UUID;
|
|
|
|
|
+import com.lc.ibps.api.org.constant.PartyRelType;
|
|
|
import com.lc.ibps.api.org.constant.UserStatus;
|
|
import com.lc.ibps.api.org.constant.UserStatus;
|
|
|
import com.lc.ibps.api.org.service.IPartyEmployeeMgrService;
|
|
import com.lc.ibps.api.org.service.IPartyEmployeeMgrService;
|
|
|
import com.lc.ibps.api.tenant.service.ITenantQueryService;
|
|
import com.lc.ibps.api.tenant.service.ITenantQueryService;
|
|
@@ -36,33 +19,49 @@ import com.lc.ibps.base.core.util.string.StringValidator;
|
|
|
import com.lc.ibps.base.core.util.time.DateUtil;
|
|
import com.lc.ibps.base.core.util.time.DateUtil;
|
|
|
import com.lc.ibps.base.db.tenant.utils.TenantUtil;
|
|
import com.lc.ibps.base.db.tenant.utils.TenantUtil;
|
|
|
import com.lc.ibps.base.framework.model.OperatorParamter;
|
|
import com.lc.ibps.base.framework.model.OperatorParamter;
|
|
|
|
|
+import com.lc.ibps.base.framework.table.ICommonDao;
|
|
|
import com.lc.ibps.base.web.context.RequestContext;
|
|
import com.lc.ibps.base.web.context.RequestContext;
|
|
|
import com.lc.ibps.cloud.identifier.IdGenerator;
|
|
import com.lc.ibps.cloud.identifier.IdGenerator;
|
|
|
import com.lc.ibps.cloud.identifier.config.IdConfig;
|
|
import com.lc.ibps.cloud.identifier.config.IdConfig;
|
|
|
import com.lc.ibps.cloud.oauth.constants.RedisKey;
|
|
import com.lc.ibps.cloud.oauth.constants.RedisKey;
|
|
|
import com.lc.ibps.cloud.oauth.entity.LoginVo;
|
|
import com.lc.ibps.cloud.oauth.entity.LoginVo;
|
|
|
|
|
+import com.lc.ibps.cloud.oauth.exception.*;
|
|
|
import com.lc.ibps.cloud.oauth.helper.RegDataToUser;
|
|
import com.lc.ibps.cloud.oauth.helper.RegDataToUser;
|
|
|
import com.lc.ibps.cloud.oauth.server.config.TokenConfig;
|
|
import com.lc.ibps.cloud.oauth.server.config.TokenConfig;
|
|
|
import com.lc.ibps.cloud.oauth.server.config.UserConfig;
|
|
import com.lc.ibps.cloud.oauth.server.config.UserConfig;
|
|
|
import com.lc.ibps.cloud.oauth.server.config.UserLimitConfig;
|
|
import com.lc.ibps.cloud.oauth.server.config.UserLimitConfig;
|
|
|
|
|
+import com.lc.ibps.cloud.oauth.server.util.LicUtil;
|
|
|
import com.lc.ibps.cloud.provider.GenericProvider;
|
|
import com.lc.ibps.cloud.provider.GenericProvider;
|
|
|
import com.lc.ibps.cloud.redis.config.AppConfig;
|
|
import com.lc.ibps.cloud.redis.config.AppConfig;
|
|
|
import com.lc.ibps.cloud.redis.utils.RedisUtil;
|
|
import com.lc.ibps.cloud.redis.utils.RedisUtil;
|
|
|
import com.lc.ibps.cloud.utils.RequestUtil;
|
|
import com.lc.ibps.cloud.utils.RequestUtil;
|
|
|
import com.lc.ibps.cloud.utils.SecrectUtil;
|
|
import com.lc.ibps.cloud.utils.SecrectUtil;
|
|
|
|
|
+import com.lc.ibps.org.auth.persistence.entity.LoginLogPo;
|
|
|
import com.lc.ibps.org.auth.persistence.entity.UserSecurityPo;
|
|
import com.lc.ibps.org.auth.persistence.entity.UserSecurityPo;
|
|
|
|
|
+import com.lc.ibps.org.auth.repository.LoginLogRepository;
|
|
|
import com.lc.ibps.org.auth.repository.UserSecurityRepository;
|
|
import com.lc.ibps.org.auth.repository.UserSecurityRepository;
|
|
|
import com.lc.ibps.org.party.persistence.entity.DefaultPartyUserPo;
|
|
import com.lc.ibps.org.party.persistence.entity.DefaultPartyUserPo;
|
|
|
|
|
+import com.lc.ibps.org.party.persistence.entity.PartyPositionPo;
|
|
|
|
|
+import com.lc.ibps.org.party.persistence.entity.PartyRelPo;
|
|
|
import com.lc.ibps.org.party.persistence.entity.PartyUserPo;
|
|
import com.lc.ibps.org.party.persistence.entity.PartyUserPo;
|
|
|
|
|
+import com.lc.ibps.org.party.repository.*;
|
|
|
import com.lc.ibps.org.spi.SpiUserService;
|
|
import com.lc.ibps.org.spi.SpiUserService;
|
|
|
import com.lc.ibps.org.spi.SpiUserServiceUtil;
|
|
import com.lc.ibps.org.spi.SpiUserServiceUtil;
|
|
|
import com.lc.ibps.register.constants.RegDBConstants;
|
|
import com.lc.ibps.register.constants.RegDBConstants;
|
|
|
import com.lc.ibps.register.domain.RegData;
|
|
import com.lc.ibps.register.domain.RegData;
|
|
|
import com.lc.ibps.register.persistence.entity.RegDataPo;
|
|
import com.lc.ibps.register.persistence.entity.RegDataPo;
|
|
|
import com.lc.ibps.register.repository.RegDataRepository;
|
|
import com.lc.ibps.register.repository.RegDataRepository;
|
|
|
|
|
+import org.slf4j.Logger;
|
|
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
|
|
+import org.springframework.context.annotation.Lazy;
|
|
|
|
|
+import org.springframework.util.Assert;
|
|
|
|
|
|
|
|
-import cn.hutool.core.date.DateTime;
|
|
|
|
|
-import cn.hutool.core.lang.UUID;
|
|
|
|
|
|
|
+import javax.annotation.Resource;
|
|
|
|
|
+import java.util.Date;
|
|
|
|
|
+import java.util.List;
|
|
|
|
|
+import java.util.concurrent.TimeUnit;
|
|
|
|
|
|
|
|
public class BaseProvider extends GenericProvider {
|
|
public class BaseProvider extends GenericProvider {
|
|
|
|
|
|
|
@@ -106,6 +105,9 @@ public class BaseProvider extends GenericProvider {
|
|
|
@Resource
|
|
@Resource
|
|
|
protected ITenantQueryService tenantQueryService;
|
|
protected ITenantQueryService tenantQueryService;
|
|
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private PartyRelRepository partyRelRepository;
|
|
|
|
|
+
|
|
|
@Resource
|
|
@Resource
|
|
|
protected ICommonDao<?> commonDao;
|
|
protected ICommonDao<?> commonDao;
|
|
|
|
|
|
|
@@ -119,6 +121,31 @@ public class BaseProvider extends GenericProvider {
|
|
|
protected UserLimitConfig userLimitConfig;
|
|
protected UserLimitConfig userLimitConfig;
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private IdConfig idConfig;
|
|
private IdConfig idConfig;
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 设置主岗位信息和主负责人信息
|
|
|
|
|
+ * @param employeeId
|
|
|
|
|
+ * @param partyPositions
|
|
|
|
|
+ */
|
|
|
|
|
+ protected void setMainPostAndPrincipal(String employeeId, List<PartyPositionPo> partyPositions) {
|
|
|
|
|
+ for (PartyPositionPo partyPositionPo : partyPositions) {
|
|
|
|
|
+ partyPositionPo.setIsMainPost(isPartyRelBiz(partyPositionPo.getId(), employeeId, PartyRelType.MAIN_POST) ? StringPool.Y : StringPool.N);
|
|
|
|
|
+ partyPositionPo.setIsPrincipal(isPartyRelBiz(partyPositionPo.getId(), employeeId, PartyRelType.PRINCIPAL) ? StringPool.Y : StringPool.N);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 岗位人员关系判断,主岗位、主负责人
|
|
|
|
|
+ * @param posId
|
|
|
|
|
+ * @param userId
|
|
|
|
|
+ * @param biz
|
|
|
|
|
+ * @return
|
|
|
|
|
+ */
|
|
|
|
|
+ protected boolean isPartyRelBiz(String posId, String userId, PartyRelType biz) {
|
|
|
|
|
+ PartyRelType prt = PartyRelType.get(biz.key());
|
|
|
|
|
+ PartyRelPo rel = partyRelRepository.getByMainIdSubIdBiz(posId, userId, prt);
|
|
|
|
|
+ return rel != null;
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
protected AuthClientPo validate(String clientId) {
|
|
protected AuthClientPo validate(String clientId) {
|
|
|
AuthClientPo client = authClientRepository.getByClientId(clientId);
|
|
AuthClientPo client = authClientRepository.getByClientId(clientId);
|