/** * View an asset maintenance * * @author Vincent Sposato <*****@*****.**> * @param int $assetMaintenanceId * @version v1.0 * @since [v1.8] * @return View */ public function getView($assetMaintenanceId) { // Check if the asset maintenance exists if (is_null($assetMaintenance = AssetMaintenance::find($assetMaintenanceId))) { // Redirect to the asset maintenance management page return redirect()->to('admin/asset_maintenances')->with('error', trans('admin/asset_maintenances/message.not_found')); } elseif (!Company::isCurrentUserHasAccess($assetMaintenance->asset)) { return static::getInsufficientPermissionsRedirect(); } return View::make('asset_maintenances/view')->with('assetMaintenance', $assetMaintenance); }
/** * exportImprovementsReport * * @return \Illuminate\Http\Response * @author Vincent Sposato <*****@*****.**> * @version v1.0 */ public function exportAssetMaintenancesReport() { // Grab all the improvements $assetMaintenances = AssetMaintenance::with('asset', 'supplier')->orderBy('created_at', 'DESC')->get(); $rows = []; $header = [trans('admin/asset_maintenances/table.asset_name'), trans('admin/asset_maintenances/table.supplier_name'), trans('admin/asset_maintenances/form.asset_maintenance_type'), trans('admin/asset_maintenances/form.title'), trans('admin/asset_maintenances/form.start_date'), trans('admin/asset_maintenances/form.completion_date'), trans('admin/asset_maintenances/form.asset_maintenance_time'), trans('admin/asset_maintenances/form.cost')]; $header = array_map('trim', $header); $rows[] = implode($header, ','); foreach ($assetMaintenances as $assetMaintenance) { $row = []; $row[] = str_replace(',', '', e($assetMaintenance->asset->name)); $row[] = str_replace(',', '', e($assetMaintenance->supplier->name)); $row[] = e($assetMaintenance->improvement_type); $row[] = e($assetMaintenance->title); $row[] = e($assetMaintenance->start_date); $row[] = e($assetMaintenance->completion_date); if (is_null($assetMaintenance->asset_maintenance_time)) { $improvementTime = intval(Carbon::now()->diffInDays(Carbon::parse($assetMaintenance->start_date))); } else { $improvementTime = intval($assetMaintenance->asset_maintenance_time); } $row[] = $improvementTime; $row[] = trans('general.currency') . Helper::formatCurrencyOutput($assetMaintenance->cost); $rows[] = implode($row, ','); } // spit out a csv $csv = implode($rows, "\n"); $response = Response::make($csv, 200); $response->header('Content-Type', 'text/csv'); $response->header('Content-disposition', 'attachment;filename=report.csv'); return $response; }