Skip to content

Commit 83eb274

Browse files
committed
add $balanceFloatNum
1 parent 3abe077 commit 83eb274

File tree

3 files changed

+12
-0
lines changed

3 files changed

+12
-0
lines changed

src/Interfaces/WalletFloat.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,4 +87,6 @@ public function forceTransferFloat(
8787
public function canWithdrawFloat(float|int|string $amount): bool;
8888

8989
public function getBalanceFloatAttribute(): string;
90+
91+
public function getBalanceFloatNumAttribute(): float;
9092
}

src/Traits/HasWalletFloat.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
* Trait HasWalletFloat.
2323
*
2424
* @property string $balanceFloat
25+
* @property float $balanceFloatNum
2526
* @psalm-require-extends \Illuminate\Database\Eloquent\Model
2627
* @psalm-require-implements \Bavix\Wallet\Interfaces\WalletFloat
2728
*/
@@ -159,4 +160,9 @@ public function getBalanceFloatAttribute(): string
159160

160161
return $math->div($wallet->getBalanceAttribute(), $decimalPlaces, $decimalPlacesValue);
161162
}
163+
164+
public function getBalanceFloatNumAttribute(): float
165+
{
166+
return (float) $this->getBalanceFloatAttribute();
167+
}
162168
}

tests/Units/Domain/WalletFloatTest.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,22 @@ public function testDeposit(): void
2525
$user = UserFloatFactory::new()->create();
2626
self::assertSame(0, $user->balanceInt);
2727
self::assertSame(0., (float) $user->balanceFloat);
28+
self::assertSame(0., $user->balanceFloatNum);
2829

2930
$user->depositFloat(.1);
3031
self::assertSame(10, $user->balanceInt);
3132
self::assertSame(.1, (float) $user->balanceFloat);
33+
self::assertSame(.1, $user->balanceFloatNum);
3234

3335
$user->depositFloat(1.25);
3436
self::assertSame(135, $user->balanceInt);
3537
self::assertSame(1.35, (float) $user->balanceFloat);
38+
self::assertSame(1.35, $user->balanceFloatNum);
3639

3740
$user->deposit(865);
3841
self::assertSame(1000, $user->balanceInt);
3942
self::assertSame(10., (float) $user->balanceFloat);
43+
self::assertSame(10., $user->balanceFloatNum);
4044

4145
self::assertSame(3, $user->transactions()->count());
4246

0 commit comments

Comments
 (0)