AdminMenu.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace app\bug\model;
  3. class AdminMenu extends Base
  4. {
  5. //设置字段信息
  6. protected $schema = [
  7. 'id' =>'bigint',//
  8. 'menu_name' =>'varchar',//菜单名称
  9. 'menu_code' =>'varchar',//菜单code
  10. 'menu_img' =>'varchar',//菜单图片
  11. 'menu_route' =>'varchar',//菜单路由
  12. 'menu_url' =>'varchar',//菜单地址
  13. 'pid' =>'bigint',//父级id
  14. 'is_show' =>'int',//是否禁用
  15. 'is_private' =>'int',//是否私有
  16. 'is_display' =>'int',//是否展示
  17. 'weight' =>'double',//权重
  18. 'status' =>'int',//状态
  19. 'is_del' =>'int',//是否删除
  20. 'addtime' =>'datetime',//
  21. 'updatetime' =>'datetime',//
  22. ];
  23. protected $updateTime='updatetime';
  24. protected $createTime='addtime';
  25. public $status_cn=["禁用","启用"];
  26. public function GetMenuTree($pid=0){
  27. $Menu = $this->where(['pid'=>$pid,'is_del'=>0])
  28. ->field(['id','menu_name','menu_img','menu_route','menu_url','pid','is_private','is_display','weight','status'])
  29. ->order('weight desc,id asc')->select();
  30. if($Menu->isEmpty()){
  31. return[];
  32. }
  33. foreach ($Menu as &$item){
  34. $item['child']=$this->GetMenuTree($item->id);
  35. if($pid>0){
  36. $item['action']= Action::with(["actionInfo"])->where(["menuid"=>$item->id])->select();
  37. }
  38. }
  39. return $Menu;
  40. }
  41. }