mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-09-04 11:48:05 +00:00
Rename fields for piggy bank
This commit is contained in:
@@ -114,7 +114,7 @@ class PiggyBankController extends Controller
|
||||
'%s (%s / %s)',
|
||||
$piggy->name,
|
||||
app('amount')->formatAnything($currency, $currentAmount, false),
|
||||
app('amount')->formatAnything($currency, $piggy->targetamount, false),
|
||||
app('amount')->formatAnything($currency, $piggy->target_amount, false),
|
||||
),
|
||||
'currency_id' => (string)$currency->id,
|
||||
'currency_name' => $currency->name,
|
||||
|
@@ -173,7 +173,7 @@ class CorrectAmounts extends Command
|
||||
|
||||
/** @var PiggyBankRepetition $item */
|
||||
foreach ($set as $item) {
|
||||
$item->currentamount = app('steam')->positive($item->current_amount);
|
||||
$item->current_amount = app('steam')->positive($item->current_amount);
|
||||
$item->save();
|
||||
}
|
||||
$this->friendlyInfo(sprintf('Corrected %d piggy bank repetition amount(s).', $count));
|
||||
@@ -191,7 +191,7 @@ class CorrectAmounts extends Command
|
||||
|
||||
/** @var PiggyBank $item */
|
||||
foreach ($set as $item) {
|
||||
$item->targetamount = app('steam')->positive($item->target_amount);
|
||||
$item->target_amount = app('steam')->positive($item->target_amount);
|
||||
$item->save();
|
||||
}
|
||||
$this->friendlyInfo(sprintf('Corrected %d piggy bank amount(s).', $count));
|
||||
|
@@ -128,7 +128,7 @@ class ApplyRules extends Command
|
||||
$ruleEngine->addOperator(['type' => 'account_id', 'value' => $list]);
|
||||
|
||||
// add the date as a filter:
|
||||
$ruleEngine->addOperator(['type' => 'date_after', 'value' => $this->startDate->format('Y-m-d')]);
|
||||
$ruleEngine->addOperator(['type' => 'date_after', 'value' => $this->start_date->format('Y-m-d')]);
|
||||
$ruleEngine->addOperator(['type' => 'date_before', 'value' => $this->endDate->format('Y-m-d')]);
|
||||
|
||||
// start running rules.
|
||||
@@ -296,7 +296,7 @@ class ApplyRules extends Command
|
||||
[$inputEnd, $inputStart] = [$inputStart, $inputEnd];
|
||||
}
|
||||
|
||||
$this->startDate = $inputStart;
|
||||
$this->start_date = $inputStart;
|
||||
$this->endDate = $inputEnd;
|
||||
}
|
||||
|
||||
|
@@ -37,10 +37,10 @@ class PiggyBankObserver
|
||||
app('log')->debug('Observe "created" of a piggy bank.');
|
||||
$repetition = new PiggyBankRepetition();
|
||||
$repetition->piggyBank()->associate($piggyBank);
|
||||
$repetition->start_date = $piggyBank->startdate;
|
||||
$repetition->start_date_tz = $piggyBank->startdate->format('e');
|
||||
$repetition->target_date = $piggyBank->targetdate;
|
||||
$repetition->target_date_tz = $piggyBank->targetdate?->format('e');
|
||||
$repetition->start_date = $piggyBank->start_date;
|
||||
$repetition->start_date_tz = $piggyBank->start_date->format('e');
|
||||
$repetition->target_date = $piggyBank->target_date;
|
||||
$repetition->target_date_tz = $piggyBank->target_date?->format('e');
|
||||
$repetition->current_amount = '0';
|
||||
$repetition->save();
|
||||
}
|
||||
|
@@ -75,7 +75,7 @@ class PiggyBankController extends Controller
|
||||
$locale = app('steam')->getLocale();
|
||||
|
||||
// get first event or start date of piggy bank or today
|
||||
$startDate = $piggyBank->startdate ?? today(config('app.timezone'));
|
||||
$startDate = $piggyBank->start_date ?? today(config('app.timezone'));
|
||||
|
||||
/** @var null|PiggyBankEvent $firstEvent */
|
||||
$firstEvent = $set->first();
|
||||
|
@@ -50,15 +50,15 @@ class FrontpageController extends Controller
|
||||
if (1 === bccomp($amount, '0')) {
|
||||
// percentage!
|
||||
$pct = 0;
|
||||
if (0 !== bccomp($piggyBank->targetamount, '0')) {
|
||||
$pct = (int)bcmul(bcdiv($amount, $piggyBank->targetamount), '100');
|
||||
if (0 !== bccomp($piggyBank->target_amount, '0')) {
|
||||
$pct = (int)bcmul(bcdiv($amount, $piggyBank->target_amount), '100');
|
||||
}
|
||||
|
||||
$entry = [
|
||||
'id' => $piggyBank->id,
|
||||
'name' => $piggyBank->name,
|
||||
'amount' => $amount,
|
||||
'target' => $piggyBank->targetamount,
|
||||
'target' => $piggyBank->target_amount,
|
||||
'percentage' => $pct,
|
||||
];
|
||||
|
||||
|
@@ -72,8 +72,8 @@ class AmountController extends Controller
|
||||
$leftOnAccount = $this->piggyRepos->leftOnAccount($piggyBank, today(config('app.timezone')));
|
||||
$savedSoFar = $this->piggyRepos->getCurrentAmount($piggyBank);
|
||||
$maxAmount = $leftOnAccount;
|
||||
if (0 !== bccomp($piggyBank->targetamount, '0')) {
|
||||
$leftToSave = bcsub($piggyBank->targetamount, $savedSoFar);
|
||||
if (0 !== bccomp($piggyBank->target_amount, '0')) {
|
||||
$leftToSave = bcsub($piggyBank->target_amount, $savedSoFar);
|
||||
$maxAmount = min($leftOnAccount, $leftToSave);
|
||||
}
|
||||
$currency = $this->accountRepos->getAccountCurrency($piggyBank->account) ?? app('amount')->getDefaultCurrency();
|
||||
@@ -94,8 +94,8 @@ class AmountController extends Controller
|
||||
$savedSoFar = $this->piggyRepos->getCurrentAmount($piggyBank);
|
||||
$maxAmount = $leftOnAccount;
|
||||
|
||||
if (0 !== bccomp($piggyBank->targetamount, '0')) {
|
||||
$leftToSave = bcsub($piggyBank->targetamount, $savedSoFar);
|
||||
if (0 !== bccomp($piggyBank->target_amount, '0')) {
|
||||
$leftToSave = bcsub($piggyBank->target_amount, $savedSoFar);
|
||||
$maxAmount = min($leftOnAccount, $leftToSave);
|
||||
}
|
||||
$currency = $this->accountRepos->getAccountCurrency($piggyBank->account) ?? app('amount')->getDefaultCurrency();
|
||||
|
@@ -77,8 +77,8 @@ class EditController extends Controller
|
||||
$subTitleIcon = 'fa-pencil';
|
||||
$note = $piggyBank->notes()->first();
|
||||
// Flash some data to fill the form.
|
||||
$targetDate = $piggyBank->targetdate?->format('Y-m-d');
|
||||
$startDate = $piggyBank->startdate?->format('Y-m-d');
|
||||
$targetDate = $piggyBank->target_date?->format('Y-m-d');
|
||||
$startDate = $piggyBank->start_date?->format('Y-m-d');
|
||||
$currency = $this->accountRepository->getAccountCurrency($piggyBank->account);
|
||||
if (null === $currency) {
|
||||
$currency = app('amount')->getDefaultCurrency();
|
||||
@@ -87,13 +87,13 @@ class EditController extends Controller
|
||||
$preFilled = [
|
||||
'name' => $piggyBank->name,
|
||||
'account_id' => $piggyBank->account_id,
|
||||
'targetamount' => app('steam')->bcround($piggyBank->targetamount, $currency->decimal_places),
|
||||
'targetamount' => app('steam')->bcround($piggyBank->target_amount, $currency->decimal_places),
|
||||
'targetdate' => $targetDate,
|
||||
'startdate' => $startDate,
|
||||
'object_group' => null !== $piggyBank->objectGroups->first() ? $piggyBank->objectGroups->first()->title : '',
|
||||
'notes' => null === $note ? '' : $note->text,
|
||||
];
|
||||
if (0 === bccomp($piggyBank->targetamount, '0')) {
|
||||
if (0 === bccomp($piggyBank->target_amount, '0')) {
|
||||
$preFilled['targetamount'] = '';
|
||||
}
|
||||
session()->flash('preFilled', $preFilled);
|
||||
|
@@ -42,8 +42,8 @@ class PiggyBankRepetition extends Model
|
||||
= [
|
||||
'created_at' => 'datetime',
|
||||
'updated_at' => 'datetime',
|
||||
'startdate' => SeparateTimezoneCaster::class,
|
||||
'targetdate' => SeparateTimezoneCaster::class,
|
||||
'start_date' => SeparateTimezoneCaster::class,
|
||||
'target_date' => SeparateTimezoneCaster::class,
|
||||
'virtual_balance' => 'string',
|
||||
];
|
||||
|
||||
@@ -56,7 +56,7 @@ class PiggyBankRepetition extends Model
|
||||
|
||||
public function scopeOnDates(EloquentBuilder $query, Carbon $start, Carbon $target): EloquentBuilder
|
||||
{
|
||||
return $query->where('startdate', $start->format('Y-m-d'))->where('targetdate', $target->format('Y-m-d'));
|
||||
return $query->where('start_date', $start->format('Y-m-d'))->where('target_date', $target->format('Y-m-d'));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -66,14 +66,14 @@ class PiggyBankRepetition extends Model
|
||||
{
|
||||
return $query->where(
|
||||
static function (EloquentBuilder $q) use ($date): void {
|
||||
$q->where('startdate', '<=', $date->format('Y-m-d 00:00:00'));
|
||||
$q->orWhereNull('startdate');
|
||||
$q->where('start_date', '<=', $date->format('Y-m-d 00:00:00'));
|
||||
$q->orWhereNull('start_date');
|
||||
}
|
||||
)
|
||||
->where(
|
||||
static function (EloquentBuilder $q) use ($date): void {
|
||||
$q->where('targetdate', '>=', $date->format('Y-m-d 00:00:00'));
|
||||
$q->orWhereNull('targetdate');
|
||||
$q->where('target_date', '>=', $date->format('Y-m-d 00:00:00'));
|
||||
$q->orWhereNull('target_date');
|
||||
}
|
||||
)
|
||||
;
|
||||
@@ -82,15 +82,15 @@ class PiggyBankRepetition extends Model
|
||||
/**
|
||||
* @param mixed $value
|
||||
*/
|
||||
public function setCurrentamountAttribute($value): void
|
||||
public function setCurrentAmountAttribute($value): void
|
||||
{
|
||||
$this->attributes['currentamount'] = (string)$value;
|
||||
$this->attributes['current_amount'] = (string)$value;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the amount
|
||||
*/
|
||||
protected function currentamount(): Attribute
|
||||
protected function currentAmount(): Attribute
|
||||
{
|
||||
return Attribute::make(
|
||||
get: static fn ($value) => (string)$value,
|
||||
|
@@ -59,7 +59,7 @@ trait ModifiesPiggyBanks
|
||||
if (null === $repetition) {
|
||||
return false;
|
||||
}
|
||||
$repetition->currentamount = bcsub($repetition->currentamount, $amount);
|
||||
$repetition->current_amount = bcsub($repetition->current_amount, $amount);
|
||||
$repetition->save();
|
||||
|
||||
app('log')->debug('addAmount [a]: Trigger change for negative amount.');
|
||||
@@ -74,8 +74,8 @@ trait ModifiesPiggyBanks
|
||||
if (null === $repetition) {
|
||||
return false;
|
||||
}
|
||||
$currentAmount = $repetition->currentamount ?? '0';
|
||||
$repetition->currentamount = bcadd($currentAmount, $amount);
|
||||
$currentAmount = $repetition->current_amount ?? '0';
|
||||
$repetition->current_amount = bcadd($currentAmount, $amount);
|
||||
$repetition->save();
|
||||
|
||||
app('log')->debug('addAmount [b]: Trigger change for positive amount.');
|
||||
@@ -88,11 +88,11 @@ trait ModifiesPiggyBanks
|
||||
{
|
||||
$today = today(config('app.timezone'));
|
||||
$leftOnAccount = $this->leftOnAccount($piggyBank, $today);
|
||||
$savedSoFar = $this->getRepetition($piggyBank)->currentamount;
|
||||
$savedSoFar = $this->getRepetition($piggyBank)->current_amount;
|
||||
$maxAmount = $leftOnAccount;
|
||||
$leftToSave = null;
|
||||
if (0 !== bccomp($piggyBank->targetamount, '0')) {
|
||||
$leftToSave = bcsub($piggyBank->targetamount, $savedSoFar);
|
||||
if (0 !== bccomp($piggyBank->target_amount, '0')) {
|
||||
$leftToSave = bcsub($piggyBank->target_amount, $savedSoFar);
|
||||
$maxAmount = 1 === bccomp($leftOnAccount, $leftToSave) ? $leftToSave : $leftOnAccount;
|
||||
}
|
||||
|
||||
@@ -114,7 +114,7 @@ trait ModifiesPiggyBanks
|
||||
if (null === $repetition) {
|
||||
return false;
|
||||
}
|
||||
$savedSoFar = $repetition->currentamount;
|
||||
$savedSoFar = $repetition->current_amount;
|
||||
|
||||
return bccomp($amount, $savedSoFar) <= 0;
|
||||
}
|
||||
@@ -143,12 +143,12 @@ trait ModifiesPiggyBanks
|
||||
if (null === $repetition) {
|
||||
return $piggyBank;
|
||||
}
|
||||
$max = $piggyBank->targetamount;
|
||||
if (1 === bccomp($amount, $max) && 0 !== bccomp($piggyBank->targetamount, '0')) {
|
||||
$max = $piggyBank->target_amount;
|
||||
if (1 === bccomp($amount, $max) && 0 !== bccomp($piggyBank->target_amount, '0')) {
|
||||
$amount = $max;
|
||||
}
|
||||
$difference = bcsub($amount, $repetition->currentamount);
|
||||
$repetition->currentamount = $amount;
|
||||
$difference = bcsub($amount, $repetition->current_amount);
|
||||
$repetition->current_amount = $amount;
|
||||
$repetition->save();
|
||||
|
||||
if (-1 === bccomp($difference, '0')) {
|
||||
@@ -213,7 +213,7 @@ trait ModifiesPiggyBanks
|
||||
// repetition is auto created.
|
||||
$repetition = $this->getRepetition($piggyBank);
|
||||
if (null !== $repetition && array_key_exists('current_amount', $data) && '' !== $data['current_amount']) {
|
||||
$repetition->currentamount = $data['current_amount'];
|
||||
$repetition->current_amount = $data['current_amount'];
|
||||
$repetition->save();
|
||||
}
|
||||
|
||||
@@ -318,13 +318,13 @@ trait ModifiesPiggyBanks
|
||||
// if the piggy bank is now smaller than the current relevant rep,
|
||||
// remove money from the rep.
|
||||
$repetition = $this->getRepetition($piggyBank);
|
||||
if (null !== $repetition && $repetition->currentamount > $piggyBank->targetamount && 0 !== bccomp($piggyBank->targetamount, '0')) {
|
||||
$difference = bcsub($piggyBank->targetamount, $repetition->currentamount);
|
||||
if (null !== $repetition && $repetition->current_amount > $piggyBank->target_amount && 0 !== bccomp($piggyBank->target_amount, '0')) {
|
||||
$difference = bcsub($piggyBank->target_amount, $repetition->current_amount);
|
||||
|
||||
// an amount will be removed, create "negative" event:
|
||||
event(new ChangedAmount($piggyBank, $difference, null, null));
|
||||
|
||||
$repetition->currentamount = $piggyBank->targetamount;
|
||||
$repetition->current_amount = $piggyBank->target_amount;
|
||||
$repetition->save();
|
||||
}
|
||||
|
||||
@@ -370,18 +370,18 @@ trait ModifiesPiggyBanks
|
||||
$piggyBank->account_id = (int)$data['account_id'];
|
||||
}
|
||||
if (array_key_exists('targetamount', $data) && '' !== $data['targetamount']) {
|
||||
$piggyBank->targetamount = $data['targetamount'];
|
||||
$piggyBank->target_amount = $data['targetamount'];
|
||||
}
|
||||
if (array_key_exists('targetamount', $data) && '' === $data['targetamount']) {
|
||||
$piggyBank->targetamount = '0';
|
||||
$piggyBank->target_amount = '0';
|
||||
}
|
||||
if (array_key_exists('targetdate', $data) && '' !== $data['targetdate']) {
|
||||
$piggyBank->targetdate = $data['targetdate'];
|
||||
$piggyBank->targetdate_tz = $data['targetdate']?->format('e');
|
||||
$piggyBank->target_date = $data['targetdate'];
|
||||
$piggyBank->target_date_tz = $data['targetdate']?->format('e');
|
||||
}
|
||||
if (array_key_exists('startdate', $data)) {
|
||||
$piggyBank->startdate = $data['startdate'];
|
||||
$piggyBank->startdate_tz = $data['targetdate']?->format('e');
|
||||
$piggyBank->start_date = $data['startdate'];
|
||||
$piggyBank->start_date_tz = $data['targetdate']?->format('e');
|
||||
}
|
||||
$piggyBank->save();
|
||||
|
||||
|
@@ -120,7 +120,7 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface
|
||||
return '0';
|
||||
}
|
||||
|
||||
return $rep->currentamount;
|
||||
return $rep->current_amount;
|
||||
}
|
||||
|
||||
public function getRepetition(PiggyBank $piggyBank): ?PiggyBankRepetition
|
||||
@@ -200,10 +200,10 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface
|
||||
}
|
||||
|
||||
app('log')->debug(sprintf('The currency is %s and the amount is %s', $currency->code, $amount));
|
||||
$room = bcsub($piggyBank->targetamount, $repetition->currentamount);
|
||||
$compare = bcmul($repetition->currentamount, '-1');
|
||||
$room = bcsub($piggyBank->target_amount, $repetition->current_amount);
|
||||
$compare = bcmul($repetition->current_amount, '-1');
|
||||
|
||||
if (0 === bccomp($piggyBank->targetamount, '0')) {
|
||||
if (0 === bccomp($piggyBank->target_amount, '0')) {
|
||||
// amount is zero? then the "room" is positive amount of we wish to add or remove.
|
||||
$room = app('steam')->positive($amount);
|
||||
app('log')->debug(sprintf('Room is now %s', $room));
|
||||
@@ -223,7 +223,7 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface
|
||||
|
||||
// amount is negative and $currentamount is smaller than $amount
|
||||
if (-1 === bccomp($amount, '0') && 1 === bccomp($compare, $amount)) {
|
||||
app('log')->debug(sprintf('Max amount to remove is %f', $repetition->currentamount));
|
||||
app('log')->debug(sprintf('Max amount to remove is %f', $repetition->current_amount));
|
||||
app('log')->debug(sprintf('Cannot remove %f from piggy bank #%d ("%s")', $amount, $piggyBank->id, $piggyBank->name));
|
||||
app('log')->debug(sprintf('New amount is %f', $compare));
|
||||
|
||||
@@ -267,7 +267,7 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface
|
||||
|
||||
/** @var PiggyBank $piggy */
|
||||
foreach ($set as $piggy) {
|
||||
$currentAmount = $this->getRepetition($piggy)->currentamount ?? '0';
|
||||
$currentAmount = $this->getRepetition($piggy)->current_amount ?? '0';
|
||||
$piggy->name = $piggy->name.' ('.app('amount')->formatAnything($currency, $currentAmount, false).')';
|
||||
}
|
||||
|
||||
@@ -298,11 +298,11 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface
|
||||
if (null === $repetition) {
|
||||
return $savePerMonth;
|
||||
}
|
||||
if (null !== $piggyBank->targetdate && $repetition->currentamount < $piggyBank->targetamount) {
|
||||
if (null !== $piggyBank->target_date && $repetition->current_amount < $piggyBank->target_amount) {
|
||||
$now = today(config('app.timezone'));
|
||||
$startDate = null !== $piggyBank->startdate && $piggyBank->startdate->gte($now) ? $piggyBank->startdate : $now;
|
||||
$diffInMonths = (int)$startDate->diffInMonths($piggyBank->targetdate);
|
||||
$remainingAmount = bcsub($piggyBank->targetamount, $repetition->currentamount);
|
||||
$startDate = null !== $piggyBank->start_date && $piggyBank->start_date->gte($now) ? $piggyBank->start_date : $now;
|
||||
$diffInMonths = (int)$startDate->diffInMonths($piggyBank->target_date);
|
||||
$remainingAmount = bcsub($piggyBank->target_amount, $repetition->current_amount);
|
||||
|
||||
// more than 1 month to go and still need money to save:
|
||||
if ($diffInMonths > 0 && 1 === bccomp($remainingAmount, '0')) {
|
||||
@@ -332,7 +332,7 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface
|
||||
foreach ($piggies as $current) {
|
||||
$repetition = $this->getRepetition($current);
|
||||
if (null !== $repetition) {
|
||||
$balance = bcsub($balance, $repetition->currentamount);
|
||||
$balance = bcsub($balance, $repetition->current_amount);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -456,10 +456,10 @@ class ExportDataGenerator
|
||||
$piggy->account->accountType->type,
|
||||
$piggy->name,
|
||||
$currency?->code,
|
||||
$piggy->targetamount,
|
||||
$repetition?->currentamount,
|
||||
$piggy->startdate?->format('Y-m-d'),
|
||||
$piggy->targetdate?->format('Y-m-d'),
|
||||
$piggy->target_amount,
|
||||
$repetition?->current_amount,
|
||||
$piggy->start_date?->format('Y-m-d'),
|
||||
$piggy->target_date?->format('Y-m-d'),
|
||||
$piggy->order,
|
||||
$piggy->active,
|
||||
];
|
||||
|
@@ -178,15 +178,15 @@ class UpdatePiggybank implements ActionInterface
|
||||
$repository->setUser($journal->user);
|
||||
|
||||
// how much can we add to the piggy bank?
|
||||
if (0 !== bccomp($piggyBank->targetamount, '0')) {
|
||||
$toAdd = bcsub($piggyBank->targetamount, $repository->getCurrentAmount($piggyBank));
|
||||
if (0 !== bccomp($piggyBank->target_amount, '0')) {
|
||||
$toAdd = bcsub($piggyBank->target_amount, $repository->getCurrentAmount($piggyBank));
|
||||
app('log')->debug(sprintf('Max amount to add to piggy bank is %s, amount is %s', $toAdd, $amount));
|
||||
|
||||
// update amount to fit:
|
||||
$amount = -1 === bccomp($amount, $toAdd) ? $amount : $toAdd;
|
||||
app('log')->debug(sprintf('Amount is now %s', $amount));
|
||||
}
|
||||
if (0 === bccomp($piggyBank->targetamount, '0')) {
|
||||
if (0 === bccomp($piggyBank->target_amount, '0')) {
|
||||
app('log')->debug('Target amount is zero, can add anything.');
|
||||
}
|
||||
|
||||
|
@@ -84,18 +84,18 @@ class PiggyBankTransformer extends AbstractTransformer
|
||||
|
||||
// Amounts, depending on 0.0 state of target amount
|
||||
$percentage = null;
|
||||
$targetAmount = $piggyBank->targetamount;
|
||||
$targetAmount = $piggyBank->target_amount;
|
||||
$leftToSave = null;
|
||||
$savePerMonth = null;
|
||||
if (0 !== bccomp($targetAmount, '0')) { // target amount is not 0.00
|
||||
$leftToSave = bcsub($piggyBank->targetamount, $currentAmount);
|
||||
$leftToSave = bcsub($piggyBank->target_amount, $currentAmount);
|
||||
$percentage = (int)bcmul(bcdiv($currentAmount, $targetAmount), '100');
|
||||
$targetAmount = app('steam')->bcround($targetAmount, $currency->decimal_places);
|
||||
$leftToSave = app('steam')->bcround($leftToSave, $currency->decimal_places);
|
||||
$savePerMonth = app('steam')->bcround($this->piggyRepos->getSuggestedMonthlyAmount($piggyBank), $currency->decimal_places);
|
||||
}
|
||||
$startDate = $piggyBank->startdate?->format('Y-m-d');
|
||||
$targetDate = $piggyBank->targetdate?->format('Y-m-d');
|
||||
$startDate = $piggyBank->start_date?->format('Y-m-d');
|
||||
$targetDate = $piggyBank->target_date?->format('Y-m-d');
|
||||
|
||||
return [
|
||||
'id' => (string)$piggyBank->id,
|
||||
|
@@ -119,7 +119,7 @@ class PiggyBankTransformer extends AbstractTransformer
|
||||
/** @var PiggyBankRepetition $repetition */
|
||||
foreach ($repetitions as $repetition) {
|
||||
$this->repetitions[$repetition->piggy_bank_id] = [
|
||||
'amount' => $repetition->currentamount,
|
||||
'amount' => $repetition->current_amount,
|
||||
];
|
||||
}
|
||||
|
||||
@@ -178,14 +178,14 @@ class PiggyBankTransformer extends AbstractTransformer
|
||||
$nativeLeftToSave = null;
|
||||
$savePerMonth = null;
|
||||
$nativeSavePerMonth = null;
|
||||
$startDate = $piggyBank->startdate?->format('Y-m-d');
|
||||
$targetDate = $piggyBank->targetdate?->format('Y-m-d');
|
||||
$startDate = $piggyBank->start_date?->format('Y-m-d');
|
||||
$targetDate = $piggyBank->target_date?->format('Y-m-d');
|
||||
$accountId = $piggyBank->account_id;
|
||||
$accountName = $this->accounts[$accountId]['name'] ?? null;
|
||||
$currency = $this->currencies[$accountId] ?? $this->default;
|
||||
$currentAmount = app('steam')->bcround($this->repetitions[$piggyBank->id]['amount'] ?? '0', $currency->decimal_places);
|
||||
$nativeCurrentAmount = $this->converter->convert($this->default, $currency, today(), $currentAmount);
|
||||
$targetAmount = $piggyBank->targetamount;
|
||||
$targetAmount = $piggyBank->target_amount;
|
||||
$nativeTargetAmount = $this->converter->convert($this->default, $currency, today(), $targetAmount);
|
||||
$note = $this->notes[$piggyBank->id] ?? null;
|
||||
$group = $this->groups[$piggyBank->id] ?? null;
|
||||
@@ -194,7 +194,7 @@ class PiggyBankTransformer extends AbstractTransformer
|
||||
$leftToSave = bcsub($targetAmount, $currentAmount);
|
||||
$nativeLeftToSave = $this->converter->convert($this->default, $currency, today(), $leftToSave);
|
||||
$percentage = (int)bcmul(bcdiv($currentAmount, $targetAmount), '100');
|
||||
$savePerMonth = $this->getSuggestedMonthlyAmount($currentAmount, $targetAmount, $piggyBank->startdate, $piggyBank->targetdate);
|
||||
$savePerMonth = $this->getSuggestedMonthlyAmount($currentAmount, $targetAmount, $piggyBank->start_date, $piggyBank->target_date);
|
||||
$nativeSavePerMonth = $this->converter->convert($this->default, $currency, today(), $savePerMonth);
|
||||
}
|
||||
$this->converter->summarize();
|
||||
|
Reference in New Issue
Block a user