首页 > 解决方案 > 在视图刀片 Laravel 中显示来自控制器的计算

问题描述

我正在构建一个资产管理系统。我希望在控制器中完成以下计算以显示在视图中。

  public function depreciation()
    {

    $assets = Asset::all();

        $price = DB::table('assets')
            ->where('category_id', 1)
            ->sum('purchase_price');
        $dep = $price * 0.3333;
        $netprice = $price - $dep;

        return $netprice;

        return view('admin.assets.index')->with(['price','dep', 'netprice' => $netprice]);


}

我的路线

    Route::post('assets_depreciation', ['uses' => 'Admin\AssetsController@depreciation', 'as' => 'assets.depreciation']);

我的观点

 <tbody>
                @if (count($assets) > 0)
                    @foreach ($assets as $asset)
                        <tr data-entry-id="{{ $asset->id }}">
                            @can('asset_delete')
                                <td></td>
                            @endcan

                            <td field-key='title'>{{ $asset->title }}</td>
                            <td field-key='serial_number'>{{ $asset->serial_number }}</td>
                            <td field-key='barcode'>{{ $asset->barcode }}</td>
                            <td field-key='photo1'>@if($asset->photo1)<a href="{{ asset(env('UPLOAD_PATH').'/' . $asset->photo1) }}" target="_blank"><img src="{{ asset(env('UPLOAD_PATH').'/thumb/' . $asset->photo1) }}"/></a>@endif</td>
                            <td field-key='category'>{{ $asset->category->title ?? '' }}</td>
                            <td field-key='status'>{{ $asset->status->title ?? '' }}</td>
                            <td field-key='location'>{{ $asset->location->title ?? '' }}</td>
                            <td field-key='assigned_user'>{{ $asset->assigned_user->name ?? '' }}</td>
                            <td field-key='vendor'>{{ $asset->vendor->name ?? '' }}</td>
                            <td field-key='purchase_price'>{{ $asset->purchase_price }}</td>
                            <td field-key='warranty'>{{ $asset->warranty }}</td>

                            <td field-key='depreciation'>{{ $netprice }}</td>

                            <td>

如何实现?

标签: laraveleloquent

解决方案


如果您希望将price,dep和发送netpriceadmin.assets.index视图,那么您可以使用它:

public function depreciation()
{
    $assets = Asset::all();

    $price = DB::table('assets')
            ->where('category_id', 1)
            ->sum('purchase_price');
    $dep = $price * 0.3333;
    $netprice = $price - $dep;

    return view('admin.assets.index')->with(['price' => $price,'dep' => $dep, 'netprice' => $netprice]);    
}

然后您可以在查看文件中使用这些变量{{ $price }}, {{ $dep }}, {{ $netprice }}


推荐阅读