feat(ai): DB-only config + runtime provider selection via factory
This commit is contained in:
@@ -11,8 +11,8 @@ namespace ROLAC.API.Controllers;
|
||||
// member filing a reimbursement can reach. The endpoint only reads the category catalog.
|
||||
public class ExpenseAiController : ControllerBase
|
||||
{
|
||||
private readonly IExpenseAiService _svc;
|
||||
public ExpenseAiController(IExpenseAiService svc) => _svc = svc;
|
||||
private readonly IExpenseAiServiceFactory _factory;
|
||||
public ExpenseAiController(IExpenseAiServiceFactory factory) => _factory = factory;
|
||||
|
||||
[HttpPost("assist")]
|
||||
public async Task<IActionResult> Assist([FromBody] ExpenseAiAssistRequest request, CancellationToken ct)
|
||||
@@ -20,7 +20,8 @@ public class ExpenseAiController : ControllerBase
|
||||
if (string.IsNullOrWhiteSpace(request.Text))
|
||||
return BadRequest("Text is required.");
|
||||
|
||||
var suggestion = await _svc.SuggestAsync(request.Text, request.Amount, ct);
|
||||
var svc = await _factory.ResolveAsync(ct);
|
||||
var suggestion = await svc.SuggestAsync(request.Text, request.Amount, ct);
|
||||
return Ok(suggestion);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user