public async Task <IActionResult> Classify() { // command to extract var id = BankStatementId.NewComb(); var cmd = new ExtractBankStatement1Command { AggregateId = id, SourceId = SourceId.New }; try { // saga to predict, text match and populate read models / elastic search var token = new CancellationToken(false); await _bus.PublishAsync(cmd, token); var thing = new BankStatementAnalysisSummaryQuery { BankStatementId = cmd.AggregateId }; var result = await _queryProcessor.ProcessSerilizedQueryAsync(thing.GetType().Name, JsonConvert.SerializeObject(thing), token); return(Ok(result)); } catch (Exception ex) { Console.Write(ex.ToString()); Log.Error(ex, "bankstatementcontroller - classify {0}", cmd); } return(Ok("no result")); }
public async Task ExtractBankStatementAsync(ExtractBankStatement1Command command, IEnumerable <PredictionRequest> requests) { var predictionRequests = requests as PredictionRequest[] ?? requests.ToArray(); if (predictionRequests.Any(x => x == null)) { throw new ApplicationException(); } var ev = new BankStatementExtracted1Event { PredictionRequests = predictionRequests }; Emit(ev); await Task.CompletedTask; }