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

Merge branch 'develop' into 'master'

feature(运营平台接口修改): 运营平台接口修改

See merge request dcuc-tjdsj/auth-service!162
马志强 3 лет назад
Родитель
Сommit
c73568ce2f

+ 10 - 0
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/impl/StaffAssignAuthInfoService.java

@@ -737,6 +737,16 @@ public class StaffAssignAuthInfoService implements IStaffAssignAuthInfoService {
             String orgId = orgInfo.getId();
             pageSearch.addSearchFilter("staffOrgId", SearchOperator.eq, orgId);
         }
+        Condition orgCodeLike = searchable.getSearchFilter("orgCode", SearchOperator.like);
+        if(null != orgCodeLike) {
+            String orgCodeLikeStr = orgCodeLike.getValue().toString();
+            orgInfos =  authOrgInfoService.getByCodeLike(orgCodeLikeStr);
+            if(CollectionUtils.isEmpty(orgInfos)) {
+                return Page.empty();
+            }
+            List<String> orgIds = orgInfos.stream().map(AuthOrgInfo::getId).collect(Collectors.toList());
+            pageSearch.addSearchFilter("staffOrgId", SearchOperator.in, orgIds);
+        }
         List<AuthUserInfo> userInfos = null;
         Condition userNameLike = searchable.getSearchFilter("userName", SearchOperator.like);
         if(null != userNameLike) {

+ 7 - 0
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/sub/service/IAuthOrgInfoService.java

@@ -138,4 +138,11 @@ public interface IAuthOrgInfoService{
      * @return
      */
     List<AuthOrgInfo> getChildByCodes(List<String> orgCodes);
+
+    /**
+     * 根据orgCode模糊查询
+     * @param orgCodeLike
+     * @return
+     */
+    List<AuthOrgInfo> getByCodeLike(String orgCodeLike);
 }

+ 6 - 1
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/sub/service/impl/AuthOrgInfoService.java

@@ -229,8 +229,13 @@ public class AuthOrgInfoService implements IAuthOrgInfoService {
             CriteriaQuery<?> multiSelect = query.multiselect(root.get("id"), root.get("upGovId"));
             Predicate orgCode = root.get("upGovCode").in(orgCodes);
             return multiSelect.where(orgCode).getRestriction();
-
         };
         return orgInfoRepository.findAll(specification);
     }
+
+    @Override
+    public List<AuthOrgInfo> getByCodeLike(String orgCodeLike) {
+        Specification<AuthOrgInfo> specification = (root, query, cb) -> cb.like(root.get("code"), "%" + orgCodeLike + "%");
+        return orgInfoRepository.findAll(specification);
+    }
 }