|
|
@@ -4,8 +4,10 @@ import com.github.microservice.components.data.base.util.PageEntityUtil;
|
|
|
import com.github.microservice.net.ResultContent;
|
|
|
import com.github.microservice.net.ResultMessage;
|
|
|
import com.zhongshu.card.client.model.base.IDsParam;
|
|
|
+import com.zhongshu.card.client.model.org.orgUser.OrganizationUserSearch;
|
|
|
import com.zhongshu.card.client.model.org.userGroup.*;
|
|
|
import com.zhongshu.card.client.type.DataState;
|
|
|
+import com.zhongshu.card.client.type.user.OrgUserState;
|
|
|
import com.zhongshu.card.server.core.dao.org.OrganizationDao;
|
|
|
import com.zhongshu.card.server.core.dao.org.OrganizationUserDao;
|
|
|
import com.zhongshu.card.server.core.dao.org.UserGroupDao;
|
|
|
@@ -15,11 +17,13 @@ import com.zhongshu.card.server.core.service.base.SuperService;
|
|
|
import com.zhongshu.card.server.core.service.devices.permiss.DevicePermissEventService;
|
|
|
import com.zhongshu.card.server.core.service.user.UserAccountServiceImpl;
|
|
|
import com.zhongshu.card.server.core.util.BeanUtils;
|
|
|
+import com.zhongshu.card.server.core.util.CommonUtil;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang3.ObjectUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.data.domain.Page;
|
|
|
+import org.springframework.data.domain.PageRequest;
|
|
|
import org.springframework.data.domain.Pageable;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.Assert;
|
|
|
@@ -230,7 +234,27 @@ public class UserGroupService extends SuperService {
|
|
|
return ResultContent.buildFail("groupId不能为空");
|
|
|
}
|
|
|
|
|
|
- Page<UserGroupToUser> page = userGroupToUserDao.page(pageable, param);
|
|
|
+ Page<UserGroupToUser> page = null;
|
|
|
+ boolean isSearch = true;
|
|
|
+ // 先筛选用户
|
|
|
+ OrganizationUserSearch search = param;
|
|
|
+ if (search.hasSearchFilter()) {
|
|
|
+ search.setIsSearchProject(Boolean.TRUE);
|
|
|
+ search.setAddType(null);
|
|
|
+ search.setOrgUserState(OrgUserState.Formal);
|
|
|
+ Pageable pageable1 = PageRequest.of(0, 1000);
|
|
|
+
|
|
|
+ List<OrganizationUser> list = userAccountService.projectUserList(param, pageable1);
|
|
|
+ if (ObjectUtils.isEmpty(list)) {
|
|
|
+ page = CommonUtil.buildEmptyPage(pageable, UserGroupToUser.class);
|
|
|
+ isSearch = false;
|
|
|
+ } else {
|
|
|
+ param.setUserIds(list.stream().map(it -> it.getUserId()).collect(Collectors.toList()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (isSearch) {
|
|
|
+ page = userGroupToUserDao.page(pageable, param);
|
|
|
+ }
|
|
|
return ResultContent.buildSuccess(PageEntityUtil.concurrent2PageModel(page, this::toUserModel));
|
|
|
}
|
|
|
|