123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- <?php
- declare(strict_types=1);
- /**
- * +----------------------------------------------------------------------
- * | 栏目控制制器
- * +----------------------------------------------------------------------
- */
- namespace app\sys\controller;
- // 引入框架内置类
- use think\facade\View;
- use app\common\model\Category as CategoryModel;
- class Category extends Base
- {
- protected $modelName = "Category";
- public function index()
- {
- $list = CategoryModel::getList();
- $list = list_tree($list, 'id', 'parent_id');
- View::assign('list', $list);
- View::assign('types', ['一般', '目录', '单页', '锚点', '链接']);
- return View::fetch();
- }
- /**
- * 新增 or 修改
- * @param int $id info id
- * @return mix
- */
- public function save($id = 0)
- {
- if ($id != 0) {
- $data = CategoryModel::find($id);
- } else {
- $data = [
- "id" => 0,
- "parent_id" => 0,
- "name" => "",
- "url" => "",
- "route" => "",
- "tablename" => "",
- "template" => "",
- "type" => 0,
- "is_nav" => 0,
- "remark" => "",
- "sort" => 0,
- "title" => "",
- "keywords" => "",
- "description" => "",
- "is_blank" => 0
- ];
- }
- View::assign('data', $data);
- $list = list_tree(CategoryModel::select());
- View::assign('list', $list);
- return View::fetch();
- }
- public function doSave($id)
- {
- if ($this->app->request->isPost()) {
- $params = $this->app->request->param();
- if ($params['name'] == '') {
- $this->error("名称不能为空");
- }
- try {
- $id = $params['id'];
- unset($params['id']);
- if ($id != 0) {
- CategoryModel::update($params, ['id' => $id]);
- } else {
- CategoryModel::create($params);
- }
- } catch (\Exception $e) {
- $msg = $e->getMessage();
- $this->error("错误提示:" . $msg);
- }
- $this->success('操作成功', (string)url('index'));
- }
- }
- // 删除
- public function delete($id)
- {
- if ($this->app->request->isPost()) {
- if (CategoryModel::where('parent_id', $id)->value('id')) {
- return ['code' => 0, 'msg' => '子栏目不为空, 若要删除请先清空子栏目'];
- }
- return CategoryModel::del($id);
- }
- }
- }
|