mirror of
https://github.com/CodePhiliaX/Chat2DB.git
synced 2025-07-31 03:32:43 +08:00
Modifying data sources, adding, deleting, and querying
This commit is contained in:
@ -6,7 +6,9 @@ import ai.chat2db.server.admin.api.controller.team.request.TeamDataSourceBatchCr
|
||||
import ai.chat2db.server.admin.api.controller.team.vo.TeamDataSourcePageQueryVO;
|
||||
import ai.chat2db.server.common.api.controller.request.CommonPageQueryRequest;
|
||||
import ai.chat2db.server.domain.api.enums.AccessObjectTypeEnum;
|
||||
import ai.chat2db.server.domain.api.param.datasource.DataSourceSelector;
|
||||
import ai.chat2db.server.domain.api.param.datasource.access.DataSourceAccessCreatParam;
|
||||
import ai.chat2db.server.domain.api.param.datasource.access.DataSourceAccessPageQueryParam;
|
||||
import ai.chat2db.server.domain.api.param.datasource.access.DataSourceAccessSelector;
|
||||
import ai.chat2db.server.domain.api.service.DataSourceAccessService;
|
||||
import ai.chat2db.server.tools.base.wrapper.result.ActionResult;
|
||||
@ -30,7 +32,10 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
@RestController
|
||||
public class TeamDataSourceAdminController {
|
||||
private static final DataSourceAccessSelector DATA_SOURCE_ACCESS_SELECTOR = DataSourceAccessSelector.builder()
|
||||
.accessObject(Boolean.TRUE)
|
||||
.dataSource(Boolean.TRUE)
|
||||
.dataSourceSelector(DataSourceSelector.builder()
|
||||
.environment(Boolean.TRUE)
|
||||
.build())
|
||||
.build();
|
||||
|
||||
@Resource
|
||||
@ -62,11 +67,21 @@ public class TeamDataSourceAdminController {
|
||||
@PostMapping("/batch_create")
|
||||
public ActionResult create(@Valid @RequestBody TeamDataSourceBatchCreateRequest request) {
|
||||
request.getDataSourceIdList()
|
||||
.forEach(dataSourceId -> dataSourceAccessService.create(DataSourceAccessCreatParam.builder()
|
||||
.dataSourceId(dataSourceId)
|
||||
.accessObjectId(request.getTeamId())
|
||||
.accessObjectType(AccessObjectTypeEnum.TEAM.getCode())
|
||||
.build()));
|
||||
.forEach(dataSourceId -> {
|
||||
DataSourceAccessPageQueryParam dataSourceAccessPageQueryParam = new DataSourceAccessPageQueryParam();
|
||||
dataSourceAccessPageQueryParam.setDataSourceId(dataSourceId);
|
||||
dataSourceAccessPageQueryParam.setAccessObjectType(AccessObjectTypeEnum.TEAM.getCode());
|
||||
dataSourceAccessPageQueryParam.setAccessObjectId(request.getTeamId());
|
||||
dataSourceAccessPageQueryParam.queryOne();
|
||||
if (dataSourceAccessService.pageQuery(dataSourceAccessPageQueryParam, null).hasData()) {
|
||||
return;
|
||||
}
|
||||
dataSourceAccessService.create(DataSourceAccessCreatParam.builder()
|
||||
.dataSourceId(dataSourceId)
|
||||
.accessObjectId(request.getTeamId())
|
||||
.accessObjectType(AccessObjectTypeEnum.TEAM.getCode())
|
||||
.build());
|
||||
});
|
||||
return ActionResult.isSuccess();
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,7 @@ import ai.chat2db.server.admin.api.controller.team.request.TeamUserBatchCreateRe
|
||||
import ai.chat2db.server.admin.api.controller.team.vo.TeamUserPageQueryVO;
|
||||
import ai.chat2db.server.common.api.controller.request.CommonPageQueryRequest;
|
||||
import ai.chat2db.server.domain.api.param.team.user.TeamUserCreatParam;
|
||||
import ai.chat2db.server.domain.api.param.team.user.TeamUserPageQueryParam;
|
||||
import ai.chat2db.server.domain.api.param.team.user.TeamUserSelector;
|
||||
import ai.chat2db.server.domain.api.service.TeamUserService;
|
||||
import ai.chat2db.server.tools.base.wrapper.result.ActionResult;
|
||||
@ -60,10 +61,19 @@ public class TeamUserAdminController {
|
||||
@PostMapping("/batch_create")
|
||||
public ActionResult create(@Valid @RequestBody TeamUserBatchCreateRequest request) {
|
||||
request.getUserIdList()
|
||||
.forEach(userId -> teamUserService.create(TeamUserCreatParam.builder()
|
||||
.teamId(request.getTeamId())
|
||||
.userId(userId)
|
||||
.build()));
|
||||
.forEach(userId -> {
|
||||
TeamUserPageQueryParam teamUserPageQueryParam = new TeamUserPageQueryParam();
|
||||
teamUserPageQueryParam.setTeamId(request.getTeamId());
|
||||
teamUserPageQueryParam.setUserId(userId);
|
||||
teamUserPageQueryParam.queryOne();
|
||||
if (teamUserService.pageQuery(teamUserPageQueryParam, null).hasData()) {
|
||||
return;
|
||||
}
|
||||
teamUserService.create(TeamUserCreatParam.builder()
|
||||
.teamId(request.getTeamId())
|
||||
.userId(userId)
|
||||
.build());
|
||||
});
|
||||
return ActionResult.isSuccess();
|
||||
}
|
||||
|
||||
|
@ -45,6 +45,9 @@ public abstract class TeamDataSourcesAdminConverter {
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Mappings({
|
||||
@Mapping(target = "teamId", source = "accessObjectId"),
|
||||
})
|
||||
public abstract TeamDataSourcePageQueryVO dto2vo(DataSourceAccess dto);
|
||||
|
||||
}
|
||||
|
@ -6,7 +6,9 @@ import ai.chat2db.server.admin.api.controller.user.request.UserDataSourceBatchCr
|
||||
import ai.chat2db.server.admin.api.controller.user.request.UserTeamPageCommonQueryRequest;
|
||||
import ai.chat2db.server.admin.api.controller.user.vo.UserDataSourcePageQueryVO;
|
||||
import ai.chat2db.server.domain.api.enums.AccessObjectTypeEnum;
|
||||
import ai.chat2db.server.domain.api.param.datasource.DataSourceSelector;
|
||||
import ai.chat2db.server.domain.api.param.datasource.access.DataSourceAccessCreatParam;
|
||||
import ai.chat2db.server.domain.api.param.datasource.access.DataSourceAccessPageQueryParam;
|
||||
import ai.chat2db.server.domain.api.param.datasource.access.DataSourceAccessSelector;
|
||||
import ai.chat2db.server.domain.api.service.DataSourceAccessService;
|
||||
import ai.chat2db.server.tools.base.wrapper.result.ActionResult;
|
||||
@ -31,6 +33,9 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
public class UserDataSourceAdminController {
|
||||
private static final DataSourceAccessSelector DATA_SOURCE_ACCESS_SELECTOR = DataSourceAccessSelector.builder()
|
||||
.dataSource(Boolean.TRUE)
|
||||
.dataSourceSelector(DataSourceSelector.builder()
|
||||
.environment(Boolean.TRUE)
|
||||
.build())
|
||||
.build();
|
||||
|
||||
@Resource
|
||||
@ -62,11 +67,21 @@ public class UserDataSourceAdminController {
|
||||
@PostMapping("/batch_create")
|
||||
public ActionResult create(@RequestBody UserDataSourceBatchCreateRequest request) {
|
||||
request.getDataSourceIdList()
|
||||
.forEach(dataSourceId -> dataSourceAccessService.create(DataSourceAccessCreatParam.builder()
|
||||
.dataSourceId(dataSourceId)
|
||||
.accessObjectId(request.getUserId())
|
||||
.accessObjectType(AccessObjectTypeEnum.USER.getCode())
|
||||
.build()));
|
||||
.forEach(dataSourceId -> {
|
||||
DataSourceAccessPageQueryParam dataSourceAccessPageQueryParam = new DataSourceAccessPageQueryParam();
|
||||
dataSourceAccessPageQueryParam.setDataSourceId(dataSourceId);
|
||||
dataSourceAccessPageQueryParam.setAccessObjectType(AccessObjectTypeEnum.USER.getCode());
|
||||
dataSourceAccessPageQueryParam.setAccessObjectId(request.getUserId());
|
||||
dataSourceAccessPageQueryParam.queryOne();
|
||||
if (dataSourceAccessService.pageQuery(dataSourceAccessPageQueryParam, null).hasData()) {
|
||||
return;
|
||||
}
|
||||
dataSourceAccessService.create(DataSourceAccessCreatParam.builder()
|
||||
.dataSourceId(dataSourceId)
|
||||
.accessObjectId(request.getUserId())
|
||||
.accessObjectType(AccessObjectTypeEnum.USER.getCode())
|
||||
.build());
|
||||
});
|
||||
return ActionResult.isSuccess();
|
||||
}
|
||||
|
||||
|
@ -48,6 +48,9 @@ public abstract class UserDataSourcesAdminConverter {
|
||||
* @param dto
|
||||
* @return
|
||||
*/
|
||||
@Mappings({
|
||||
@Mapping(target = "userId", source = "accessObjectId"),
|
||||
})
|
||||
public abstract UserDataSourcePageQueryVO dto2vo(DataSourceAccess dto);
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user