mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-09-25 06:51:08 +00:00
More exact search for available budgets. #7853
This commit is contained in:
@@ -82,7 +82,7 @@ class BoxController extends Controller
|
|||||||
|
|
||||||
$currency = app('amount')->getDefaultCurrency();
|
$currency = app('amount')->getDefaultCurrency();
|
||||||
app('log')->debug(sprintf('Default currency is %s', $currency->code));
|
app('log')->debug(sprintf('Default currency is %s', $currency->code));
|
||||||
$availableBudgets = $abRepository->getAvailableBudgetsByDate($start, $end);
|
$availableBudgets = $abRepository->getAvailableBudgetsByExactDate($start, $end);
|
||||||
app('log')->debug(sprintf('Found %d available budget(s)', $availableBudgets->count()));
|
app('log')->debug(sprintf('Found %d available budget(s)', $availableBudgets->count()));
|
||||||
$availableBudgets = $availableBudgets->filter(
|
$availableBudgets = $availableBudgets->filter(
|
||||||
static function (AvailableBudget $availableBudget) use ($currency) {
|
static function (AvailableBudget $availableBudget) use ($currency) {
|
||||||
|
@@ -200,6 +200,23 @@ class AvailableBudgetRepository implements AvailableBudgetRepositoryInterface
|
|||||||
return $query->get();
|
return $query->get();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns all available budget objects.
|
||||||
|
*
|
||||||
|
* @param Carbon $start
|
||||||
|
* @param Carbon $end
|
||||||
|
*
|
||||||
|
* @return Collection
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public function getAvailableBudgetsByExactDate(Carbon $start, Carbon $end): Collection
|
||||||
|
{
|
||||||
|
return $this->user->availableBudgets()
|
||||||
|
->where('start_date', '=', $start->format('Y-m-d'))
|
||||||
|
->where('end_date', '=', $end->format('Y-m-d'))
|
||||||
|
->get();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @inheritDoc
|
* @inheritDoc
|
||||||
*/
|
*/
|
||||||
|
@@ -116,6 +116,14 @@ interface AvailableBudgetRepositoryInterface
|
|||||||
*/
|
*/
|
||||||
public function getAvailableBudgetsByDate(?Carbon $start, ?Carbon $end): Collection;
|
public function getAvailableBudgetsByDate(?Carbon $start, ?Carbon $end): Collection;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Carbon $start
|
||||||
|
* @param Carbon $end
|
||||||
|
*
|
||||||
|
* @return Collection
|
||||||
|
*/
|
||||||
|
public function getAvailableBudgetsByExactDate(Carbon $start, Carbon $end): Collection;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get by transaction currency and date. Should always result in one entry or NULL.
|
* Get by transaction currency and date. Should always result in one entry or NULL.
|
||||||
*
|
*
|
||||||
|
Reference in New Issue
Block a user