chore:clean up ai helper methods

This commit is contained in:
hackerESQ
2024-10-31 17:04:59 -05:00
parent 12cedd9e40
commit 8007e644d6
4 changed files with 30 additions and 32 deletions
+1 -14
View File
@@ -24,21 +24,8 @@ class HoldingController extends Controller
->portfolio($portfolio->id) ->portfolio($portfolio->id)
->firstOrFail(); ->firstOrFail();
$formattedTransactions = $this->getFormattedTransactions($holding); $formattedTransactions = $holding->getFormattedTransactions();
return view('holding.show', compact(['portfolio', 'holding', 'formattedTransactions'])); 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;
}
} }
+1 -18
View File
@@ -40,25 +40,8 @@ class PortfolioController extends Controller
} }
); );
$formattedHoldings = $this->getFormattedHoldings($portfolio); $formattedHoldings = $portfolio->getFormattedHoldings();
return view('portfolio.show', compact(['portfolio', 'metrics', 'formattedHoldings'])); 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.")"
."; with ". ($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;
}
} }
+13
View File
@@ -302,4 +302,17 @@ class Holding extends Model
->get() ->get()
->keyBy('date'); ->keyBy('date');
} }
public function getFormattedTransactions()
{
$formattedTransactions = '';
foreach($this->transactions->sortByDesc('date') as $transaction) {
$formattedTransactions .= " * ".$transaction->date->format('Y-m-d')
." ". $transaction->transaction_type
." ". $transaction->quantity
." @ ". $transaction->cost_basis
." each \n\n";
}
return $formattedTransactions;
}
} }
+15
View File
@@ -238,4 +238,19 @@ class Portfolio extends Model
return $close; return $close;
} }
public function getFormattedHoldings()
{
$formattedHoldings = '';
foreach($this->holdings as $holding) {
$formattedHoldings .= " * Holding of ".$holding->market_data->name." (".$holding->symbol.")"
."; with ". ($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;
}
} }