Complete team user code

This commit is contained in:
JiaJu Zhuang
2023-08-13 16:14:07 +08:00
parent 19e0653f5f
commit eb7f96c487
10 changed files with 64 additions and 4 deletions

View File

@ -5,11 +5,14 @@ import java.util.List;
import ai.chat2db.server.admin.api.controller.common.converter.CommonAdminConverter; import ai.chat2db.server.admin.api.controller.common.converter.CommonAdminConverter;
import ai.chat2db.server.admin.api.controller.common.vo.TeamUserListVO; import ai.chat2db.server.admin.api.controller.common.vo.TeamUserListVO;
import ai.chat2db.server.admin.api.controller.datasource.vo.SimpleDataSourceVO;
import ai.chat2db.server.admin.api.controller.team.vo.SimpleTeamVO; import ai.chat2db.server.admin.api.controller.team.vo.SimpleTeamVO;
import ai.chat2db.server.admin.api.controller.user.vo.SimpleUserVO; import ai.chat2db.server.admin.api.controller.user.vo.SimpleUserVO;
import ai.chat2db.server.common.api.controller.request.CommonQueryRequest; import ai.chat2db.server.common.api.controller.request.CommonQueryRequest;
import ai.chat2db.server.domain.api.param.datasource.DataSourceSelector;
import ai.chat2db.server.domain.api.param.team.TeamPageQueryParam; import ai.chat2db.server.domain.api.param.team.TeamPageQueryParam;
import ai.chat2db.server.domain.api.param.user.UserPageQueryParam; import ai.chat2db.server.domain.api.param.user.UserPageQueryParam;
import ai.chat2db.server.domain.api.service.DataSourceService;
import ai.chat2db.server.domain.api.service.TeamService; import ai.chat2db.server.domain.api.service.TeamService;
import ai.chat2db.server.domain.api.service.UserService; import ai.chat2db.server.domain.api.service.UserService;
import ai.chat2db.server.tools.base.wrapper.result.ListResult; import ai.chat2db.server.tools.base.wrapper.result.ListResult;
@ -28,12 +31,16 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/api/admin/common") @RequestMapping("/api/admin/common")
@RestController @RestController
public class CommonAdminController { public class CommonAdminController {
private static final DataSourceSelector DATA_SOURCE_SELECTOR = DataSourceSelector.builder()
.environment(Boolean.TRUE)
.build();
@Resource @Resource
private UserService userService; private UserService userService;
@Resource @Resource
private TeamService teamService; private TeamService teamService;
@Resource @Resource
private DataSourceService dataSourceService;
@Resource
private CommonAdminConverter commonAdminConverter; private CommonAdminConverter commonAdminConverter;
/** /**
@ -84,4 +91,17 @@ public class CommonAdminController {
.mapToList(commonAdminConverter::dto2voTeam); .mapToList(commonAdminConverter::dto2voTeam);
} }
/**
* Fuzzy query of data source
*
* @param request
* @return
* @version 2.1.0
*/
@GetMapping("/data_source/list")
public ListResult<SimpleDataSourceVO> dataSourceList(@Valid CommonQueryRequest request) {
return dataSourceService.queryPageWithPermission(commonAdminConverter.request2paramDataSource(request),
DATA_SOURCE_SELECTOR)
.mapToList(commonAdminConverter::dto2voDataSource);
}
} }

View File

