Files
MKM/app/DataObjects/CreateBalanceDTO.php
2024-08-21 05:37:35 +08:00

31 lines
766 B
PHP

<?php
namespace App\DataObjects;
use App\Models\Account;
use Spatie\LaravelData\Data;
class CreateBalanceDTO extends Data
{
public int $balance;
public function __construct(
public float $amount,
public bool $is_starting,
public ?int $id = null,
public ?int $ledger_id = null,
public ?int $account_id = null,
public ?int $branch_id = null
) {
$account = Account::query()->where('id', $this->account_id)->first();
$currentBalance = $account ? $account->current_balance : 0;
if ($account->normal_balance == 'credit') {
$this->balance = $currentBalance - $this->amount;
} else {
$this->balance = $currentBalance + $this->amount;
}
}
}