123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- <?php
- namespace app\admin\controller\base\nav;
- /**
- * @title : 栏目管理控制器
- * @desc :
- * @Author : Rock
- * @Date : 2021-10-15 17:13:35
- * @LastEditTime : 2023-05-18 10:14:52
- */
- use app\admin\controller\Base;
- use app\common\model\base\nav\Nav as navModel;
- use app\common\model\base\nav\NavGroup as navGroupModel;
- class Nav extends Base
- {
- protected $noNeedLogin = ['getList','getOptions'];
- protected $navModel = null;
- protected $navGroupModel = null;
- public function initialize()
- {
- parent::initialize();
- $this->navModel = new navModel;
- $this->navGroupModel = new navGroupModel;
- }
- /**
- * @title: 按分组查询列表
- * @desc:
- * @param {string} {class_code} {必填} {分组编码}
- * @return {*}
- * @Author: Rock
- * @Date: 2021-10-18 15:32:42
- * @LastEditTime: Do not edit
- */
- public function getList($class_code='',$pageNo=0,$pageSize=10)
- {
- $where = [];
- if(!empty($class_code)){
- $class_code = strtoupper($class_code);
- $group = $this->navGroupModel->where('code',$class_code)->find();
- if($group){
- $class_id = $group->class_id;
- $where[] = ['class_id','=',$class_id];
- }else{
- return res(1,"获取成功",[]);
- }
- }
- if($pageNo){
- $res = $this->navModel->where($where)->with(['group'])->order('class_id asc,sort asc')->paginate(['page'=>$pageNo,'list_rows'=>$pageSize]);
- $list = $res->items();
- $list = FieldConverList($list,['icon'=>'image']);
- $total = $res->total();
- return pageRes(1,"获取成功",$total,$list);
- }else{
- $list = $this->navModel->where($where)->with(['group'])->order('sort asc')->select();
- $list = FieldConverList($list,['icon'=>'image']);
- return res(1,"获取成功",$list);
- }
-
- }
- /**
- * @title: 添加/修改栏目
- * @desc:
- * @param {*}
- * @return {*}
- * @Author: Rock
- * @Date: 2021-10-18 15:34:35
- * @LastEditTime: Do not edit
- */
- public function doEdit()
- {
- $data = $this->request->param();
- if($data['type']==2 && empty($data['component'])){
- return res(2,"跳转页面不能为空");
- }elseif($data['type']==3 && (empty($data['component']) || empty($data['appid']))){
- return res(2,"跳转小程序的APPID和跳转页面不能为空");
- }
- $data['icon'] = str_replace(WEBURL,'',$data['icon']);
- $data['image'] = str_replace(WEBURL,'',$data['image']);
- $this->navModel->replace()->save($data);
- return res(1,"保存成功");
- }
- /**
- * @title: 删除栏目
- * @desc:
- * @param {int} {nav_id} {必填} {栏目ID}
- * @return {*}
- * @Author: Rock
- * @Date: 2021-10-18 15:34:49
- * @LastEditTime: Do not edit
- */
- public function doDelete($nav_id=0)
- {
- $info = $this->navModel->where('nav_id',$nav_id)->delete();
- return res(1,"删除成功");
- }
- /**
- * @title: 获取下拉选择项目
- * @desc:
- * @param {*}
- * @return {*}
- * @Author: Rock
- * @Date: 2021-10-18 16:52:44
- * @LastEditTime: Do not edit
- */
- public function getOptions()
- {
- $list = [
- 'statusList' => $this->navModel->statusList(),
- 'typeList' => $this->navModel->typeList(),
- ];
- return res(1,"获取成功",$list);
- }
- }
|