@ -1,12 +1,15 @@
package ai.chat2db.server.admin.api.controller.common.converter; package ai.chat2db.server.admin.api.controller.common.converter;
import ai.chat2db.server.admin.api.controller.common.vo.TeamUserListVO; import ai.chat2db.server.admin.api.controller.common.vo.TeamUserListVO;
import ai.chat2db.server.admin.api.controller.datasource.vo.SimpleDataSourceVO;
import ai.chat2db.server.admin.api.controller.team.vo.SimpleTeamVO; import ai.chat2db.server.admin.api.controller.team.vo.SimpleTeamVO;
import ai.chat2db.server.admin.api.controller.user.vo.SimpleUserVO; import ai.chat2db.server.admin.api.controller.user.vo.SimpleUserVO;
import ai.chat2db.server.common.api.controller.request.CommonQueryRequest; import ai.chat2db.server.common.api.controller.request.CommonQueryRequest;
import ai.chat2db.server.domain.api.enums.AccessObjectTypeEnum; import ai.chat2db.server.domain.api.enums.AccessObjectTypeEnum;
import ai.chat2db.server.domain.api.model.DataSource;
import ai.chat2db.server.domain.api.model.Team; import ai.chat2db.server.domain.api.model.Team;
import ai.chat2db.server.domain.api.model.User; import ai.chat2db.server.domain.api.model.User;
import ai.chat2db.server.domain.api.param.datasource.DataSourcePageQueryParam;
import ai.chat2db.server.domain.api.param.team.TeamPageQueryParam; import ai.chat2db.server.domain.api.param.team.TeamPageQueryParam;
import ai.chat2db.server.domain.api.param.user.UserPageQueryParam; import ai.chat2db.server.domain.api.param.user.UserPageQueryParam;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
@ -43,6 +46,17 @@ public abstract class CommonAdminConverter {
}) })
public abstract UserPageQueryParam request2paramUser(CommonQueryRequest request); public abstract UserPageQueryParam request2paramUser(CommonQueryRequest request);
/**
* conversion
*
* @param request
* @return
*/
@Mappings({
@Mapping(target = "pageSize", expression = "java(10)"),
})
public abstract DataSourcePageQueryParam request2paramDataSource(CommonQueryRequest request);
/** /**
* conversion * conversion
* *
@ -51,6 +65,14 @@ public abstract class CommonAdminConverter {
*/ */
public abstract SimpleTeamVO dto2voTeam(Team dto); public abstract SimpleTeamVO dto2voTeam(Team dto);
/**
* conversion
*
* @param dto
* @return
*/
public abstract SimpleDataSourceVO dto2voDataSource(DataSource dto);
/** /**
* conversion * conversion
* *

View File

@ -27,6 +27,7 @@ public abstract class DataSourceAccessAdminConverter {
*/ */
@Mappings({ @Mappings({
@Mapping(source = "searchKey", target = "userOrTeamSearchKey"), @Mapping(source = "searchKey", target = "userOrTeamSearchKey"),
@Mapping(target = "enableReturnCount", expression = "java(true)"),
}) })
public abstract DataSourceAccessComprehensivePageQueryParam request2param(DataSourceAccessPageQueryRequest request); public abstract DataSourceAccessComprehensivePageQueryParam request2param(DataSourceAccessPageQueryRequest request);

View File

