路由未定义的 laravel 导出

问题描述 投票:0回答:1

这是我的

web.php

Route::post('/export_excel', 'PenyetoranController@exportExcel')->name('penyetoran.export-excel')->middleware('role:BENDAHARA|SUPERVISOR');

这是我的导出文件:

<?php

namespace App\Exports;

use App\GroupPasar;
use Carbon\Carbon;
use App\Users;
use App\Pasar;
use App\Penyetoran;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;

class PenyetoranExport implements FromCollection, WithHeadings, WithMapping
{
    /**
    * @return \Illuminate\Support\Collection
    */
    public function collection()
    {
        $startDate = request()->input('tgl_awal') ;
        $endDate   = request()->input('tgl_akhir') ;

        if(request()->input('grup_pasar')!=null)
        {
            $groupId = request()->input('grup_pasar');

            return GroupPasar::where('group_pasars.id', $groupId)
                ->join('pasar', 'pasar.grup_pasar', '=', 'group_pasars.id')
                ->join('penyetoran', function ($join){
                    $join->on('penyetoran.pasar', '=', 'pasar.id');
                    $join->where('status', 1);
                })
                ->join('users', 'penyetoran.petugas', '=', 'users.id')
                ->whereBetween('penyetoran.tanggal_penyetoran', [$startDate, $endDate])
                ->select('group_pasars.nama as nama_pasar','users.name as nama_petugas', 'penyetoran.jumlah_setoran','penyetoran.penyetoran_melalui','penyetoran.tanggal_penyetoran','penyetoran.tanggal_disetor')
                ->get();
        }

        return Penyetoran::select('pasar','petugas','jumlah_setoran','penyetoran_melalui','tanggal_penyetoran','tanggal_disetor')->where('status',1)
                              ->whereBetween('tanggal_penyetoran', [$startDate, $endDate])->get();
    }
    public function map($penyetoran) : array {

        if(request()->input('grup_pasar')!=null){
            return [
                $penyetoran->nama_pasar,
                $penyetoran->nama_petugas,
                $penyetoran->jumlah_setoran,
                $penyetoran->penyetoran_melalui,
                Carbon::parse($penyetoran->tanggal_penyetoran)->toFormattedDateString(),
                Carbon::parse($penyetoran->tanggal_disetor)->toFormattedDateString(),
            ] ;
        }

        return [
            $penyetoran->nama_pasar,
            $penyetoran->name,
            $penyetoran->jumlah_setoran,
            $penyetoran->penyetoran_melalui,
            Carbon::parse($penyetoran->tanggal_penyetoran)->toFormattedDateString(),
            Carbon::parse($penyetoran->tanggal_disetor)->toFormattedDateString(),
        ] ;
    }

    public function headings() : array {
        return [
            'Pasar',
            'Petugas',
            'Jumlah Setoran',
            'Penyetoran Melalui',
            'Tanggal Penyetoran',
            'Tanggal Disetor',
        ] ;
    }
}

这是我的控制器:

public function exportExcel(Request $request)
{
    $this->validate($request, [
            'tgl_awal' => 'required|date',
            'tgl_akhir' => 'required|date|after:tgl_awal',
         ], [
                'tgl_awal.required' => 'Tanggal awal harus diisi',
                'tgl_akhir.after' => 'Tanggal akhir yang dipilih harus sehari sesudah tanggal awal',
                'tgl_akhir.required' => 'Tanggal akhir harus diisi',
        ]);
        return Excel::download(new PenyetoranExport, 'Daftar Penyetoran - '.date('d-m-Y').'.xlsx');
}

这是我的观点:

{{-- <a class="btn btn-success" href="/penyetoran/export_excel" role="button" target="_blank">Export Excel<span class=""></a> --}}
            <form id="formExport" action="{{route('penyetoran.export-excel')}}" method="post" enctype="multipart/form-data">
                {{ csrf_field() }}
                <div class="form-group row">
                    <label for="export" class="col-sm-1 col-form-label">Export</label>
                     <div class="col-sm-3">
                        <input id="tgl_awal" name="tgl_awal" type="date" class="form-control @error('tgl_awal') is-invalid @enderror" value="{{ old('tgl_awal') }}">
                        @error('tgl_awal')
                            <span class="invalid-feedback" role="alert">
                                <strong>{{ $message }}</strong>
                            </span>
                        @enderror
                    </div> -
                    <div class="col-sm-3">
                        <input id="tgl_akhir" name="tgl_akhir" type="date" class="form-control @error('tgl_akhir') is-invalid @enderror" value="{{ old('tgl_akhir') }}">
                        @error('tgl_akhir')
                            <span class="invalid-feedback" role="alert">
                                <strong>{{ $message }}</strong>
                            </span>
                        @enderror
                    </div>
                    <div class="col-sm-2">
                        <input type="submit" class="btn btn-success" value="Export Excel">
                    </div>s
                </div>
                <div class="form-group row">
                    <label for="export" class="col-sm-1 col-form-label"></label>
                    <div class="col-sm-3">
                        <select id="grup_pasar" name="grup_pasar" class="form-control">
                            <option value="">-- Pilih Grup Pasar --</option>
                            @foreach($groups as $group)
                                <option value="{{$group->id}}">{{$group->nama}}</option>
                            @endforeach
                        </select>
                        <small class="text-muted">Pilih grup pasar untuk mencetak berdasarkan grup pasar</small>
                    </div>
                </div>

            </form>

我需要重新导出吗?还是我使用它的方式有问题?请帮助我

这是错误:

路线 [penyetoran.export-excel] 未定义。 (查看:C:\xampp\htdocs\siappara_web_v2 资源 iews\penyetoran\indexLaporan.blade.php)

php html laravel export-to-excel
1个回答
2
投票

错误路线[penyetoran.export-excel]未定义

这很可能是您的路线被缓存的问题。

清除路由缓存。

php artisan route:clear

列出路线:

php artisan route:list
© www.soinside.com 2019 - 2024. All rights reserved.