middleware(function ($request, $next) { $this->user = Auth::guard('web')->user(); return $next($request); }); } public function _index(CardboardDataTable $datatable){ addVendor('chained-select'); $directorats = Directorat::all(); return $datatable->render('cetaklabel::app.cardboard.index', compact('directorats')); } /** * Display a listing of the resource. * * @return Renderable */ public function index() { addVendor('chained-select'); if (Auth::user()->hasRole(['ad', 'administrator'])) { $directorat = Directorat::all(); return view('cetaklabel::app.report.index', compact('directorat')); } else if (Auth::user()->hasRole(['dd','eo'])) { $sub_directorat = SubDirectorat::all(); return view('cetaklabel::app.report.index', compact('sub_directorat')); } return view('cetaklabel::app.report.index'); } /** * Show the form for creating a new resource. * * @return Renderable */ public function create() { return view('cetaklabel::create'); } /** * Store a newly created resource in storage. * * @param Request $request * * @return Renderable */ public function store(Request $request) { $param = json_encode($request->all()); $report = Report::create([ 'param' => $param ]); return redirect()->route('report.show', $report->id); } /** * Show the specified resource. * * @param int $id * * @return Renderable */ public function show(ReportDataTable $dataTable, ReportOdnerDataTable $dataTableOdner, ReportDocumentDataTable $dataTableDocument,$id) { $report = Report::find($id); $param = json_decode($report->param); if($param->jenis_laporan == "dus"){ return $this->showReport($dataTable); } if ($param->jenis_laporan == "odner") { return $this->showReport($dataTableOdner); } if ($param->jenis_laporan == "document") { return $this->showReport($dataTableDocument); } } /** * Show the form for editing the specified resource. * * @param int $id * * @return Renderable */ private function showReport($dataTable) { return $dataTable->render('cetaklabel::app.report.show'); } /** * Update the specified resource in storage. * * @param Request $request * @param int $id * * @return Renderable */ public function update(Request $request, $id) { // } /** * Remove the specified resource from storage. * * @param int $id * * @return Renderable */ public function destroy($id) { // } public function dusList($id) { header("Content-Type: application/vnd.ms-excel; charset=utf-8"); header("Content-Disposition: attachment; filename=list-odner-dus.xls"); //File name extension was wrong header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private", false); $dus = CardboardDetail::where('cardboard_id', $id)->pluck('document_id')->toArray(); $documents = Document::whereIn('id',$dus)->get(); return view('cetaklabel::app.report.dus-list', compact('documents')); } public function odnerList($id) { header("Content-Type: application/vnd.ms-excel; charset=utf-8"); header("Content-Disposition: attachment; filename=list-document-odner.xls"); //File name extension was wrong header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private", false); $document = Document::where('id',$id)->first(); $documents = DocumentDetail::where('document_id', $document->id)->get(); return view('cetaklabel::app.report.odner-list', compact('documents')); } }