@ -27,6 +27,9 @@ public abstract class DataSourceAdminConverter {
* @param request * @param request
* @return * @return
*/ */
@Mappings({
@Mapping(target = "enableReturnCount", expression = "java(true)"),
})
public abstract DataSourcePageQueryParam request2param(CommonPageQueryRequest request); public abstract DataSourcePageQueryParam request2param(CommonPageQueryRequest request);
/** /**
@ -35,6 +38,9 @@ public abstract class DataSourceAdminConverter {
* @param request * @param request
* @return * @return
*/ */
@Mappings({
@Mapping(target = "enableReturnCount", expression = "java(true)"),
})
public abstract DataSourcePageQueryParam request2paramAccess(CommonPageQueryRequest request); public abstract DataSourcePageQueryParam request2paramAccess(CommonPageQueryRequest request);
/** /**

View File

@ -10,6 +10,8 @@ import ai.chat2db.server.domain.api.param.team.TeamCreateParam;
import ai.chat2db.server.domain.api.param.team.TeamPageQueryParam; import ai.chat2db.server.domain.api.param.team.TeamPageQueryParam;
import ai.chat2db.server.domain.api.param.team.TeamUpdateParam; import ai.chat2db.server.domain.api.param.team.TeamUpdateParam;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Mappings;
/** /**
* converter * converter
@ -26,6 +28,9 @@ public abstract class TeamAdminConverter {
* @param request * @param request
* @return * @return
*/ */
@Mappings({
@Mapping(target = "enableReturnCount", expression = "java(true)"),
})
public abstract TeamPageQueryParam request2param(CommonPageQueryRequest request); public abstract TeamPageQueryParam request2param(CommonPageQueryRequest request);

View File

@ -27,6 +27,7 @@ public abstract class TeamDataSourcesAdminConverter {
*/ */
@Mappings({ @Mappings({
@Mapping(source = "searchKey", target = "dataSourceSearchKey"), @Mapping(source = "searchKey", target = "dataSourceSearchKey"),
@Mapping(target = "enableReturnCount", expression = "java(true)"),
}) })
public abstract DataSourceAccessComprehensivePageQueryParam request2param(CommonPageQueryRequest request); public abstract DataSourceAccessComprehensivePageQueryParam request2param(CommonPageQueryRequest request);

View File

@ -26,6 +26,7 @@ public abstract class TeamUserAdminConverter {
*/ */
@Mappings({ @Mappings({
@Mapping(source = "searchKey", target = "userSearchKey"), @Mapping(source = "searchKey", target = "userSearchKey"),
@Mapping(target = "enableReturnCount", expression = "java(true)"),
}) })
public abstract TeamUserComprehensivePageQueryParam request2param(CommonPageQueryRequest request); public abstract TeamUserComprehensivePageQueryParam request2param(CommonPageQueryRequest request);

View File

@ -9,6 +9,8 @@ import ai.chat2db.server.domain.api.param.user.UserCreateParam;
import ai.chat2db.server.domain.api.param.user.UserPageQueryParam; import ai.chat2db.server.domain.api.param.user.UserPageQueryParam;
import ai.chat2db.server.domain.api.param.user.UserUpdateParam; import ai.chat2db.server.domain.api.param.user.UserUpdateParam;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Mappings;
/** /**
* converter * converter
@ -24,9 +26,11 @@ public abstract class UserAdminConverter {
* @param request * @param request
* @return * @return
*/ */
@Mappings({
@Mapping(target = "enableReturnCount", expression = "java(true)"),
})
public abstract UserPageQueryParam request2param(CommonPageQueryRequest request); public abstract UserPageQueryParam request2param(CommonPageQueryRequest request);
/** /**
* conversion * conversion
* *
@ -35,7 +39,6 @@ public abstract class UserAdminConverter {
*/ */
public abstract UserPageQueryVO dto2vo(User dto); public abstract UserPageQueryVO dto2vo(User dto);
/** /**
* conversion * conversion
* *
@ -44,7 +47,6 @@ public abstract class UserAdminConverter {
*/ */
public abstract UserCreateParam request2param(UserCreateRequest request); public abstract UserCreateParam request2param(UserCreateRequest request);
/** /**
* conversion * conversion
* *

View File

@ -27,6 +27,7 @@ public abstract class UserDataSourcesAdminConverter {
*/ */
@Mappings({ @Mappings({
@Mapping(source = "searchKey", target = "userOrTeamSearchKey"), @Mapping(source = "searchKey", target = "userOrTeamSearchKey"),
@Mapping(target = "enableReturnCount", expression = "java(true)"),
}) })
public abstract DataSourceAccessComprehensivePageQueryParam request2param(CommonPageQueryRequest request); public abstract DataSourceAccessComprehensivePageQueryParam request2param(CommonPageQueryRequest request);

View File

@ -24,6 +24,7 @@ public abstract class UserTeamAdminConverter {
*/ */
@Mappings({ @Mappings({
@Mapping(source = "searchKey", target = "teamSearchKey"), @Mapping(source = "searchKey", target = "teamSearchKey"),
@Mapping(target = "enableReturnCount", expression = "java(true)"),
}) })
public abstract TeamUserComprehensivePageQueryParam request2param(CommonPageQueryRequest request); public abstract TeamUserComprehensivePageQueryParam request2param(CommonPageQueryRequest request);