diff --git a/src/Infrastructure/BotSharp.Abstraction/Roles/IRoleService.cs b/src/Infrastructure/BotSharp.Abstraction/Roles/IRoleService.cs index 325c2e9c..e1fa86db 100644 --- a/src/Infrastructure/BotSharp.Abstraction/Roles/IRoleService.cs +++ b/src/Infrastructure/BotSharp.Abstraction/Roles/IRoleService.cs @@ -8,6 +8,6 @@ public interface IRoleService Task RefreshRoles(); Task> GetRoleOptions(); Task> GetRoles(RoleFilter filter); - Task GetRoleDetails(string roleId); + Task GetRoleDetails(string roleId, bool includeAgent = false); Task UpdateRole(Role role, bool isUpdateRoleAgents = false); } diff --git a/src/Infrastructure/BotSharp.Abstraction/Users/IUserService.cs b/src/Infrastructure/BotSharp.Abstraction/Users/IUserService.cs index 73605789..9ad2e166 100644 --- a/src/Infrastructure/BotSharp.Abstraction/Users/IUserService.cs +++ b/src/Infrastructure/BotSharp.Abstraction/Users/IUserService.cs @@ -8,7 +8,7 @@ public interface IUserService { Task GetUser(string id); Task> GetUsers(UserFilter filter); - Task GetUserDetails(string userId); + Task GetUserDetails(string userId, bool includeAgent = false); Task IsAdminUser(string userId); Task GetUserAuthorizations(IEnumerable? agentIds = null); Task UpdateUser(User user, bool isUpdateUserAgents = false); diff --git a/src/Infrastructure/BotSharp.Core/Roles/Services/RoleService.cs b/src/Infrastructure/BotSharp.Core/Roles/Services/RoleService.cs index 4319d06e..8cd7935b 100644 --- a/src/Infrastructure/BotSharp.Core/Roles/Services/RoleService.cs +++ b/src/Infrastructure/BotSharp.Core/Roles/Services/RoleService.cs @@ -43,10 +43,10 @@ public class RoleService : IRoleService return roles; } - public async Task GetRoleDetails(string roleId) + public async Task GetRoleDetails(string roleId, bool includeAgent = false) { var db = _services.GetRequiredService(); - var role = db.GetRoleDetails(roleId, includeAgent: true); + var role = db.GetRoleDetails(roleId, includeAgent); return role; } diff --git a/src/Infrastructure/BotSharp.Core/Users/Services/UserService.cs b/src/Infrastructure/BotSharp.Core/Users/Services/UserService.cs index 5e5572ec..9a7a4a1e 100644 --- a/src/Infrastructure/BotSharp.Core/Users/Services/UserService.cs +++ b/src/Infrastructure/BotSharp.Core/Users/Services/UserService.cs @@ -452,10 +452,10 @@ public class UserService : IUserService return auth; } - public async Task GetUserDetails(string userId) + public async Task GetUserDetails(string userId, bool includeAgent = false) { var db = _services.GetRequiredService(); - return db.GetUserDetails(userId, includeAgent: true); + return db.GetUserDetails(userId, includeAgent); } public async Task UpdateUser(User user, bool isUpdateUserAgents = false) diff --git a/src/Infrastructure/BotSharp.OpenAPI/Controllers/KnowledgeBaseController.cs b/src/Infrastructure/BotSharp.OpenAPI/Controllers/KnowledgeBaseController.cs index 3ead41b0..5a1a6bda 100644 --- a/src/Infrastructure/BotSharp.OpenAPI/Controllers/KnowledgeBaseController.cs +++ b/src/Infrastructure/BotSharp.OpenAPI/Controllers/KnowledgeBaseController.cs @@ -120,12 +120,13 @@ public class KnowledgeBaseController : ControllerBase [HttpPost("/knowledge/document/{collection}/upload")] public async Task UploadKnowledgeDocuments([FromRoute] string collection, [FromBody] VectorKnowledgeUploadRequest request) { - var response = await _knowledgeService.UploadDocumentsToKnowledge(collection, request.Files); + var response = await _knowledgeService.UploadDocumentsToKnowledge(collection, request.Files, request.ChunkOption); return response; } [HttpPost("/knowledge/document/{collection}/form-upload")] - public async Task UploadKnowledgeDocuments([FromRoute] string collection, [FromForm] IEnumerable files) + public async Task UploadKnowledgeDocuments([FromRoute] string collection, + [FromForm] IEnumerable files, [FromForm] ChunkOption? option = null) { if (files.IsNullOrEmpty()) { @@ -143,7 +144,7 @@ public class KnowledgeBaseController : ControllerBase }); } - var response = await _knowledgeService.UploadDocumentsToKnowledge(collection, docs); + var response = await _knowledgeService.UploadDocumentsToKnowledge(collection, docs, option); return response; } diff --git a/src/Infrastructure/BotSharp.OpenAPI/Controllers/RoleController.cs b/src/Infrastructure/BotSharp.OpenAPI/Controllers/RoleController.cs index d270ecbe..d4ca64fc 100644 --- a/src/Infrastructure/BotSharp.OpenAPI/Controllers/RoleController.cs +++ b/src/Infrastructure/BotSharp.OpenAPI/Controllers/RoleController.cs @@ -61,7 +61,7 @@ public class RoleController : ControllerBase [HttpGet("/role/{id}/details")] public async Task GetRoleDetails([FromRoute] string id) { - var role = await _roleService.GetRoleDetails(id); + var role = await _roleService.GetRoleDetails(id, includeAgent: true); return RoleViewModel.FromRole(role); } diff --git a/src/Infrastructure/BotSharp.OpenAPI/Controllers/UserController.cs b/src/Infrastructure/BotSharp.OpenAPI/Controllers/UserController.cs index 6bdbd721..b25be68b 100644 --- a/src/Infrastructure/BotSharp.OpenAPI/Controllers/UserController.cs +++ b/src/Infrastructure/BotSharp.OpenAPI/Controllers/UserController.cs @@ -202,7 +202,7 @@ public class UserController : ControllerBase public async Task GetUserDetails(string id) { var userService = _services.GetRequiredService(); - var user = await userService.GetUserDetails(id); + var user = await userService.GetUserDetails(id, includeAgent: true); return UserViewModel.FromUser(user); } diff --git a/src/Infrastructure/BotSharp.OpenAPI/ViewModels/Knowledges/VectorKnowledgeUploadRequest.cs b/src/Infrastructure/BotSharp.OpenAPI/ViewModels/Knowledges/VectorKnowledgeUploadRequest.cs index 3788f05c..0934c508 100644 --- a/src/Infrastructure/BotSharp.OpenAPI/ViewModels/Knowledges/VectorKnowledgeUploadRequest.cs +++ b/src/Infrastructure/BotSharp.OpenAPI/ViewModels/Knowledges/VectorKnowledgeUploadRequest.cs @@ -6,4 +6,7 @@ public class VectorKnowledgeUploadRequest { [JsonPropertyName("files")] public IEnumerable Files { get; set; } = new List(); + + [JsonPropertyName("chunk_option")] + public ChunkOption? ChunkOption { get; set; } }