/** * 数据字典 * @author jry <*****@*****.**> */ public function index($tab = 'ct_addon') { $database = C('DB_NAME'); //数据库名 //取得所有表 $tables = M()->query('show tables'); foreach ($tables as $key => $val) { $tables_result[$val['tables_in_' . $database]]['name'] = $val['tables_in_' . $database]; } //获取表信息 foreach ($tables_result as $key => $val) { //获取所有表的备注 $sql = 'SELECT * FROM '; $sql .= 'INFORMATION_SCHEMA.TABLES '; $sql .= 'WHERE '; $sql .= "table_name = '{$val['name']}' AND table_schema = '{$database}'"; $table_result = M()->query($sql); $tables_result[$key]['title'] = $table_result[0]['table_comment']; $tabs[$key] = $table_result[0]['table_comment'] . '(' . $key . ')'; //获取所有表的字段信息 $sql = 'SELECT * FROM '; $sql .= 'INFORMATION_SCHEMA.COLUMNS '; $sql .= 'WHERE '; $sql .= "table_name = '{$val['name']}' AND table_schema = '{$database}'"; $field_result = M()->query($sql); $tables_result[$key]['fields'] = $field_result; } //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('数据字典')->SetTablist($tabs)->SetCurrentTab($tab)->addField('column_name', '字段名', 'text')->addField('column_type', '数据类型', 'text')->addField('column_default', '默认值', 'text')->addField('is_nullable', '允许非空', 'text')->addField('extra', '自动递增', 'text')->addField('column_comment', '备注', 'text')->dataList($tables_result[$tab]['fields'])->display(); }
/** * 分类列表 * @author jry <*****@*****.**> */ public function index($tab = 1) { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|title'] = array($condition, $condition, '_multi' => true); //获取所有分类 $map['status'] = array('egt', '0'); //禁用和正常状态 if (I('get.pid')) { $map['pid'] = array('eq', I('get.pid')); //父分类ID } $map['group'] = array('eq', $tab); $data_list = D('Category')->field('id,pid,group,doc_type,title,url,icon,ctime,sort,status')->where($map)->order('sort asc,id asc')->select(); foreach ($data_list as &$item) { if ($item['doc_type'] >= 3) { $item['title'] = '<a href="' . U('Document/index', array('cid' => $item['id'])) . '">' . $item['title'] . '</a>'; } } //转换成树状列表 $tree = new \Common\Util\Tree(); $data_list = $tree->toFormatTree($data_list); $attr['title'] = '编辑'; $attr['href'] = 'Admin/Category/edit/tab/' . $tab . '/id/'; //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('分类列表')->AddNewButton('Admin/Category/add/tab/' . $tab)->addResumeButton()->addForbidButton()->setSearch('请输入ID/分类名称', U('Admin/Category/index/tab/' . $tab))->SetTablist(C('CATEGORY_GROUP_LIST'))->SetCurrentTab($tab)->addField('id', 'ID', 'text')->addField('title_show', '分类', 'text')->addField('url', '链接', 'text')->addField('icon', '图标', 'icon')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($data_list)->addRightButton('self', $attr)->addRightButton('forbid')->addRightButton('delete')->display(); }
/** * 默认方法 * @author jry <*****@*****.**> */ public function index() { $data_list = D('StoreModule')->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->getAllModule(); $page = new \Common\Util\Page(D('StoreModule')->count(), C('ADMIN_PAGE_ROWS')); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('模块列表')->AddNewButton()->addResumeButton()->addForbidButton()->setSearch('请输入ID/标题', U('index'))->addField('name', '名称', 'text')->addField('title', '标题', 'text')->addField('description', '描述', 'text')->addField('developer', '开发者', 'text')->addField('version', '版本', 'text')->addField('ctime', '创建时间', 'date')->addField('status', '状态', 'text')->addField('right_button', '操作', 'btn')->dataList($data_list)->setPage($page->show())->display(); }
/** * 上传列表 * @author jry <*****@*****.**> */ public function index() { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|path'] = array($condition, $condition, '_multi' => true); //获取所有上传 $map['status'] = array('egt', '0'); //禁用和正常状态 $data_list = D('Upload')->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->where($map)->order('sort desc,id desc')->select(); $page = new \Common\Util\Page(D('Upload')->where($map)->count(), C('ADMIN_PAGE_ROWS')); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('上传列表')->addResumeButton()->addForbidButton()->addDeleteButton()->setSearch('请输入ID/上传关键字', U('index'))->addField('id', 'ID', 'text')->addField('path', '路径', 'text')->addField('size', '大小', 'text')->addField('ctime', '创建时间', 'time')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($data_list)->addRightButton('forbid')->addRightButton('delete')->setPage($page->show())->display(); }
/** * 用户列表 * @author jry <*****@*****.**> */ public function index() { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|username|email|mobile'] = array($condition, $condition, $condition, $condition, '_multi' => true); //获取所有用户 $map['status'] = array('egt', '0'); //禁用和正常状态 $data_list = D('User')->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->where($map)->order('sort desc,id desc')->select(); $page = new \Common\Util\Page(D('User')->where($map)->count(), C('ADMIN_PAGE_ROWS')); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('用户列表')->AddNewButton()->addResumeButton()->addForbidButton()->addDeleteButton()->setSearch('请输入ID/用户名/邮箱/手机号', U('index'))->addField('id', 'UID', 'text')->addField('usertype', '类型', 'text')->addField('username', '用户名', 'text')->addField('email', '邮箱', 'text')->addField('mobile', '手机号', 'text')->addField('vip', 'VIP', 'text')->addField('score', '积分', 'text')->addField('money', '余额', 'text')->addField('last_login_time', '最后登录时间时间', 'time')->addField('reg_type', '注册方式', 'text')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($data_list)->addRightButton('edit')->addRightButton('forbid')->addRightButton('delete')->setPage($page->show())->display(); }
/** * 配置列表 * @param $tab 配置分组ID */ public function index($tab = 1) { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|name|title'] = array($condition, $condition, $condition, '_multi' => true); //获取所有配置 $map['status'] = array('egt', 0); //禁用和正常状态 $map['group'] = array('eq', $tab); $data = $this->os_lists('system_config', $map, 'sort asc,id asc'); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('配置列表')->addNewButton()->addResumeButton()->addForbidButton()->addDeleteButton()->setSearch('请输入ID/配置名称/配置标题', U('index', array('tab' => $tab)))->setTablist(C('CONFIG_GROUP_LIST'))->setCurrentTab($tab)->addField('id', 'ID', 'text')->addField('name', '名称', 'text')->addField('title', '标题', 'text')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($data['list'])->addRightButton('edit')->addRightButton('forbid')->addRightButton('delete')->setPage($data['page']->show())->display(); }
/** * 配置列表 * @param $tab 配置分组ID * @author jry <*****@*****.**> */ public function index($tab = 1) { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|name|title'] = array($condition, $condition, $condition, '_multi' => true); //获取所有配置 $map['status'] = array('egt', '0'); //禁用和正常状态 $map['group'] = array('eq', $tab); $data_list = D('SystemConfig')->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->where($map)->order('sort asc,id asc')->select(); $page = new \Common\Util\Page(D('SystemConfig')->where($map)->count(), C('ADMIN_PAGE_ROWS')); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('配置列表')->AddNewButton()->addResumeButton()->addForbidButton()->addDeleteButton()->setSearch('请输入ID/配置名称/配置标题', U('index', array('tab' => $tab)))->SetTablist(C('CONFIG_GROUP_LIST'))->SetCurrentTab($tab)->addField('id', 'ID', 'text')->addField('name', '名称', 'text')->addField('title', '标题', 'text')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($data_list)->addRightButton('edit')->addRightButton('forbid')->addRightButton('delete')->setPage($page->show())->display(); }
/** * 菜单列表 */ public function index() { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|title'] = array($condition, $condition, '_multi' => true); //搜索条件 //获取所有菜单 $map['status'] = array('egt', 0); //禁用和正常状态 $data_list = D('SystemMenu')->where($map)->order('sort asc, id asc')->select(); //转换成树状列表 $tree = new \Common\Util\Tree(); $data_list = $tree->toFormatTree($data_list); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('菜单列表')->AddNewButton()->addResumeButton()->addForbidButton()->addDeleteButton()->setSearch('请输入ID/菜单名称', U('index'))->addField('id', 'ID', 'text')->addField('title_show', '标题', 'text')->addField('url', '链接', 'text')->addField('icon', '图标', 'icon')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($data_list)->addRightButton('edit')->addRightButton('forbid')->addRightButton('delete')->display(); }
/** * 默认方法 * @author jry <*****@*****.**> */ public function index($doc_type) { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|name|title'] = array($condition, $condition, $condition, '_multi' => true); if ($doc_type) { $map['doc_type'] = $doc_type; } $map['status'] = array('egt', 0); $document_attribute_list = D('DocumentAttribute')->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->order('id desc')->where($map)->select(); $page = new \Common\Util\Page(D('DocumentAttribute')->where($map)->count(), C('ADMIN_PAGE_ROWS')); $attr['href'] = U('add', array('doc_type' => $doc_type)); $attr['class'] = 'btn btn-primary'; //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title(字段管理)->AddButton('新 增', $attr)->addResumeButton()->addForbidButton()->setSearch('请输入ID/名称/标题', U('index'))->addField('id', 'ID', 'text')->addField('name', '名称', 'text')->addField('title', '标题', 'text')->addField('type', '类型', 'type')->addField('ctime', '发布时间', 'time')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($document_attribute_list)->addRightButton('edit')->addRightButton('forbid')->addRightButton('delete')->setPage($page->show())->display(); }
/** * 类型列表 * @author jry <*****@*****.**> */ public function index() { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|title|name'] = array($condition, $condition, $condition, '_multi' => true); //获取所有类型 $map['system'] = array('eq', '0'); //非系统类型 $map['status'] = array('egt', '0'); //禁用和正常状态 $data_list = D('DocumentType')->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->where($map)->order('sort asc,id asc')->select(); $page = new \Common\Util\Page(D('DocumentType')->where($map)->count(), C('ADMIN_PAGE_ROWS')); $attr['title'] = '字段管理'; $attr['href'] = 'DocumentAttribute/index?doc_type='; //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('类型列表')->AddNewButton()->addResumeButton()->addForbidButton()->setSearch('请输入ID/类型标题', U('index'))->addField('id', 'ID', 'text')->addField('icon', '图标', 'icon')->addField('name', '名称', 'text')->addField('title', '标题', 'text')->addField('ctime', '创建时间', 'time')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($data_list)->addRightButton('self', $attr)->addRightButton('edit')->addRightButton('forbid')->addRightButton('delete')->setPage($page->show())->display(); }
/** * 回收站 * @author jry <*****@*****.**> */ public function recycle() { $map['status'] = array('eq', '-1'); $document_list = D('Document')->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->where($map)->select(); $page = new \Common\Util\Page(D('Document')->where($map)->count(), C('ADMIN_PAGE_ROWS')); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('回收站')->addDeleteButton()->addRestoreButton()->setSearch('请输入ID/文档名称', U('recycle'))->addField('id', 'ID', 'text')->addField('title', '标题', 'text')->addField('ctime', '发布时间', 'time')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($document_list)->addRightButton('forbid')->addRightButton('delete')->setPage($page->show())->display(); }
/** * 单个微+插件主页 * @param $name 插件名称 * @author jry <*****@*****.**> */ public function weijia($name, $tab = 1) { //获取插件实例 $addon_class = get_addon_class($name); if (!class_exists($addon_class)) { $this->error('插件不存在'); } else { $addon = new $addon_class(); } //获取插件的$admin_list配置 $admin_list = $addon->admin_list; $tab_list = array(); foreach ($admin_list as $key => $val) { $tab_list[$key] = $val['title']; } $admin = $admin_list[$tab]; $param = D('Addons://' . $name . '/' . $admin['model'] . '')->adminList; if ($param) { //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|' . $param['search_key']] = array($condition, $condition, '_multi' => true); //获取数据列表 $data_list = M($param['model'])->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->where($map)->field(true)->order($param['order'])->select(); $page = new \Common\Util\Page(M($param['model'])->where($map)->count(), C('ADMIN_PAGE_ROWS')); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title($addon->info['title'])->AddNewButton('Addon/weijiaAdd/name/' . $name . '/tab/' . $tab)->addResumeButton($param['model'])->addForbidButton($param['model'])->setSearch('请输入关键字', U('Addon/weijia/name/' . $name, array('tab' => $tab)))->SetTablist($tab_list)->setTabUrl('Addon/weijia/name/' . $name)->SetCurrentTab($tab)->setPage($page->show())->dataList($data_list); //数据列表 //根据插件的list_grid设置后台列表字段信息 foreach ($param['list_grid'] as $key => $val) { $builder->addField($key, $val['title'], $val['type']); } //根据插件的right_button设置后台列表右侧按钮 foreach ($param['right_button'] as $key => $val) { $attr['title'] = $val['title']; $attr['target'] = $val['target'] ?: '_self'; $attr['addon'] = true; $attr['href'] = $name . '://' . $val['href']; $builder->addRightButton('self', $attr); } $attr = array(); $attr['title'] = '编辑'; $attr['href'] = 'Addon/weijiaEdit/name/' . $name . '/tab/' . $tab . '/id/'; //显示列表 $builder->addField('right_button', '操作', 'btn')->addRightButton('self', $attr)->addRightButton('forbid', $param['model'])->addRightButton('delete', $param['model'])->setTemplate('Builder/listbuilder_addon')->display(); } else { $this->error('插件列表信息不正确'); } }
/** * 我的文档列表 * @author jry <*****@*****.**> */ public function mydoc() { $uid = $this->is_login(); //搜索 $keyword = (string) I('keyword'); $condition = array('like', '%' . $keyword . '%'); $map['id|title'] = array($condition, $condition, '_multi' => true); //获取分类ID if (I('doc_type')) { $con['doc_type'] = I('doc_type'); $cid_list = D('Category')->where($con)->getField('id', true); if ($cid_list) { $map['cid'] = array('in', $cid_list); } } $map['uid'] = $uid; $map['status'] = array('egt', 0); $document_list = D('Document')->page(!empty($_GET["p"]) ? $_GET["p"] : 1, C('ADMIN_PAGE_ROWS'))->order('sort desc,id desc')->where($map)->select(); $page = new \Common\Util\Page(D('Document')->where($map)->count(), C('ADMIN_PAGE_ROWS')); Cookie('__forward__', $_SERVER['REQUEST_URI']); //使用Builder快速建立列表页面。 $builder = new \Common\Builder\ListBuilder(); $builder->title('我的文档')->addResumeButton()->addForbidButton()->addRecycleButton()->setSearch('请输入ID/标题', U('Document/mydoc', array('doc_type' => I('doc_type'))))->addField('id', 'ID', 'text')->addField('title', '标题', 'text')->addField('ctime', '发布时间', 'time')->addField('sort', '排序', 'text')->addField('status', '状态', 'status')->addField('right_button', '操作', 'btn')->dataList($document_list)->addRightButton('edit')->addRightButton('forbid')->addRightButton('recycle')->setPage($page->show())->setTemplate('Builder/listbuilder_user')->display(); }