Category.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. namespace app\admin\controller;
  3. use app\common\controller\Backend;
  4. use app\common\model\Category as CategoryModel;
  5. use fast\Tree;
  6. /**
  7. * 分类管理
  8. *
  9. * @icon fa fa-list
  10. * @remark 用于统一管理网站的所有分类,分类可进行无限级分类
  11. */
  12. class Category extends Backend
  13. {
  14. protected $model = null;
  15. protected $categorylist = [];
  16. protected $noNeedRight = ['selectpage'];
  17. public function _initialize()
  18. {
  19. parent::_initialize();
  20. $this->request->filter(['strip_tags']);
  21. $this->model = model('Category');
  22. $tree = Tree::instance();
  23. $tree->init($this->model->order('weigh desc,id desc')->select(), 'pid');
  24. $this->categorylist = $tree->getTreeList($tree->getTreeArray(0), 'name');
  25. $categorydata = [0 => __('None')];
  26. foreach ($this->categorylist as $k => $v)
  27. {
  28. $categorydata[$v['id']] = $v['name'];
  29. }
  30. $this->view->assign("flagList", $this->model->getFlagList());
  31. $this->view->assign("typeList", CategoryModel::getTypeList());
  32. $this->view->assign("parentList", $categorydata);
  33. }
  34. /**
  35. * 查看
  36. */
  37. public function index()
  38. {
  39. if ($this->request->isAjax())
  40. {
  41. //构造父类select列表选项数据
  42. $list = $this->categorylist;
  43. $total = count($list);
  44. $result = array("total" => 1, "rows" => $list);
  45. return json($result);
  46. }
  47. return $this->view->fetch();
  48. }
  49. /**
  50. * Selectpage搜索
  51. *
  52. * @internal
  53. */
  54. public function selectpage()
  55. {
  56. return parent::selectpage();
  57. }
  58. }