【发布时间】:2021-07-05 22:31:23
【问题描述】:
我有一对多关系的银行表和交易表。我想计算每家银行的余额以及银行总余额。
银行模式:
class Bank extends Model
{
use HasFactory;
protected $fillable = [
'name',
'code',
'accountNumber',
'swiftCode',
'currency',
'country',
'city',
'street',
'zipcode',
];
public function transactions()
{
return $this->hasMany(Transaction::class);
}
}
交易模型:
class Transaction extends Model
{
use HasFactory;
protected $fillable = [
'amount',
'currency',
'exchangeRate',
'reference',
'type',
'adjustment',
'partner_id',
'bank_id',
];
public function bank()
{
return $this->belongsTo(Bank::class);
}
}
我为余额编写了下面的代码,但尚未正确,因为我无法使用此集合访问交易列。
<td>{{$bank->transactions->where('type', 'credit')->sum('amount') - $bank->transactions->where('type', 'debit')->sum('amount')}}</td>
有许多货币需要使用 exchangRate 进行标准化。 我需要将数量与 exchangeRate 相乘并将所有结果相加。所以它给出了银行余额。
我应该从索引函数中传递它。应与银行托收一起退回。 BankController 功能索引:
public function index()
{
$banks = Bank::all();
return view('inc.banks', compact('banks'));
}
根据这些,我如何计算每个银行余额和银行总余额?
【问题讨论】: