$allData = $this->reportMainpageRepo->findWhere(['delete_status'=>1]); //循环获取的数据记录,根据当前的记录状态,和用户的角色,确定最终的操作按钮 foreach ($allData as $k => $v) { $allData[$k]['buttons'] = $this->getButtons($organizeRoleIds,$v['role_organize_status'],$v['user_id'],$v['id'],$userNowId); } // // // return $allData; return DataTables::of($allData) ->addColumn('action', getThemeTemplate('back.report.mainpage.datatable')) ->make();
//获取当前报告的状态和用户操作人public function getButtons($organizeRoleIds,$reportStatus,$user_id,$id,$userNowId){ //报告10 用户的是 2,7 if(in_array($reportStatus,$organizeRoleIds)){ // 存在 判断当前用户是否是数据录入员 if(in_array(2,$organizeRoleIds)) { //$user_id 为报告里的Id $userId是当前用户的id if($user_id == $userNowId&&$reportStatus == 2) { $operations = [ ['<span class="label label-success"><a href="http://127.0.0.1/medsci_pv/public/admin/report/mainpage/id=' . $id . '/show" data-id="' . $id . '">详情</a></span>'], ['<span class="label label-success"><a href="http://127.0.0.1/medsci_pv/public/admin/report/mainpage/id=' . $id . '/export" data-id="' .
laravel中根据 用户权限 所显示用户对每条数据 相对应的操作按钮
最新推荐文章于 2024-08-10 08:34:32 发布
这篇博客详细介绍了如何在Laravel应用中,根据用户权限动态生成每条报告数据对应的操作按钮,包括查看、导出、编辑、删除、复制和新建版本等操作。通过判断用户角色及报告状态,实现不同权限用户的差异化操作界面。
摘要由CSDN通过智能技术生成