feat:adds LLM capabilities to chat with your portfolios and holdings
This commit is contained in:
@@ -24,6 +24,21 @@ class HoldingController extends Controller
|
||||
->portfolio($portfolio->id)
|
||||
->firstOrFail();
|
||||
|
||||
return view('holding.show', compact(['portfolio', 'holding']));
|
||||
$formattedTransactions = $this->getFormattedTransactions($holding);
|
||||
|
||||
return view('holding.show', compact(['portfolio', 'holding', 'formattedTransactions']));
|
||||
}
|
||||
|
||||
public function getFormattedTransactions($holding)
|
||||
{
|
||||
$formattedTransactions = '';
|
||||
foreach($holding->transactions->where('symbol', $holding->symbol)->sortByDesc('date') as $transaction) {
|
||||
$formattedTransactions .= " * ".$transaction->date->format('Y-m-d')
|
||||
." ". $transaction->transaction_type
|
||||
." ". $transaction->quantity
|
||||
." @ ". $transaction->cost_basis
|
||||
." each \n\n";
|
||||
}
|
||||
return $formattedTransactions;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,7 +39,26 @@ class PortfolioController extends Controller
|
||||
->first();
|
||||
}
|
||||
);
|
||||
|
||||
$formattedHoldings = $this->getFormattedHoldings($portfolio);
|
||||
|
||||
return view('portfolio.show', compact(['portfolio', 'metrics']));
|
||||
return view('portfolio.show', compact(['portfolio', 'metrics', 'formattedHoldings']));
|
||||
}
|
||||
|
||||
public function getFormattedHoldings($portfolio)
|
||||
{
|
||||
$formattedHoldings = '';
|
||||
foreach($portfolio->holdings as $holding) {
|
||||
$formattedHoldings .= " * Holding of ".$holding->market_data->name." (".$holding->symbol.")"
|
||||
."; own ". ($holding->quantity > 0 ? $holding->quantity : 'ZERO') . " shares"
|
||||
."; avg cost basis ". $holding->average_cost_basis
|
||||
."; curr market value ". $holding->market_data->market_value
|
||||
."; unrealized gains ". $holding->market_gain_dollars
|
||||
."; realized gains ". $holding->realized_gain_dollars
|
||||
."; dividends earned ". $holding->dividends_earned
|
||||
."\n\n";
|
||||
|
||||
}
|
||||
return $formattedHoldings;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user