我想根据类型列计算金额列。并在余额列中显示结果。如果借方是总和,如果贷方是负数,则有条件。 这是表calculate
我正在使用laravel,这是视图中的代码
<thead>
<tr class="txtcenter">
<th class="all">Date </th>
<th class="all">Description </th>
<th class="all">Amount</th>
<th class="all">Type</th>
<th class="all">Reference</th>
<th class="all">Balance</th>
</tr>
</thead>
<tbody>@foreach($get_period as $statement)
<tr class="accordion">
<td>{{SUBSTR($statement->created_at,0,10) }}</div>
<td>{{$statement->desc }} </div>
<td>IDR {{number_format($statement->amount, 0, '.', ',')}} </div>
<td>{{ $statement->sign }} </div>
<td>{{ $statement->refdc }} </div>
<td> </div>
</tr>@endforeach
</tbody>
我在控制器中使用此代码来计算,
foreach($get_period as $statement)
{
$getsign = $statement->sign;
}
$balance = 0;
if($getsign == "Debit"){
foreach($get_period as $statement){
$balance += $statement->amount;
}
}else{
foreach($get_period as $statement){
$balance -= $statement->amount;
}
}
但结果始终为sum并显示最终计算,如result .. 我是laravel的新手,不知道用什么代码计算这个,也许php或javascript或其他任何东西。请帮我....... 提前致谢
答案 0 :(得分:0)
您可以在余额循环之外取一个变量,并根据类型列的值减去或添加金额。这是你如何做到的。
从这个循环中取出一个平衡变量,
<?php $balance = 0; ?>
现在在循环内执行基于类型值的操作,如此,
<?php
if($statement->sign=="Debit") {
$balance += $statement->amount;
} else {
$balance -= $statement->amount;
}
?>
并在每次迭代中继续显示余额,
{{ $balance }}
答案 1 :(得分:0)
为什么不使用Accessors & Mutators。 在您的模型类
中./s.sh: line 5: clangPath="Hello": command not found
[./s.sh] Error: clangPath="Hello" make
所以你的观点就像:
public function getCalculatedBalanceAttribute($value)
{
$balance = $this->balance - ($this->sign == 'Debit' ? -1 : 1) * $this->amount;
return $balance;
}