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; } }