123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- <?php namespace App\Http\Controllers\Admin;
- use App\Http\Requests\Admin\Menu as AdminMenu;
- use Illuminate\Support\Facades\DB;
- /**
- * 菜单管理
- *
- * @author 刘相欣
- */
- class Menu extends Auth{
-
- protected function _initialize(){
- parent::_initialize();
- $this->assign('breadcrumb1','系统');
- $this->assign('breadcrumb2','后台菜单管理');
- }
- /**
- * 列表
- */
- public function index(){
- $cate = DB::table('menu')->select(['id','pid','module','title as name'])->get()->toArray();
- // 树形
- $list = array_sort(list_to_tree($cate),'module',SORT_ASC);
- $this->assign('list',json_encode($list,TRUE));
- return $this->fetch();
- }
-
- public function add(AdminMenu $request){
- // 进行验证
- $request->scene('add')->validate();
- // 接收参数
- $data['pid'] = (int) request('id',0);
- $data['sort_order'] = (int) request('sort_order',0);
- $data['title'] = request('title','');
- $data['url'] = request('url','');
- $data['module'] = request('module','');
- $data['icon'] = request('icon','');
- $data['type'] = request('type','');
- // 新增
- $id = DB::table('menu')->insertGetId($data);
- // 提示
- if( !$id ) return ['error'=>'新增失败'];
- // 成功
- return ['success'=>'添加成功','id'=>$id,'name'=>$data['title']];
- }
- /* 编辑 */
- public function edit(AdminMenu $request){
- // 进行验证
- $request->scene('edit')->validate();
- // 接收参数
- $id = (int) request('id',0);
- $data['sort_order'] = (int) request('sort_order',0);
- $data['title'] = request('title','');
- $data['url'] = request('url','');
- $data['module'] = request('module','');
- $data['icon'] = request('icon','');
- $data['type'] = request('type','');
- // 新增
- $result = DB::table('menu')->where(['id'=>$id])->update($data);
- // 提示
- if( !$result ) return ['error'=>'编辑失败'];
- // 成功
- return ['success'=>'修改成功','name'=>$data['title']];
- }
- /* 删除 */
- public function del(AdminMenu $request){
- // 进行验证
- $request->scene('del')->validate();
- // 接收参数
- $id = (int) request('id');
- // 如果有数据
- if(DB::table('menu')->where(['pid'=>$id])->first()) return ['error'=>'请先删除子节点!!'];
- // 删除节点
- $result = DB::table('menu')->where('id',$id)->delete();
- // 删除失败
- if( !$result ) return ['error'=>'请先删除子节点!!'];
- // 删除成功
- return ['success'=>'删除成功'];
- }
- /* 获取信息 */
- public function get_info(AdminMenu $request){
- // 进行验证
- $request->scene('get_info')->validate();
- // 接收参数
- $id = (int) request('id');
- // 查询数据
- $data = DB::table('menu')->find($id);
- // 返回结果
- return $data;
- }
- }
|